Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption Class Reference

#include <Services.h>

Inheritance diagram for CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption:

Inheritance graph
[legend]
Collaboration diagram for CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption:

Collaboration graph
[legend]
List of all members.

Public Methods

 _TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption (void)
 _TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption (CORBA::ULong maximum)
 _TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption (CORBA::ULong maximum, CORBA::ULong length, CORBA::ULong *data, CORBA::Boolean release=0)
 _TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption (const _TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption &rhs)
_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption & operator= (const _TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption &rhs)
virtual ~_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption (void)
CORBA::ULongoperator[] (CORBA::ULong i)
const CORBA::ULongoperator[] (CORBA::ULong i) const
virtual void _allocate_buffer (CORBA::ULong length)
virtual void _deallocate_buffer (void)
 Must deallocate the buffer and then set it to zero. More...

CORBA::ULongget_buffer (CORBA::Boolean orphan=0)
const CORBA::ULongget_buffer (void) const
void replace (CORBA::ULong max, CORBA::ULong length, CORBA::ULong *data, CORBA::Boolean release)

Static Public Methods

CORBA::ULongallocbuf (CORBA::ULong size)
void freebuf (CORBA::ULong *buffer)

Constructor & Destructor Documentation

ACE_INLINE CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption void   
 

Definition at line 557 of file Services.i.

00558   {
00559   }

ACE_INLINE CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption CORBA::ULong    maximum
 

Definition at line 562 of file Services.i.

References allocbuf.

ACE_INLINE CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption CORBA::ULong    maximum,
CORBA::ULong    length,
CORBA::ULong   data,
CORBA::Boolean    release = 0
 

Definition at line 568 of file Services.i.

00572   : TAO_Unbounded_Base_Sequence (maximum, length, data, release)
00573   {
00574   }

CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption const _TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption &    rhs
 

virtual CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::~_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption void    [virtual]
 


Member Function Documentation

virtual void CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::_allocate_buffer CORBA::ULong    length [virtual]
 

Ensure that the buffer contains space for at least <length> elements. The constructor must be called for any new elements, the old ones (if any) must be copied into the buffer using operator= and then their destructors must be called. Finally the old buffer must be released.

Implements TAO_Base_Sequence.

virtual void CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::_deallocate_buffer void    [virtual]
 

Must deallocate the buffer and then set it to zero.

Implements TAO_Base_Sequence.

ACE_INLINE CORBA::ULong * CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::allocbuf CORBA::ULong    size [static]
 

Definition at line 544 of file Services.i.

Referenced by _TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption, and get_buffer.

00546   {
00547     return new CORBA::ULong[size];
00548   }

ACE_INLINE void CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::freebuf CORBA::ULong   buffer [static]
 

Definition at line 550 of file Services.i.

References ACE_INLINE.

Referenced by replace.

00552   {
00553     delete [] buffer;
00554   }

ACE_INLINE const CORBA::ULong * CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::get_buffer void    const
 

Definition at line 677 of file Services.i.

00678   {
00679     return ACE_reinterpret_cast(const CORBA::ULong * ACE_CAST_CONST, this->buffer_);
00680   }

ACE_INLINE CORBA::ULong * CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::get_buffer CORBA::Boolean    orphan = 0
 

Definition at line 643 of file Services.i.

References allocbuf, TAO_Base_Sequence::buffer_, TAO_Base_Sequence::length_, TAO_Base_Sequence::maximum_, and TAO_Base_Sequence::release_.

Referenced by operator<<, and operator>>.

00644   {
00645     CORBA::ULong *result = 0;
00646     if (orphan == 0)
00647     {
00648       // We retain ownership.
00649       if (this->buffer_ == 0)
00650       {
00651         result = CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::allocbuf (this->length_);
00652         this->buffer_ = result;
00653         this->release_ = 1;
00654       }
00655       else
00656       {
00657         result = ACE_reinterpret_cast (CORBA::ULong*, this->buffer_);
00658       }
00659     }
00660     else // if (orphan == 1)
00661     {
00662       if (this->release_ != 0)
00663       {
00664         // We set the state back to default and relinquish
00665         // ownership.
00666         result = ACE_reinterpret_cast(CORBA::ULong*,this->buffer_);
00667         this->maximum_ = 0;
00668         this->length_ = 0;
00669         this->buffer_ = 0;
00670         this->release_ = 0;
00671       }
00672     }
00673     return result;
00674   }

_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption& CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::operator= const _TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption &    rhs
 

ACE_INLINE const CORBA::ULong & CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::operator[] CORBA::ULong    i const
 

Definition at line 632 of file Services.i.

References ACE_ASSERT.

00634   {
00635     ACE_ASSERT (i < this->maximum_);
00636     CORBA::ULong * const tmp = ACE_reinterpret_cast (CORBA::ULong* ACE_CAST_CONST, this->buffer_);
00637     return tmp[i];
00638   }

ACE_INLINE CORBA::ULong & CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::operator[] CORBA::ULong    i
 

Definition at line 623 of file Services.i.

References ACE_ASSERT.

00625   {
00626     ACE_ASSERT (i < this->maximum_);
00627     CORBA::ULong* tmp = ACE_reinterpret_cast(CORBA::ULong*,this->buffer_);
00628     return tmp[i];
00629   }

ACE_INLINE void CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::replace CORBA::ULong    max,
CORBA::ULong    length,
CORBA::ULong   data,
CORBA::Boolean    release
 

Definition at line 683 of file Services.i.

References TAO_Base_Sequence::buffer_, freebuf, TAO_Unbounded_Base_Sequence::length, TAO_Base_Sequence::length_, TAO_Base_Sequence::maximum_, TAO_Base_Sequence::release, and TAO_Base_Sequence::release_.

00687   {
00688     this->maximum_ = max;
00689     this->length_ = length;
00690     if (this->buffer_ && this->release_ == 1)
00691     {
00692       CORBA::ULong *tmp = ACE_reinterpret_cast(CORBA::ULong*,this->buffer_);
00693       CORBA_ServiceInformation::_TAO_Unbounded_Sequence_CORBA_ServiceInformation__tao_seq_ServiceOption::freebuf (tmp);
00694     }
00695     this->buffer_ = data;
00696     this->release_ = release;
00697   }


The documentation for this class was generated from the following files:
Generated on Mon Jun 16 15:01:51 2003 for TAO by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002