# PASN_Array Class Reference

Class for ASN Array type. More...

`#include <asner.h>`

Inheritance diagram for PASN_Array:

List of all members.

## Public Member Functions

PINDEX | GetSize () const
PBoolean | SetSize (PINDEX newSize)
PASN_Object & | operator[] (PINDEX i) const
void | Append (PASN_Object *obj)
void | RemoveAt (PINDEX i)
void | RemoveAll ()
virtual Comparison | Compare (const PObject &obj) const
| Compare the two objects and return their relative rank.
virtual void | PrintOn (ostream &strm) const
| Output the contents of the object to the stream.
virtual void | SetConstraintBounds (ConstraintType type, int lower, unsigned upper)
virtual PString | GetTypeAsString () const
| Return a string giving the type of the object.
virtual PINDEX | GetDataLength () const
virtual PBoolean | IsPrimitive () const
virtual PBoolean | Decode (PASN_Stream &)
virtual void | Encode (PASN_Stream &) const
virtual PASN_Object * | CreateObject () const =0
PASN_Array & | operator= (const PASN_Array &other)

## Protected Member Functions

| PASN_Array (unsigned tag=UniversalSequence, TagClass tagClass=UniversalTagClass)
| PASN_Array (const PASN_Array &other)

## Protected Attributes

PASN_ObjectArray | array

## Detailed Description

Class for ASN Array type.

## Constructor & Destructor Documentation

PASN_Array::PASN_Array | ( | unsigned | tag = `UniversalSequence`,
|  | TagClass | tagClass = `UniversalTagClass` |
| ) |  |  | `[protected]`

PASN_Array::PASN_Array | ( | const PASN_Array & | other | ) | `[protected]`

## Member Function Documentation

void PASN_Array::Append | ( | PASN_Object * | obj | ) | `[inline]`

virtual Comparison PASN_Array::Compare | ( | const PObject & | obj | ) | const`[virtual]`

Compare the two objects and return their relative rank.

This function is usually overridden by descendent classes to yield the ranking according to the semantics of the object.

The default function is to use the `CompareObjectMemoryDirect()` function to do a byte wise memory comparison of the two objects.

Returns:
  `LessThan`, `EqualTo` or `GreaterThan` according to the relative rank of the objects.

Reimplemented from PObject.

virtual PASN_Object* PASN_Array::CreateObject | ( |  | ) | const`[pure virtual]`

Implemented in PSNMP_VarBindList.

virtual PBoolean PASN_Array::Decode | ( | PASN_Stream & |  | ) | `[virtual]`

Implements PASN_Object.

virtual void PASN_Array::Encode | ( | PASN_Stream & |  | ) | const`[virtual]`

Implements PASN_Object.

virtual PINDEX PASN_Array::GetDataLength | ( |  | ) | const`[virtual]`

Implements PASN_Object.

PINDEX PASN_Array::GetSize | ( |  | ) | const`[inline]`

virtual PString PASN_Array::GetTypeAsString | ( |  | ) | const`[virtual]`

Return a string giving the type of the object.

Implements PASN_Object.

virtual PBoolean PASN_Array::IsPrimitive | ( |  | ) | const`[virtual]`

Reimplemented from PASN_Object.

PASN_Array& PASN_Array::operator= | ( | const PASN_Array & | other | ) |

PASN_Object& PASN_Array::operator[] | ( | PINDEX | i | ) | const`[inline]`

Reimplemented in PSNMP_VarBindList.

virtual void PASN_Array::PrintOn | ( | ostream & | strm | ) | const`[virtual]`

Output the contents of the object to the stream.

The exact output is dependent on the exact semantics of the descendent class. This is primarily used by the standard `operator<<` function.

The default behaviour is to print the class name.

Reimplemented from PObject.

void PASN_Array::RemoveAll | ( |  | ) | `[inline]`

void PASN_Array::RemoveAt | ( | PINDEX | i | ) | `[inline]`

virtual void PASN_Array::SetConstraintBounds | ( | ConstraintType | type,
|  | int | lower,
|  | unsigned | upper |
| ) |  |  | `[virtual]`

Reimplemented from PASN_ConstrainedObject.

PBoolean PASN_Array::SetSize | ( | PINDEX | newSize | ) |

## Member Data Documentation

PASN_ObjectArray PASN_Array::array `[protected]`

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

- asner.h