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

IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList Class Reference

#include <IOPC.h>

Inheritance diagram for IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList:

Inheritance graph
[legend]
Collaboration diagram for IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList:

Collaboration graph
[legend]
List of all members.

Public Methods

 _TAO_Unbounded_Sequence_IOP_ServiceContextList (void)
 _TAO_Unbounded_Sequence_IOP_ServiceContextList (CORBA::ULong maximum)
 _TAO_Unbounded_Sequence_IOP_ServiceContextList (CORBA::ULong maximum, CORBA::ULong length, ServiceContext *data, CORBA::Boolean release=0)
 _TAO_Unbounded_Sequence_IOP_ServiceContextList (const _TAO_Unbounded_Sequence_IOP_ServiceContextList &rhs)
_TAO_Unbounded_Sequence_IOP_ServiceContextList & operator= (const _TAO_Unbounded_Sequence_IOP_ServiceContextList &rhs)
virtual ~_TAO_Unbounded_Sequence_IOP_ServiceContextList (void)
ServiceContextoperator[] (CORBA::ULong i)
const ServiceContextoperator[] (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...

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

Static Public Methods

ServiceContextallocbuf (CORBA::ULong size)
void freebuf (ServiceContext *buffer)

Constructor & Destructor Documentation

IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::_TAO_Unbounded_Sequence_IOP_ServiceContextList void   
 

IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::_TAO_Unbounded_Sequence_IOP_ServiceContextList CORBA::ULong    maximum
 

IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::_TAO_Unbounded_Sequence_IOP_ServiceContextList CORBA::ULong    maximum,
CORBA::ULong    length,
ServiceContext   data,
CORBA::Boolean    release = 0
 

IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::_TAO_Unbounded_Sequence_IOP_ServiceContextList const _TAO_Unbounded_Sequence_IOP_ServiceContextList &    rhs
 

IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::~_TAO_Unbounded_Sequence_IOP_ServiceContextList void    [virtual]
 

Definition at line 1361 of file IOPC.cpp.

01362 {
01363   this->_deallocate_buffer ();
01364 }


Member Function Documentation

void IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::_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.

Definition at line 1330 of file IOPC.cpp.

References TAO_Base_Sequence::buffer_, TAO_Unbounded_Base_Sequence::length, TAO_Base_Sequence::length_, and TAO_Base_Sequence::release_.

01331 {
01332   IOP::ServiceContext* tmp = 0;
01333   tmp = _TAO_Unbounded_Sequence_IOP_ServiceContextList::allocbuf (length);
01334 
01335   if (this->buffer_ != 0)
01336   {
01337     IOP::ServiceContext *old = ACE_reinterpret_cast (IOP::ServiceContext *,this->buffer_);
01338 
01339     for (CORBA::ULong i = 0; i < this->length_; ++i)
01340       tmp[i] = old[i];
01341 
01342     if (this->release_)
01343       _TAO_Unbounded_Sequence_IOP_ServiceContextList::freebuf (old);
01344 
01345   }
01346   this->buffer_ = tmp;
01347 }

void IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::_deallocate_buffer void    [virtual]
 

Must deallocate the buffer and then set it to zero.

Implements TAO_Base_Sequence.

Definition at line 1350 of file IOPC.cpp.

References TAO_Base_Sequence::buffer_, and TAO_Base_Sequence::release_.

01351 {
01352   if (this->buffer_ == 0 || this->release_ == 0)
01353     return;
01354 
01355   IOP::ServiceContext *tmp = ACE_reinterpret_cast (IOP::ServiceContext *,this->buffer_);
01356 
01357   _TAO_Unbounded_Sequence_IOP_ServiceContextList::freebuf (tmp);
01358   this->buffer_ = 0;
01359 }

ServiceContext* IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::allocbuf CORBA::ULong    size [static]
 

void IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::freebuf ServiceContext   buffer [static]
 

const ServiceContext* IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::get_buffer void    const
 

ServiceContext* IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::get_buffer CORBA::Boolean    orphan = 0
 

Referenced by TAO_Synch_Reply_Dispatcher::dispatch_reply.

_TAO_Unbounded_Sequence_IOP_ServiceContextList& IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::operator= const _TAO_Unbounded_Sequence_IOP_ServiceContextList &    rhs
 

const ServiceContext& IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::operator[] CORBA::ULong    i const
 

ServiceContext& IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::operator[] CORBA::ULong    i
 

void IOP::_TAO_Unbounded_Sequence_IOP_ServiceContextList::replace CORBA::ULong    max,
CORBA::ULong    length,
ServiceContext   data,
CORBA::Boolean    release
 

Referenced by TAO_Service_Context::add_context_i, TAO_Synch_Reply_Dispatcher::dispatch_reply, and TAO_Service_Context::set_context_i.


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