#include <asner.h>
Inheritance diagram for PASN_Sequence:
Public Member Functions | |
PASN_Sequence (unsigned tag=UniversalSequence, TagClass tagClass=UniversalTagClass, unsigned nOpts=0, BOOL extend=FALSE, unsigned nExtend=0) | |
PASN_Sequence (const PASN_Sequence &other) | |
PASN_Sequence & | operator= (const PASN_Sequence &other) |
PINDEX | GetSize () const |
BOOL | SetSize (PINDEX newSize) |
PASN_Object & | operator[] (PINDEX i) const |
BOOL | HasOptionalField (PINDEX opt) const |
void | IncludeOptionalField (PINDEX opt) |
void | RemoveOptionalField (PINDEX opt) |
virtual Comparison | Compare (const PObject &obj) const |
virtual PObject * | Clone () const |
virtual void | PrintOn (ostream &strm) const |
virtual PString | GetTypeAsString () const |
virtual PINDEX | GetDataLength () const |
virtual BOOL | IsPrimitive () const |
virtual BOOL | Decode (PASN_Stream &) |
virtual void | Encode (PASN_Stream &) const |
BOOL | PreambleDecode (PASN_Stream &strm) |
void | PreambleEncode (PASN_Stream &strm) const |
BOOL | KnownExtensionDecode (PASN_Stream &strm, PINDEX fld, PASN_Object &field) |
void | KnownExtensionEncode (PASN_Stream &strm, PINDEX fld, const PASN_Object &field) const |
BOOL | UnknownExtensionsDecode (PASN_Stream &strm) |
void | UnknownExtensionsEncode (PASN_Stream &strm) const |
BOOL | PreambleDecodeBER (PBER_Stream &strm) |
void | PreambleEncodeBER (PBER_Stream &strm) const |
BOOL | KnownExtensionDecodeBER (PBER_Stream &strm, PINDEX fld, PASN_Object &field) |
void | KnownExtensionEncodeBER (PBER_Stream &strm, PINDEX fld, const PASN_Object &field) const |
BOOL | UnknownExtensionsDecodeBER (PBER_Stream &strm) |
void | UnknownExtensionsEncodeBER (PBER_Stream &strm) const |
BOOL | PreambleDecodePER (PPER_Stream &strm) |
void | PreambleEncodePER (PPER_Stream &strm) const |
BOOL | KnownExtensionDecodePER (PPER_Stream &strm, PINDEX fld, PASN_Object &field) |
void | KnownExtensionEncodePER (PPER_Stream &strm, PINDEX fld, const PASN_Object &field) const |
BOOL | UnknownExtensionsDecodePER (PPER_Stream &strm) |
void | UnknownExtensionsEncodePER (PPER_Stream &strm) const |
Protected Member Functions | |
BOOL | NoExtensionsToDecode (PPER_Stream &strm) |
BOOL | NoExtensionsToEncode (PPER_Stream &strm) |
Protected Attributes | |
PASN_ObjectArray | fields |
PASN_BitString | optionMap |
int | knownExtensions |
int | totalExtensions |
PASN_BitString | extensionMap |
PINDEX | endBasicEncoding |
PASN_Sequence::PASN_Sequence | ( | unsigned | tag = UniversalSequence , |
|
TagClass | tagClass = UniversalTagClass , |
|||
unsigned | nOpts = 0 , |
|||
BOOL | extend = FALSE , |
|||
unsigned | nExtend = 0 | |||
) |
PASN_Sequence::PASN_Sequence | ( | const PASN_Sequence & | other | ) |
PASN_Sequence& PASN_Sequence::operator= | ( | const PASN_Sequence & | other | ) |
PINDEX PASN_Sequence::GetSize | ( | ) | const [inline] |
BOOL PASN_Sequence::SetSize | ( | PINDEX | newSize | ) |
PASN_Object& PASN_Sequence::operator[] | ( | PINDEX | i | ) | const [inline] |
BOOL PASN_Sequence::HasOptionalField | ( | PINDEX | opt | ) | const |
void PASN_Sequence::IncludeOptionalField | ( | PINDEX | opt | ) |
void PASN_Sequence::RemoveOptionalField | ( | PINDEX | opt | ) |
virtual Comparison PASN_Sequence::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.
Reimplemented from PObject.
virtual PObject* PASN_Sequence::Clone | ( | ) | const [virtual] |
Create a copy of the class on the heap. The exact semantics of the descendent class determine what is required to make a duplicate of the instance. Not all classes can even { do} a clone operation.
The main user of the clone function is the PDictionary# class as it requires copies of the dictionary keys.
The default behaviour is for this function to assert.
Reimplemented from PObject.
Reimplemented in PASN_Set.
virtual void PASN_Sequence::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.
virtual PString PASN_Sequence::GetTypeAsString | ( | ) | const [virtual] |
virtual PINDEX PASN_Sequence::GetDataLength | ( | ) | const [virtual] |
Implements PASN_Object.
virtual BOOL PASN_Sequence::IsPrimitive | ( | ) | const [virtual] |
Reimplemented from PASN_Object.
virtual BOOL PASN_Sequence::Decode | ( | PASN_Stream & | ) | [virtual] |
Implements PASN_Object.
virtual void PASN_Sequence::Encode | ( | PASN_Stream & | ) | const [virtual] |
Implements PASN_Object.
BOOL PASN_Sequence::PreambleDecode | ( | PASN_Stream & | strm | ) |
void PASN_Sequence::PreambleEncode | ( | PASN_Stream & | strm | ) | const |
BOOL PASN_Sequence::KnownExtensionDecode | ( | PASN_Stream & | strm, | |
PINDEX | fld, | |||
PASN_Object & | field | |||
) |
void PASN_Sequence::KnownExtensionEncode | ( | PASN_Stream & | strm, | |
PINDEX | fld, | |||
const PASN_Object & | field | |||
) | const |
BOOL PASN_Sequence::UnknownExtensionsDecode | ( | PASN_Stream & | strm | ) |
void PASN_Sequence::UnknownExtensionsEncode | ( | PASN_Stream & | strm | ) | const |
BOOL PASN_Sequence::PreambleDecodeBER | ( | PBER_Stream & | strm | ) |
void PASN_Sequence::PreambleEncodeBER | ( | PBER_Stream & | strm | ) | const |
BOOL PASN_Sequence::KnownExtensionDecodeBER | ( | PBER_Stream & | strm, | |
PINDEX | fld, | |||
PASN_Object & | field | |||
) |
void PASN_Sequence::KnownExtensionEncodeBER | ( | PBER_Stream & | strm, | |
PINDEX | fld, | |||
const PASN_Object & | field | |||
) | const |
BOOL PASN_Sequence::UnknownExtensionsDecodeBER | ( | PBER_Stream & | strm | ) |
void PASN_Sequence::UnknownExtensionsEncodeBER | ( | PBER_Stream & | strm | ) | const |
BOOL PASN_Sequence::PreambleDecodePER | ( | PPER_Stream & | strm | ) |
void PASN_Sequence::PreambleEncodePER | ( | PPER_Stream & | strm | ) | const |
BOOL PASN_Sequence::KnownExtensionDecodePER | ( | PPER_Stream & | strm, | |
PINDEX | fld, | |||
PASN_Object & | field | |||
) |
void PASN_Sequence::KnownExtensionEncodePER | ( | PPER_Stream & | strm, | |
PINDEX | fld, | |||
const PASN_Object & | field | |||
) | const |
BOOL PASN_Sequence::UnknownExtensionsDecodePER | ( | PPER_Stream & | strm | ) |
void PASN_Sequence::UnknownExtensionsEncodePER | ( | PPER_Stream & | strm | ) | const |
BOOL PASN_Sequence::NoExtensionsToDecode | ( | PPER_Stream & | strm | ) | [protected] |
BOOL PASN_Sequence::NoExtensionsToEncode | ( | PPER_Stream & | strm | ) | [protected] |
PASN_ObjectArray PASN_Sequence::fields [protected] |
PASN_BitString PASN_Sequence::optionMap [protected] |
int PASN_Sequence::knownExtensions [protected] |
int PASN_Sequence::totalExtensions [protected] |
PASN_BitString PASN_Sequence::extensionMap [protected] |
PINDEX PASN_Sequence::endBasicEncoding [protected] |