ACE_Obchunk Class Reference

Defines the state that represents a "chunk" of memory. Evenything in this class is public because it is designed as an internal structure of Obstack_T and users are not supposed to use this class directly. More...

#include <Obchunk.h>

Collaboration diagram for ACE_Obchunk:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 ACE_Obchunk (size_t size)
 Constructor.

 ~ACE_Obchunk (void)
 Dtor.

void dump (void) const
 Dump the state of an object.


Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

char * end_
 Pointer to the end of the chunk.

char * block_
 Pointer to the head of the current building block.

char * cur_
 Pointer to the current location in the chunk.

ACE_Obchunknext_
 Next chunk in the chain.

char contents_ [4]

Detailed Description

Defines the state that represents a "chunk" of memory. Evenything in this class is public because it is designed as an internal structure of Obstack_T and users are not supposed to use this class directly.

See also:
ACE_Obstack_T

Definition at line 35 of file Obchunk.h.


Constructor & Destructor Documentation

ACE_Obchunk::ACE_Obchunk size_t  size  ) 
 

Constructor.

Definition at line 28 of file Obchunk.cpp.

00029   : end_ (contents_ + size),
00030     block_ (contents_),
00031     cur_ (contents_),
00032     next_ (0)
00033 {
00034 }

ACE_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE ACE_Obchunk::~ACE_Obchunk void   ) 
 

Dtor.

Definition at line 8 of file Obchunk.inl.

00009 {
00010 }


Member Function Documentation

ACE_BEGIN_VERSIONED_NAMESPACE_DECL void ACE_Obchunk::dump void   )  const
 

Dump the state of an object.

Definition at line 16 of file Obchunk.cpp.

References ACE_BEGIN_DUMP, ACE_DEBUG, ACE_END_DUMP, ACE_LIB_TEXT, ACE_TRACE, and LM_DEBUG.

00017 {
00018 #if defined (ACE_HAS_DUMP)
00019   ACE_TRACE ("ACE_Obchunk::dump");
00020 
00021   ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
00022   ACE_DEBUG ((LM_DEBUG,  ACE_LIB_TEXT ("end_ = %x\n"), this->end_));
00023   ACE_DEBUG ((LM_DEBUG,  ACE_LIB_TEXT ("cur_ = %x\n"), this->cur_));
00024   ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
00025 #endif /* ACE_HAS_DUMP */
00026 }


Member Data Documentation

ACE_Obchunk::ACE_ALLOC_HOOK_DECLARE
 

Declare the dynamic allocation hooks.

Definition at line 48 of file Obchunk.h.

char* ACE_Obchunk::block_
 

Pointer to the head of the current building block.

Definition at line 54 of file Obchunk.h.

Referenced by ACE_Obstack_T< CHAR >::freeze(), ACE_Obstack_T< CHAR >::release(), ACE_Obstack_T< CHAR >::request(), ACE_Obstack_T< CHAR >::unwind(), and ACE_Obstack_T< CHAR >::unwind_i().

char ACE_Obchunk::contents_[4]
 

Pointer to the beginning contents of this chunk. This field is actually overlayed by the memory allocated by <ACE_Obstack::new_chunk>. Therefore, it *must* come last.

Definition at line 67 of file Obchunk.h.

Referenced by ACE_Obstack_T< CHAR >::release(), ACE_Obstack_T< CHAR >::request(), ACE_Obstack_T< CHAR >::unwind(), and ACE_Obstack_T< CHAR >::unwind_i().

char* ACE_Obchunk::cur_
 

Pointer to the current location in the chunk.

Definition at line 57 of file Obchunk.h.

Referenced by ACE_Obstack_T< CHAR >::copy(), ACE_Obstack_T< CHAR >::freeze(), ACE_Obstack_T< CHAR >::grow(), ACE_Obstack_T< CHAR >::grow_fast(), ACE_Obstack_T< CHAR >::release(), ACE_Obstack_T< CHAR >::request(), ACE_Obstack_T< CHAR >::unwind(), and ACE_Obstack_T< CHAR >::unwind_i().

char* ACE_Obchunk::end_
 

Pointer to the end of the chunk.

Definition at line 51 of file Obchunk.h.

Referenced by ACE_Obstack_T< CHAR >::request(), ACE_Obstack_T< CHAR >::unwind(), and ACE_Obstack_T< CHAR >::unwind_i().

ACE_Obchunk* ACE_Obchunk::next_
 

Next chunk in the chain.

Definition at line 60 of file Obchunk.h.

Referenced by ACE_Obstack_T< CHAR >::request(), ACE_Obstack_T< CHAR >::unwind_i(), and ACE_Obstack_T< CHAR >::~ACE_Obstack_T().


The documentation for this class was generated from the following files:
Generated on Thu Nov 9 11:26:01 2006 for ACE by doxygen 1.3.6