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

# TAO_Bounded_Pseudo_Sequence Class Template Reference

Bounded version of TAO_Unbounded_Pseudo_Sequence. More...

`#include <Sequence_T.h>`

Inheritance diagram for TAO_Bounded_Pseudo_Sequence:

[legend]
Collaboration diagram for TAO_Bounded_Pseudo_Sequence:

[legend]
List of all members.

## Public Methods
| TAO_Bounded_Pseudo_Sequence (void)
| default ctor. More...
| TAO_Bounded_Pseudo_Sequence (CORBA::ULong length, T **value, CORBA::Boolean release=0)
| Constructor from data. More...
| TAO_Bounded_Pseudo_Sequence (const TAO_Bounded_Pseudo_Sequence< T, T_var, MAX > &)
| Copy constructor. More...
| ~TAO_Bounded_Pseudo_Sequence (void)
| destructor. More...
TAO_Bounded_Pseudo_Sequence & | operator= (const TAO_Bounded_Pseudo_Sequence< T, T_var, MAX > &)
| Assignment from another Bounded sequence. More...
TAO_Pseudo_Object_Manager< T, T_var > | operator[] (CORBA::ULong slot) const
| Read-write accessor. More...
virtual void | _allocate_buffer (CORBA::ULong length)
| Ensure that the buffer contains space for at least <length> elements. More...
virtual void | _deallocate_buffer (void)
| Must deallocate the buffer and then set it to zero. More...
virtual void | _shrink_buffer (CORBA::ULong new_length, CORBA::ULong old_length)
| Some sequences (of objects and strings) require some cleanup if the sequence is shrunk. More...
## Static Public Methods
T ** | allocbuf (CORBA::ULong length)
| Allocate storage for a sequence.. More...
void | freebuf (T **buffer)
| Free a buffer allocated by allocbuf() and release each element on it. More...

## Detailed Description

### template<class T, class T_var, size_t MAX>
class TAO_Bounded_Pseudo_Sequence< T, T_var, MAX >

Bounded version of TAO_Unbounded_Pseudo_Sequence.

Please see the documentation for the unbounded case.

## Constructor & Destructor Documentation

template<class T, class T_var, size_t MAX>
TAO_Bounded_Pseudo_Sequence< T, T_var, MAX >::TAO_Bounded_Pseudo_Sequence | ( | void |  | ) |

| default ctor.

template<class T, class T_var, size_t MAX>
ACE_INLINE TAO_Bounded_Pseudo_Sequence< T, T_var, MAX >::TAO_Bounded_Pseudo_Sequence | ( | CORBA::ULong | length,
|  | T ** | value,
|  | CORBA::Boolean | release = 0
| ) |

| Constructor from data.

template<class T, class T_var, size_t MAX>
TAO_Bounded_Pseudo_Sequence< T, T_var, MAX >::TAO_Bounded_Pseudo_Sequence | ( | const TAO_Bounded_Pseudo_Sequence< T, T_var, MAX > & | rhs | ) |

| Copy constructor.

template<class T, class T_var, size_t MAX>
ACE_INLINE TAO_Bounded_Pseudo_Sequence< T, T_var, MAX >::~TAO_Bounded_Pseudo_Sequence | ( | void |  | ) |

| destructor.

## Member Function Documentation

template<class T, class T_var, size_t MAX>
void TAO_Bounded_Pseudo_Sequence< T, T_var, MAX >::_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. Reimplemented from TAO_Base_Sequence.

template<class T, class T_var, size_t MAX>
void TAO_Bounded_Pseudo_Sequence< T, T_var, MAX >::_deallocate_buffer | ( | void |  | ) | `[virtual]`

| Must deallocate the buffer and then set it to zero. Reimplemented from TAO_Base_Sequence.

template<class T, class T_var, size_t MAX>
void TAO_Bounded_Pseudo_Sequence< T, T_var, MAX >::_shrink_buffer | ( | CORBA::ULong | nl,
|  | CORBA::ULong | ol
| ) | `[virtual]`

| Some sequences (of objects and strings) require some cleanup if the sequence is shrunk. The spec requires the destructor to release the objects only from position <0> to <length-1>; so shrink and then delete could result in a memory leak. Reimplemented from TAO_Base_Sequence.

template<class T, class T_var, size_t MAX>
T ** TAO_Bounded_Pseudo_Sequence< T, T_var, MAX >::allocbuf | ( | CORBA::ULong | length | ) | `[static]`

| Allocate storage for a sequence..

template<class T, class T_var, size_t MAX>
void TAO_Bounded_Pseudo_Sequence< T, T_var, MAX >::freebuf | ( | T ** | buffer | ) | `[static]`

| Free a buffer allocated by allocbuf() and release each element on it.

template<class T, class T_var, size_t MAX>
TAO_Bounded_Pseudo_Sequence< T, T_var, MAX > & TAO_Bounded_Pseudo_Sequence< T, T_var, MAX >::operator= | ( | const TAO_Bounded_Pseudo_Sequence< T, T_var, MAX > & | rhs | ) |

| Assignment from another Bounded sequence.

template<class T, class T_var, size_t MAX>
ACE_INLINE TAO_Pseudo_Object_Manager< T, T_var > TAO_Bounded_Pseudo_Sequence< T, T_var, MAX >::operator[] | ( | CORBA::ULong | slot | ) | const

| Read-write accessor.

The documentation for this class was generated from the following files:

- Sequence_T.h
- Sequence_T.cpp
- Sequence_T.i