PTLib  Version 2.10.10
PRFC1155_ObjectSyntax Class Reference

#include <rfc1155.h>

Inheritance diagram for PRFC1155_ObjectSyntax:
PASN_Choice PASN_Object PObject

Public Member Functions

 PRFC1155_ObjectSyntax (unsigned tag=0, TagClass tagClass=UniversalTagClass)
 
 operator PRFC1155_SimpleSyntax & ()
 
 operator const PRFC1155_SimpleSyntax & () const
 
 operator PRFC1155_ApplicationSyntax & ()
 
 operator const PRFC1155_ApplicationSyntax & () const
 
PBoolean CreateObject ()
 
PObjectClone () const
 Create a copy of the class on the heap. More...
 
- Public Member Functions inherited from PASN_Choice
 ~PASN_Choice ()
 
virtual void SetTag (unsigned newTag, TagClass tagClass=DefaultTagClass)
 
PString GetTagName () const
 
PASN_ObjectGetObject () const
 
PBoolean IsValid () const
 
 operator PASN_Null & ()
 
 operator PASN_Boolean & ()
 
 operator PASN_Integer & ()
 
 operator PASN_Enumeration & ()
 
 operator PASN_Real & ()
 
 operator PASN_ObjectId & ()
 
 operator PASN_BitString & ()
 
 operator PASN_OctetString & ()
 
 operator PASN_NumericString & ()
 
 operator PASN_PrintableString & ()
 
 operator PASN_VisibleString & ()
 
 operator PASN_IA5String & ()
 
 operator PASN_GeneralString & ()
 
 operator PASN_BMPString & ()
 
 operator PASN_Sequence & ()
 
 operator const PASN_Null & () const
 
 operator const PASN_Boolean & () const
 
 operator const PASN_Integer & () const
 
 operator const PASN_Enumeration & () const
 
 operator const PASN_Real & () const
 
 operator const PASN_ObjectId & () const
 
 operator const PASN_BitString & () const
 
 operator const PASN_OctetString & () const
 
 operator const PASN_NumericString & () const
 
 operator const PASN_PrintableString & () const
 
 operator const PASN_VisibleString & () const
 
 operator const PASN_IA5String & () const
 
 operator const PASN_GeneralString & () const
 
 operator const PASN_BMPString & () const
 
 operator const PASN_Sequence & () const
 
virtual Comparison Compare (const PObject &obj) const
 Compare the two objects and return their relative rank. More...
 
virtual void PrintOn (ostream &strm) const
 Output the contents of the object to the stream. More...
 
virtual PString GetTypeAsString () const
 Return a string giving the type of the object. More...
 
virtual PINDEX GetDataLength () const
 
virtual PBoolean IsPrimitive () const
 
virtual PBoolean Decode (PASN_Stream &)
 
virtual void Encode (PASN_Stream &) const
 
virtual PBoolean DecodePER (PPER_Stream &)
 
virtual void EncodePER (PPER_Stream &) const
 
PBoolean DecodeXER (PXER_Stream &)
 
void EncodeXER (PXER_Stream &) const
 
PASN_Choiceoperator= (const PASN_Choice &other)
 
PINDEX GetValueByName (PString name) 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
 
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. More...
 
virtual const char * GetClass (unsigned ancestor=0) const
 Get the current dynamic type of the object instance. More...
 
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. More...
 
virtual Comparison CompareObjectMemoryDirect (const PObject &obj) const
 Determine the byte wise comparison of two objects. More...
 
bool operator== (const PObject &obj) const
 Compare the two objects. More...
 
bool operator!= (const PObject &obj) const
 Compare the two objects. More...
 
bool operator< (const PObject &obj) const
 Compare the two objects. More...
 
bool operator> (const PObject &obj) const
 Compare the two objects. More...
 
bool operator<= (const PObject &obj) const
 Compare the two objects. More...
 
bool operator>= (const PObject &obj) const
 Compare the two objects. More...
 
virtual void ReadFrom (istream &strm)
 Input the contents of the object from the stream. More...
 

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 }
 
- Public Types inherited from PObject
enum  Comparison { LessThan = -1, EqualTo = 0, GreaterThan = 1 }
 Result of the comparison operation performed by the Compare() function. More...
 
- Static Public Member Functions inherited from PASN_Object
static PINDEX GetMaximumArraySize ()
 
static void SetMaximumArraySize (PINDEX sz)
 
static PINDEX GetMaximumStringSize ()
 
static void SetMaximumStringSize (PINDEX sz)
 
- Static Public Member Functions inherited from PObject
static const char * Class ()
 Get the name of the class as a C string. More...
 
static Comparison InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size)
 Internal function caled from CompareObjectMemoryDirect() More...
 
- Protected Member Functions inherited from PASN_Choice
 PASN_Choice (unsigned nChoices=0, PBoolean extend=false)
 
 PASN_Choice (unsigned tag, TagClass tagClass, unsigned nChoices, PBoolean extend)
 
 PASN_Choice (unsigned tag, TagClass tagClass, unsigned nChoices, PBoolean extend, const PASN_Names *nameSpec, unsigned namesCnt)
 
 PASN_Choice (const PASN_Choice &other)
 
PBoolean CheckCreate () const
 
- Protected Member Functions inherited from PASN_Object
 PASN_Object (unsigned tag, TagClass tagClass, PBoolean extend=false)
 
- Protected Member Functions inherited from PObject
 PObject ()
 Constructor for PObject, made protected so cannot ever create one on its own. More...
 
- Protected Attributes inherited from PASN_Choice
unsigned numChoices
 
PASN_Objectchoice
 
const PASN_Namesnames
 
unsigned namesCount
 
- Protected Attributes inherited from PASN_Object
PBoolean extendable
 PER extension capability. More...
 
TagClass tagClass
 BER tag class. More...
 
unsigned tag
 ASN object tag. More...
 

Constructor & Destructor Documentation

PRFC1155_ObjectSyntax::PRFC1155_ObjectSyntax ( unsigned  tag = 0,
TagClass  tagClass = UniversalTagClass 
)

Member Function Documentation

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

PBoolean PRFC1155_ObjectSyntax::CreateObject ( )
virtual

Implements PASN_Choice.

PRFC1155_ObjectSyntax::operator const PRFC1155_ApplicationSyntax & ( ) const
PRFC1155_ObjectSyntax::operator const PRFC1155_SimpleSyntax & ( ) const
PRFC1155_ObjectSyntax::operator PRFC1155_ApplicationSyntax & ( )
PRFC1155_ObjectSyntax::operator PRFC1155_SimpleSyntax & ( )

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