#include <Sequence_T.h>
Collaboration diagram for TAO_Valuetype_Manager:
Public Methods | |
TAO_Valuetype_Manager (const TAO_Valuetype_Manager< T, T_var > &rhs) | |
Copy constructor, the semantics are non-trivial: + The referenced element is duplicated or not according to the release value on the <rhs>. More... | |
TAO_Valuetype_Manager (T **, CORBA::Boolean release) | |
Constructor from address of an element, it should be private and only TAO_*_Object_Sequence would use it, but we have some problems with friendship and templates. More... | |
~TAO_Valuetype_Manager (void) | |
Destructor, only releases the object if <release_> is true. More... | |
TAO_Valuetype_Manager< T, T_var > & | operator= (const TAO_Valuetype_Manager< T, T_var > &rhs) |
Assignment from another managed type, only release if <this->release_> is true. More... | |
TAO_Valuetype_Manager< T, T_var > & | operator= (T *) |
Assignment from T *. More... | |
TAO_Valuetype_Manager< T, T_var > & | operator= (const T_var &) |
Assignment from T_var. More... | |
T * | operator-> (void) const |
Return pointer. More... | |
operator const T * () const | |
Cast (read-only). More... | |
operator T *& () | |
Cast. More... | |
operator const T_var () const | |
Cast (read-only) so that assignment from a structured type to a T_var will make a copy. More... | |
T * | in (void) const |
for in parameter. More... | |
T *& | inout (void) |
for inout parameter. More... | |
T *& | out (void) |
for out parameter. More... | |
T * | _retn (void) |
for return type. More... | |
Private Attributes | |
T ** | ptr_ |
data member, notice that it is a pointer, to implement the reference behavior for assignment. More... | |
CORBA::Boolean | release_ |
release flag based on parent's flag. More... | |
Friends | |
class | TAO_Unbounded_Valuetype_Sequence< T, T_var > |
According to the spec., valuetypes are handled similarly to object references, so a manager class is needed.
|
Copy constructor, the semantics are non-trivial: + The referenced element is duplicated or not according to the release value on the <rhs>. + In any case a new reference to the same object is created. |
|
Constructor from address of an element, it should be private and only TAO_*_Object_Sequence would use it, but we have some problems with friendship and templates.
|
|
Destructor, only releases the object if <release_> is true.
|
|
for return type.
|
|
for in parameter.
|
|
for inout parameter.
|
|
Cast (read-only).
|
|
Cast (read-only) so that assignment from a structured type to a T_var will make a copy.
|
|
Cast.
|
|
Return pointer.
|
|
Assignment from T_var.
|
|
Assignment from T *.
|
|
Assignment from another managed type, only release if <this->release_> is true. @ TODO what happens if rhs.release_ is true an this->relase_ is false? |
|
for out parameter.
|
|
|
|
data member, notice that it is a pointer, to implement the reference behavior for assignment.
|
|
release flag based on parent's flag.
|