Bounded_Array_Allocation_Traits_T.h

Go to the documentation of this file.
00001 #ifndef guard_bounded_array_allocation_traits_hpp
00002 #define guard_bounded_array_allocation_traits_hpp
00003 /**
00004  * @file
00005  *
00006  * @brief Details can be found in the documentation for
00007  * TAO::details::generic_sequence
00008  *
00009  * Bounded_Array_Allocation_Traits_T.h,v 1.2 2006/04/19 08:20:57 jwillemsen Exp
00010  *
00011  * @author Carlos O'Ryan
00012  */
00013 
00014 #include "tao/Basic_Types.h"
00015 
00016 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00017 
00018 namespace TAO
00019 {
00020 namespace details
00021 {
00022 
00023 template<typename T, CORBA::ULong MAX, bool dummy>
00024 struct bounded_array_allocation_traits
00025 {
00026   typedef T value_type;
00027 
00028   inline static CORBA::ULong default_maximum()
00029   {
00030     return MAX;
00031   }
00032 
00033   inline static value_type * default_buffer_allocation()
00034   {
00035     return allocbuf(MAX);
00036   }
00037 
00038   inline static value_type * allocbuf(CORBA::ULong /* maximum */)
00039   {
00040     return new value_type[MAX];
00041   }
00042 
00043   inline static void freebuf(value_type * buffer)
00044   {
00045     delete[] buffer;
00046   }
00047 };
00048 
00049 } // namespace details
00050 } // namespace TAO
00051 
00052 
00053 TAO_END_VERSIONED_NAMESPACE_DECL
00054 
00055 #endif // guard_unbounded_array_allocation_traits_hpp

Generated on Thu Nov 9 11:54:08 2006 for TAO by doxygen 1.3.6