Logo Search packages:      
Sourcecode: pwlib version File versions  Download package

Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions

PASN_Choice Class Reference

#include <asner.h>

Inheritance diagram for PASN_Choice:
Inheritance graph
[legend]
Collaboration diagram for PASN_Choice:
Collaboration graph
[legend]

List of all members.

Public Types

enum  ConstraintType { Unconstrained, PartiallyConstrained, FixedConstraint, ExtendableConstraint }
enum  MaximumValueTag { MaximumValue = INT_MAX }
enum  MinimumValueTag { MinimumValue = INT_MIN }
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
}

Public Member Functions

virtual Comparison Compare (const PObject &obj) const
virtual BOOL CreateObject ()=0
virtual BOOL Decode (PASN_Stream &)
virtual BOOL DecodePER (PPER_Stream &)
virtual void Encode (PASN_Stream &) const
virtual void EncodePER (PPER_Stream &) const
virtual PINDEX GetDataLength () const
PASN_ObjectGetObject () const
PINDEX GetObjectLength () const
unsigned GetTag () const
TagClass GetTagClass () const
PString GetTagName () const
virtual PString GetTypeAsString () const
PINDEX GetValueByName (PString name) const
BOOL IsExtendable () const
virtual BOOL IsPrimitive () const
BOOL IsValid () const
 operator const PASN_BitString & () const
 operator const PASN_BMPString & () const
 operator const PASN_Boolean & () const
 operator const PASN_Enumeration & () const
 operator const PASN_GeneralString & () const
 operator const PASN_IA5String & () const
 operator const PASN_Integer & () const
 operator const PASN_Null & () const
 operator const PASN_NumericString & () const
 operator const PASN_ObjectId & () const
 operator const PASN_OctetString & () const
 operator const PASN_PrintableString & () const
 operator const PASN_Real & () const
 operator const PASN_Sequence & () const
 operator const PASN_VisibleString & () const
 operator PASN_BitString & ()
 operator PASN_BMPString & ()
 operator PASN_Boolean & ()
 operator PASN_Enumeration & ()
 operator PASN_GeneralString & ()
 operator PASN_IA5String & ()
 operator PASN_Integer & ()
 operator PASN_Null & ()
 operator PASN_NumericString & ()
 operator PASN_ObjectId & ()
 operator PASN_OctetString & ()
 operator PASN_PrintableString & ()
 operator PASN_Real & ()
 operator PASN_Sequence & ()
 operator PASN_VisibleString & ()
PASN_Choiceoperator= (const PASN_Choice &other)
virtual void PrintOn (ostream &strm) const
virtual void SetCharacterSet (ConstraintType ctype, unsigned firstChar, unsigned lastChar)
virtual void SetCharacterSet (ConstraintType ctype, const char *charSet)
virtual void SetConstraintBounds (ConstraintType type, int lower, unsigned upper)
void SetConstraints (ConstraintType, int lower, MaximumValueTag)
void SetConstraints (ConstraintType type, int lower, unsigned upper)
void SetConstraints (ConstraintType, MinimumValueTag lower, unsigned upper)
void SetConstraints (ConstraintType type, int value)
void SetConstraints (ConstraintType, MinimumValueTag lower, MaximumValueTag upper)
void SetExtendable (BOOL ext=TRUE)
virtual void SetTag (unsigned newTag, TagClass tagClass=DefaultTagClass)
Miscellaneous functions
virtual PObjectClone () const
virtual PINDEX HashFunction () const

Static Public Member Functions

static PINDEX GetMaximumArraySize ()
static PINDEX GetMaximumStringSize ()
static void SetMaximumArraySize (PINDEX sz)
static void SetMaximumStringSize (PINDEX sz)

Protected Member Functions

BOOL CheckCreate () const
 PASN_Choice (unsigned tag, TagClass tagClass, unsigned nChoices, BOOL extend)
 PASN_Choice (const PASN_Choice &other)
 PASN_Choice (unsigned tag, TagClass tagClass, unsigned nChoices, BOOL extend, const PASN_Names *nameSpec, unsigned namesCnt)
 PASN_Choice (unsigned nChoices=0, BOOL extend=FALSE)

Protected Attributes

PASN_Objectchoice
BOOL extendable
 PER extension capability.
const PASN_Namesnames
unsigned namesCount
unsigned numChoices
unsigned tag
 ASN object tag.
TagClass tagClass
 BER tag class.

Private Member Functions

 PCLASSINFO (PASN_Choice, PASN_Object)

Run Time Type functions

virtual const char * GetClass (unsigned=0) const
BOOL IsClass (const char *cls) const
virtual BOOL InternalIsDescendant (const char *clsName) const
static const char * Class ()

Comparison functions

virtual Comparison CompareObjectMemoryDirect (const PObject &obj) const
bool operator== (const PObject &obj) const
bool operator!= (const PObject &obj) const
bool operator< (const PObject &obj) const
bool operator> (const PObject &obj) const
bool operator<= (const PObject &obj) const
bool operator>= (const PObject &obj) const
enum  Comparison { LessThan = -1, EqualTo = 0, GreaterThan = 1 }

I/O functions

virtual void ReadFrom (istream &strm)
ostream & operator<< (ostream &strm, const PObject &obj)
istream & operator>> (istream &strm, PObject &obj)

Detailed Description

Class for ASN Choice type.

Definition at line 829 of file asner.h.


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

Generated by  Doxygen 1.6.0   Back to index