PTLib  Version 2.10.4
PASN_BMPString Class Reference

Class for ASN BMP (16 bit) String type. More...

#include <asner.h>

Inheritance diagram for PASN_BMPString:
PASN_ConstrainedObject PASN_Object PObject

List of all members.

Public Member Functions

 PASN_BMPString (const char *str=NULL)
 PASN_BMPString (const PWCharArray &wstr)
 PASN_BMPString (unsigned tag, TagClass tagClass)
 PASN_BMPString (const PASN_BMPString &other)
PASN_BMPStringoperator= (const PASN_BMPString &other)
PASN_BMPStringoperator= (const char *v)
PASN_BMPStringoperator= (const PString &v)
PASN_BMPStringoperator= (const PWCharArray &v)
 operator PString () const
 operator PWCharArray () const
PString GetValue () const
void GetValue (PWCharArray &v) const
void SetValue (const char *v)
void SetValue (const PString &v)
void SetValue (const PWCharArray &v)
void SetValue (const PASN_BMPString &v)
void SetValueRaw (const PWCharArray &v)
void SetValueRaw (const wchar_t *val, PINDEX len)
void SetCharacterSet (ConstraintType ctype, const char *charSet)
void SetCharacterSet (ConstraintType ctype, const PWCharArray &charSet)
void SetCharacterSet (ConstraintType ctype, unsigned firstChar, unsigned lastChar)
virtual Comparison Compare (const PObject &obj) const
 Compare the two objects and return their relative rank.
virtual PObjectClone () const
 Create a copy of the class on the heap.
virtual void PrintOn (ostream &strm) const
 Output the contents of the object to the stream.
virtual PString GetTypeAsString () const
 Return a string giving the type of the object.
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

void Construct ()
PBoolean IsLegalCharacter (WORD ch)

Protected Attributes

PWCharArray value
PWCharArray characterSet
wchar_t firstChar
wchar_t lastChar
unsigned charSetUnalignedBits
unsigned charSetAlignedBits

Detailed Description

Class for ASN BMP (16 bit) String type.


Constructor & Destructor Documentation

PASN_BMPString::PASN_BMPString ( const char *  str = NULL)
PASN_BMPString::PASN_BMPString ( const PWCharArray &  wstr)
PASN_BMPString::PASN_BMPString ( unsigned  tag,
TagClass  tagClass 
)

Member Function Documentation

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

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

void PASN_BMPString::Construct ( ) [protected]
virtual PBoolean PASN_BMPString::Decode ( PASN_Stream ) [virtual]

Implements PASN_Object.

PBoolean PASN_BMPString::DecodeBER ( PBER_Stream &  strm,
unsigned  len 
)
PBoolean PASN_BMPString::DecodePER ( PPER_Stream &  strm)
virtual void PASN_BMPString::Encode ( PASN_Stream ) const [virtual]

Implements PASN_Object.

void PASN_BMPString::EncodeBER ( PBER_Stream &  strm) const
void PASN_BMPString::EncodePER ( PPER_Stream &  strm) const
virtual PINDEX PASN_BMPString::GetDataLength ( ) const [virtual]

Implements PASN_Object.

virtual PString PASN_BMPString::GetTypeAsString ( ) const [virtual]

Return a string giving the type of the object.

Implements PASN_Object.

PString PASN_BMPString::GetValue ( ) const [inline]

References value.

Referenced by operator PString().

void PASN_BMPString::GetValue ( PWCharArray &  v) const [inline]

References value.

PBoolean PASN_BMPString::IsLegalCharacter ( WORD  ch) [protected]
PASN_BMPString::operator PString ( ) const [inline]

References GetValue().

PASN_BMPString::operator PWCharArray ( ) const [inline]

References value.

PASN_BMPString& PASN_BMPString::operator= ( const PASN_BMPString other)

Referenced by SetValue().

PASN_BMPString& PASN_BMPString::operator= ( const char *  v) [inline]

References operator=().

Referenced by operator=().

PASN_BMPString& PASN_BMPString::operator= ( const PString v) [inline]

References PString::AsUCS2(), and operator=().

Referenced by operator=().

PASN_BMPString& PASN_BMPString::operator= ( const PWCharArray &  v)
virtual void PASN_BMPString::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_BMPString::SetCharacterSet ( ConstraintType  ctype,
const char *  charSet 
) [virtual]

Reimplemented from PASN_Object.

void PASN_BMPString::SetCharacterSet ( ConstraintType  ctype,
const PWCharArray &  charSet 
)
void PASN_BMPString::SetCharacterSet ( ConstraintType  ctype,
unsigned  firstChar,
unsigned  lastChar 
) [virtual]

Reimplemented from PASN_Object.

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

References operator=().

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

References PString::AsUCS2(), and operator=().

void PASN_BMPString::SetValue ( const PWCharArray &  v) [inline]

References operator=().

void PASN_BMPString::SetValue ( const PASN_BMPString v) [inline]

References operator=(), and value.

void PASN_BMPString::SetValueRaw ( const PWCharArray &  v) [inline]

References SetValueRaw().

Referenced by SetValueRaw().

void PASN_BMPString::SetValueRaw ( const wchar_t *  val,
PINDEX  len 
)

Member Data Documentation

PWCharArray PASN_BMPString::characterSet [protected]
unsigned PASN_BMPString::charSetAlignedBits [protected]
wchar_t PASN_BMPString::firstChar [protected]
wchar_t PASN_BMPString::lastChar [protected]
PWCharArray PASN_BMPString::value [protected]

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines