PTLib  Version 2.10.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PASN_Set Class Reference

Class for ASN Set type. More...

#include <asner.h>

Inheritance diagram for PASN_Set:
PASN_Sequence PASN_Object PObject

Public Member Functions

 PASN_Set (unsigned tag=UniversalSet, TagClass tagClass=UniversalTagClass, unsigned nOpts=0, PBoolean extend=false, unsigned nExtend=0)
virtual PObjectClone () const
 Create a copy of the class on the heap.
virtual PString GetTypeAsString () const
 Return a string giving the type of the object.
- Public Member Functions inherited from PASN_Sequence
 PASN_Sequence (unsigned tag=UniversalSequence, TagClass tagClass=UniversalTagClass, unsigned nOpts=0, PBoolean extend=false, unsigned nExtend=0)
 PASN_Sequence (const PASN_Sequence &other)
PASN_Sequenceoperator= (const PASN_Sequence &other)
PINDEX GetSize () const
PBoolean SetSize (PINDEX newSize)
PASN_Objectoperator[] (PINDEX i) const
PBoolean HasOptionalField (PINDEX opt) const
void IncludeOptionalField (PINDEX opt)
void RemoveOptionalField (PINDEX opt)
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 PINDEX GetDataLength () const
virtual PBoolean IsPrimitive () const
virtual PBoolean Decode (PASN_Stream &)
virtual void Encode (PASN_Stream &) const
PBoolean PreambleDecode (PASN_Stream &strm)
void PreambleEncode (PASN_Stream &strm) const
PBoolean KnownExtensionDecode (PASN_Stream &strm, PINDEX fld, PASN_Object &field)
void KnownExtensionEncode (PASN_Stream &strm, PINDEX fld, const PASN_Object &field) const
PBoolean UnknownExtensionsDecode (PASN_Stream &strm)
void UnknownExtensionsEncode (PASN_Stream &strm) const
PBoolean PreambleDecodeBER (PBER_Stream &strm)
void PreambleEncodeBER (PBER_Stream &strm) const
PBoolean KnownExtensionDecodeBER (PBER_Stream &strm, PINDEX fld, PASN_Object &field)
void KnownExtensionEncodeBER (PBER_Stream &strm, PINDEX fld, const PASN_Object &field) const
PBoolean UnknownExtensionsDecodeBER (PBER_Stream &strm)
void UnknownExtensionsEncodeBER (PBER_Stream &strm) const
PBoolean PreambleDecodePER (PPER_Stream &strm)
void PreambleEncodePER (PPER_Stream &strm) const
PBoolean KnownExtensionDecodePER (PPER_Stream &strm, PINDEX fld, PASN_Object &field)
void KnownExtensionEncodePER (PPER_Stream &strm, PINDEX fld, const PASN_Object &field) const
PBoolean UnknownExtensionsDecodePER (PPER_Stream &strm)
void UnknownExtensionsEncodePER (PPER_Stream &strm) const
virtual PBoolean PreambleDecodeXER (PXER_Stream &strm)
virtual void PreambleEncodeXER (PXER_Stream &strm) const
virtual PBoolean KnownExtensionDecodeXER (PXER_Stream &strm, PINDEX fld, PASN_Object &field)
virtual void KnownExtensionEncodeXER (PXER_Stream &strm, PINDEX fld, const PASN_Object &field) const
virtual PBoolean UnknownExtensionsDecodeXER (PXER_Stream &strm)
virtual void UnknownExtensionsEncodeXER (PXER_Stream &strm) const
- Public Member Functions inherited from PASN_Object
PINDEX GetObjectLength () const
PBoolean IsExtendable () const
void SetExtendable (PBoolean ext=true)
TagClass GetTagClass () const
unsigned GetTag () const
virtual void SetTag (unsigned newTag, TagClass tagClass=DefaultTagClass)
void SetConstraints (ConstraintType type, int value)
void SetConstraints (ConstraintType, int lower, MaximumValueTag)
void SetConstraints (ConstraintType, MinimumValueTag lower, unsigned upper)
void SetConstraints (ConstraintType, MinimumValueTag lower, MaximumValueTag upper)
void SetConstraints (ConstraintType type, int lower, unsigned upper)
virtual void SetConstraintBounds (ConstraintType type, int lower, unsigned upper)
virtual void SetCharacterSet (ConstraintType ctype, const char *charSet)
virtual void SetCharacterSet (ConstraintType ctype, unsigned firstChar, unsigned lastChar)
- Public Member Functions inherited from PObject
virtual ~PObject ()
virtual PINDEX HashFunction () const
 This function yields a hash value required by the PDictionary class.
virtual Comparison CompareObjectMemoryDirect (const PObject &obj) const
 Determine the byte wise comparison of two objects.
bool operator== (const PObject &obj) const
 Compare the two objects.
bool operator!= (const PObject &obj) const
 Compare the two objects.
bool operator< (const PObject &obj) const
 Compare the two objects.
bool operator> (const PObject &obj) const
 Compare the two objects.
bool operator<= (const PObject &obj) const
 Compare the two objects.
bool operator>= (const PObject &obj) const
 Compare the two objects.
virtual const char * GetClass (unsigned ancestor=0) const
 Get the current dynamic type of the object instance.
PBoolean IsClass (const char *cls) const
virtual PBoolean InternalIsDescendant (const char *clsName) const
 Determine if the dynamic type of the current instance is a descendent of the specified class.
virtual void ReadFrom (istream &strm)
 Input the contents of the object from the stream.

Additional Inherited Members

- Public Types inherited from PASN_Object
enum  TagClass {
  UniversalTagClass, ApplicationTagClass, ContextSpecificTagClass, PrivateTagClass,
  DefaultTagClass
}
enum  UniversalTags {
  InvalidUniversalTag, UniversalBoolean, UniversalInteger, UniversalBitString,
  UniversalOctetString, UniversalNull, UniversalObjectId, UniversalObjectDescriptor,
  UniversalExternalType, UniversalReal, UniversalEnumeration, UniversalEmbeddedPDV,
  UniversalSequence = 16, UniversalSet, UniversalNumericString, UniversalPrintableString,
  UniversalTeletexString, UniversalVideotexString, UniversalIA5String, UniversalUTCTime,
  UniversalGeneralisedTime, UniversalGeneralizedTime = UniversalGeneralisedTime, UniversalGraphicString, UniversalVisibleString,
  UniversalGeneralString, UniversalUniversalString, UniversalBMPString = 30
}
enum  ConstraintType { Unconstrained, PartiallyConstrained, FixedConstraint, ExtendableConstraint }
enum  MinimumValueTag { MinimumValue = INT_MIN }
enum  MaximumValueTag { MaximumValue = INT_MAX }
- Static Public Member Functions inherited from PASN_Object
static PINDEX GetMaximumArraySize ()
static void SetMaximumArraySize (PINDEX sz)
static PINDEX GetMaximumStringSize ()
static void SetMaximumStringSize (PINDEX sz)
- Protected Member Functions inherited from PASN_Sequence
PBoolean NoExtensionsToDecode (PPER_Stream &strm)
PBoolean NoExtensionsToEncode (PPER_Stream &strm)
- Protected Attributes inherited from PASN_Sequence
PASN_ObjectArray fields
PASN_BitString optionMap
int knownExtensions
int totalExtensions
PASN_BitString extensionMap
PINDEX endBasicEncoding
- Friends inherited from PObject

Detailed Description

Class for ASN Set type.

Constructor & Destructor Documentation

PASN_Set::PASN_Set ( unsigned  tag = UniversalSet,
TagClass  tagClass = UniversalTagClass,
unsigned  nOpts = 0,
PBoolean  extend = false,
unsigned  nExtend = 0 
)

Member Function Documentation

virtual PObject* PASN_Set::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.

Returns
pointer to new copy of the class instance.

Reimplemented from PASN_Sequence.

virtual PString PASN_Set::GetTypeAsString ( ) const
virtual

Return a string giving the type of the object.

Reimplemented from PASN_Sequence.


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