Public Methods |
| | TAO_Unbounded_Sequence (void) |
| | see TAO_Unbounded_Sequence in "Sequence_T.h". More...
|
| | TAO_Unbounded_Sequence (CORBA::ULong max) |
| | TAO_Unbounded_Sequence (CORBA::ULong max, CORBA::ULong length, CORBA::Octet *data, CORBA::Boolean release=0) |
| virtual | ~TAO_Unbounded_Sequence (void) |
| | TAO_Unbounded_Sequence (const TAO_Unbounded_Sequence< CORBA::Octet > &) |
| TAO_Unbounded_Sequence< CORBA::Octet > & | operator= (const TAO_Unbounded_Sequence< CORBA::Octet > &) |
| CORBA::Octet & | operator[] (CORBA::ULong) |
| const CORBA::Octet & | operator[] (CORBA::ULong) const |
| virtual void | _allocate_buffer (CORBA::ULong length) |
| | Implement the methods for all the sequence, please seee TAO_Base_Sequence. More...
|
| virtual void | _deallocate_buffer (void) |
| | Must deallocate the buffer and then set it to zero. More...
|
| CORBA::Octet * | get_buffer (CORBA::Boolean orphan=0) |
| const CORBA::Octet * | get_buffer (void) const |
| void | replace (CORBA::ULong max, CORBA::ULong length, CORBA::Octet *data, CORBA::Boolean release=0) |
| | See the general description of this methods in "Sequence_T.h". More...
|
| ACE_Message_Block * | mb (void) const |
| | Returns the underlying message block, the caller must *not* release the copy. More...
|
| | TAO_Unbounded_Sequence (CORBA::ULong length, const ACE_Message_Block *mb) |
| | Create a sequence of octets from a single message block (i.e. it ignores any chaining in the meesage block). More...
|
| void | replace (CORBA::ULong length, const ACE_Message_Block *mb) |
| | Replaces the current buffer with <mb>, using only <length> bytes. It takes a duplicate of <mb> so the user still owns it. More...
|
Static Public Methods |
| void | _tao_any_destructor (void *) |
| | Use in the implementation of insertion and extraction operators from CORBA::Any. More...
|
| CORBA::Octet * | allocbuf (CORBA::ULong) |
| | Allocate storage for the sequence, please note that the storage is always held in a ACE_Message_Block. More...
|
| void | freebuf (CORBA::Octet *) |
| | Free the storage. More...
|
Private Attributes |
| ACE_Message_Block * | mb_ |
Friends |
| class | TAO_Marshal_Sequence |
| | For efficient marshalling and demarshalling. More...
|
Marshalling and demarshalling octet sequences can be highly optimize, for instance at demarshalling we don't require a copy from the CDR buffer to the octet sequence buffer, we can simply hold a duplicate of the underlying ACE_Message_Block. Specializing the TAO_Unbounded_Sequence<T> parametric class, is an excellent way to achieve this optimizations.