PASN_ConstrainedString Class Reference

#include <asner.h>

Inheritance diagram for PASN_ConstrainedString:

PASN_ConstrainedObject PASN_Object PObject List of all members.

Public Member Functions

PASN_ConstrainedStringoperator= (const char *str)
PASN_ConstrainedStringoperator= (const PString &str)
 operator const PString & () const
const PStringGetValue () const
void SetValue (const char *v)
void SetValue (const PString &v)
char operator[] (PINDEX idx) const
void SetCharacterSet (ConstraintType ctype, const char *charSet)
void SetCharacterSet (ConstraintType ctype, unsigned firstChar=0, unsigned lastChar=255)
void SetCharacterSet (const char *charSet, PINDEX size, ConstraintType ctype)
virtual Comparison Compare (const PObject &obj) const
virtual void PrintOn (ostream &strm) const
virtual void SetConstraintBounds (ConstraintType type, int lower, unsigned upper)
virtual PINDEX GetDataLength () const
virtual PBoolean Decode (PASN_Stream &)
virtual void Encode (PASN_Stream &) const
PBoolean DecodeBER (PBER_Stream &strm, unsigned len)
void EncodeBER (PBER_Stream &strm) const
PBoolean DecodePER (PPER_Stream &strm)
void EncodePER (PPER_Stream &strm) const

Protected Member Functions

 PASN_ConstrainedString (const char *canonicalSet, PINDEX setSize, unsigned tag, TagClass tagClass)

Protected Attributes

PString value
PCharArray characterSet
const char * canonicalSet
PINDEX canonicalSetSize
unsigned canonicalSetBits
unsigned charSetUnalignedBits
unsigned charSetAlignedBits

Detailed Description

Base class for ASN String types.


Constructor & Destructor Documentation

PASN_ConstrainedString::PASN_ConstrainedString ( const char *  canonicalSet,
PINDEX  setSize,
unsigned  tag,
TagClass  tagClass 
) [protected]


Member Function Documentation

virtual Comparison PASN_ConstrainedString::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.

Returns:
LessThan, EqualTo or GreaterThan according to the relative rank of the objects.

Reimplemented from PObject.

virtual PBoolean PASN_ConstrainedString::Decode ( PASN_Stream  )  [virtual]

Implements PASN_Object.

PBoolean PASN_ConstrainedString::DecodeBER ( PBER_Stream &  strm,
unsigned  len 
)

PBoolean PASN_ConstrainedString::DecodePER ( PPER_Stream &  strm  ) 

virtual void PASN_ConstrainedString::Encode ( PASN_Stream  )  const [virtual]

Implements PASN_Object.

void PASN_ConstrainedString::EncodeBER ( PBER_Stream &  strm  )  const

void PASN_ConstrainedString::EncodePER ( PPER_Stream &  strm  )  const

virtual PINDEX PASN_ConstrainedString::GetDataLength (  )  const [virtual]

Implements PASN_Object.

const PString& PASN_ConstrainedString::GetValue (  )  const [inline]

PASN_ConstrainedString::operator const PString & (  )  const [inline]

PASN_ConstrainedString& PASN_ConstrainedString::operator= ( const PString str  )  [inline]

PASN_ConstrainedString& PASN_ConstrainedString::operator= ( const char *  str  ) 

char PASN_ConstrainedString::operator[] ( PINDEX  idx  )  const [inline]

virtual void PASN_ConstrainedString::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.

void PASN_ConstrainedString::SetCharacterSet ( const char *  charSet,
PINDEX  size,
ConstraintType  ctype 
)

void PASN_ConstrainedString::SetCharacterSet ( ConstraintType  ctype,
unsigned  firstChar = 0,
unsigned  lastChar = 255 
)

void PASN_ConstrainedString::SetCharacterSet ( ConstraintType  ctype,
const char *  charSet 
)

virtual void PASN_ConstrainedString::SetConstraintBounds ( ConstraintType  type,
int  lower,
unsigned  upper 
) [virtual]

Reimplemented from PASN_ConstrainedObject.

void PASN_ConstrainedString::SetValue ( const PString v  )  [inline]

void PASN_ConstrainedString::SetValue ( const char *  v  )  [inline]


Member Data Documentation

const char* PASN_ConstrainedString::canonicalSet [protected]

unsigned PASN_ConstrainedString::canonicalSetBits [protected]

PINDEX PASN_ConstrainedString::canonicalSetSize [protected]

PCharArray PASN_ConstrainedString::characterSet [protected]

unsigned PASN_ConstrainedString::charSetAlignedBits [protected]

unsigned PASN_ConstrainedString::charSetUnalignedBits [protected]

PString PASN_ConstrainedString::value [protected]


The documentation for this class was generated from the following file:
Generated on Thu May 27 01:36:48 2010 for PTLib by  doxygen 1.4.7