PTLib
Version 2.10.10
|
Base class for ASN encoding/decoding. More...
#include <asner.h>
Public Member Functions | |
virtual PString | GetTypeAsString () const =0 |
Return a string giving the type of the object. More... | |
PINDEX | GetObjectLength () const |
virtual PINDEX | GetDataLength () const =0 |
virtual PBoolean | IsPrimitive () const |
virtual PBoolean | Decode (PASN_Stream &)=0 |
virtual void | Encode (PASN_Stream &) const =0 |
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) |
![]() | |
virtual | ~PObject () |
virtual PObject * | Clone () const |
Create a copy of the class on the heap. More... | |
virtual PINDEX | HashFunction () const |
This function yields a hash value required by the PDictionary class. More... | |
virtual Comparison | Compare (const PObject &obj) const |
Compare the two objects and return their relative rank. 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 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 void | PrintOn (ostream &strm) const |
Output the contents of the object to the stream. More... | |
virtual void | ReadFrom (istream &strm) |
Input the contents of the object from the stream. More... | |
Static Public Member Functions | |
static PINDEX | GetMaximumArraySize () |
static void | SetMaximumArraySize (PINDEX sz) |
static PINDEX | GetMaximumStringSize () |
static void | SetMaximumStringSize (PINDEX sz) |
![]() | |
static Comparison | InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size) |
Internal function caled from CompareObjectMemoryDirect() More... | |
static const char * | Class () |
Get the name of the class as a C string. More... | |
Protected Member Functions | |
PASN_Object (unsigned tag, TagClass tagClass, PBoolean extend=false) | |
![]() | |
PObject () | |
Constructor for PObject, made protected so cannot ever create one on its own. More... | |
Protected Attributes | |
PBoolean | extendable |
PER extension capability. More... | |
TagClass | tagClass |
BER tag class. More... | |
unsigned | tag |
ASN object tag. More... | |
Base class for ASN encoding/decoding.
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
static |
|
static |
PINDEX PASN_Object::GetObjectLength | ( | ) | const |
|
inline |
References tag.
|
pure virtual |
Return a string giving the type of the object.
Implemented in PASN_Array, PASN_Set, PASN_Sequence, PASN_Choice, PASN_BMPString, PASN_OctetString, PASN_BitString, PASN_ObjectId, PASN_Real, PASN_Enumeration, PASN_Integer, PASN_Boolean, and PASN_Null.
|
inline |
References extendable.
|
inlinevirtual |
Reimplemented in PASN_Array, PASN_Sequence, and PASN_Choice.
|
virtual |
Reimplemented in PASN_BMPString, and PASN_ConstrainedString.
|
virtual |
Reimplemented in PASN_BMPString, and PASN_ConstrainedString.
|
virtual |
Reimplemented in PASN_Array, PASN_ConstrainedString, PASN_OctetString, PASN_BitString, PASN_Integer, and PASN_ConstrainedObject.
Referenced by SetConstraints().
|
inline |
References SetConstraintBounds().
|
inline |
References PartiallyConstrained, and SetConstraintBounds().
|
inline |
References PartiallyConstrained, and SetConstraintBounds().
|
inline |
References PartiallyConstrained, and SetConstraintBounds().
|
inline |
References SetConstraintBounds().
|
inline |
References extendable.
|
static |
|
static |
|
virtual |
Reimplemented in PASN_Choice.
|
protected |
PER extension capability.
Referenced by IsExtendable(), and SetExtendable().
|
protected |
ASN object tag.
Referenced by GetTag().
|
protected |
BER tag class.
Referenced by GetTagClass().