#include <Sequence.h>
Inheritance diagram for TAO_Unbounded_Sequence< CORBA::Octet >:
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.
|
|
|
Implement the methods for all the sequence, please see TAO_Base_Sequence. Implements TAO_Base_Sequence. |
|
Must deallocate the buffer and then set it to zero.
Implements TAO_Base_Sequence. |
|
Use in the implementation of insertion and extraction operators from CORBA::Any Reimplemented in CORBA::OctetSeq. |
|
Allocate storage for the sequence, please note that the storage is always held in a ACE_Message_Block. |
|
Free the storage.
|
|
|
|
|
|
Returns the underlying message block, the caller must *not* release the copy. |
|
|
|
|
|
See the general description in "Sequence_T.h" NOTE: This last two methods can be rendered useless in certain cases, see below. |
|
Replaces the current buffer with <mb>, using only <length> bytes. It takes a duplicate of <mb> so the user still owns it. |
|
See the general description of this methods in "Sequence_T.h".
|
|
Create a sequence of octets from a single message block (i.e. it ignores any chaining in the meesage block). |
|
The copy constructor and assignment operators *do* copy the data, though we could simply duplicate the ref count in the ACE_Message_Block this will change the semantics for this operations. |
|
|
|
|
|
see TAO_Unbounded_Sequence in "Sequence_T.h"
|
|
For efficient marshalling and demarshalling.
Reimplemented from TAO_Base_Sequence. |
|
|