Merge pull request #1551 from DOCGroup/plm_jira_333
[ACE_TAO.git] / TAO / tao / Allocator.h
blobc4b68cd521ff8fa8290023616565a8100d0b9557
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file Allocator.h
7 * @author Johnny Willemsen (jwillemsen@remedy.nl)
8 */
9 //=============================================================================
11 #ifndef TAO_ALLOCATOR_H
12 #define TAO_ALLOCATOR_H
14 #include /**/ "ace/pre.h"
16 #if !defined (ACE_LACKS_PRAGMA_ONCE)
17 # pragma once
18 #endif /* ACE_LACKS_PRAGMA_ONCE */
20 #include /**/ "tao/Versioned_Namespace.h"
22 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
24 namespace TAO
26 /**
27 * @class TAO_Allocator
29 * @brief Abstract class for TAO allocators. This will be used for derived
30 * allocator templates that are capable of allocating a specific type of
31 * objects
33 template <typename handler_type>
34 class TAO_Allocator
36 public:
38 virtual ~TAO_Allocator (void) {}
40 virtual handler_type *allocate () = 0;
41 virtual void release (handler_type *ptr) = 0;
45 TAO_END_VERSIONED_NAMESPACE_DECL
47 #include /**/ "ace/post.h"
48 #endif /* TAO_ALLOCATOR_H */