#include <Unbounded_Reference_Allocation_Traits_T.h>
Public Types | |
typedef T | value_type |
typedef ref_traits | reference_traits |
Static Public Member Functions | |
CORBA::ULong | default_maximum () |
value_type * | default_buffer_allocation () |
value_type * | allocbuf (CORBA::ULong maximum) |
void | freebuf (value_type *buffer) |
|
Definition at line 27 of file Unbounded_Reference_Allocation_Traits_T.h. |
|
Definition at line 26 of file Unbounded_Reference_Allocation_Traits_T.h. |
|
Definition at line 39 of file Unbounded_Reference_Allocation_Traits_T.h.
00040 { 00041 value_type * buffer = new value_type[maximum + 1]; 00042 reinterpret_cast<value_type**>(buffer)[0] = buffer + maximum + 1; 00043 00044 // no throw 00045 reference_traits::zero_range(buffer + 1, buffer + maximum + 1); 00046 00047 return buffer + 1; 00048 } |
|
Definition at line 34 of file Unbounded_Reference_Allocation_Traits_T.h.
00035 {
00036 return 0;
00037 }
|
|
Definition at line 29 of file Unbounded_Reference_Allocation_Traits_T.h.
00030 {
00031 return 0;
00032 }
|
|
Definition at line 50 of file Unbounded_Reference_Allocation_Traits_T.h.
00051 { 00052 if(buffer != 0) 00053 { 00054 value_type * begin = buffer - 1; 00055 value_type * end = reinterpret_cast<value_type*>(*begin); 00056 reference_traits::release_range(buffer, end); 00057 00058 buffer = begin; 00059 } 00060 delete[] buffer; 00061 } |