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 BOOL Decode (PASN_Stream &)
virtual void Encode (PASN_Stream &) const
BOOL DecodeBER (PBER_Stream &strm, unsigned len)
void EncodeBER (PBER_Stream &strm) const
BOOL 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

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

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

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

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

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

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

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

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

Reimplemented from PASN_Object.

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

Reimplemented from PASN_Object.

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

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 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.

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

Reimplemented from PASN_Object.

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

Implements PASN_Object.

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

Implements PASN_Object.

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

Implements PASN_Object.

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

void PASN_ConstrainedString::EncodeBER ( PBER_Stream &  strm  )  const

BOOL PASN_ConstrainedString::DecodePER ( PPER_Stream &  strm  ) 

void PASN_ConstrainedString::EncodePER ( PPER_Stream &  strm  )  const


Member Data Documentation

PString PASN_ConstrainedString::value [protected]

PCharArray PASN_ConstrainedString::characterSet [protected]

const char* PASN_ConstrainedString::canonicalSet [protected]

PINDEX PASN_ConstrainedString::canonicalSetSize [protected]

unsigned PASN_ConstrainedString::canonicalSetBits [protected]

unsigned PASN_ConstrainedString::charSetUnalignedBits [protected]

unsigned PASN_ConstrainedString::charSetAlignedBits [protected]


The documentation for this class was generated from the following file:
Generated on Fri Mar 7 06:25:03 2008 for PTLib by  doxygen 1.5.1