PTLib  Version 2.14.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PASNIPAddress Class Reference

A descendant of PASNObject which is an IP address type. More...

#include <pasn.h>

Inheritance diagram for PASNIPAddress:
Collaboration diagram for PASNIPAddress:

Public Member Functions

 PASNIPAddress (const PIPSocket::Address &addr)
 
 PASNIPAddress (const PString &str)
 
 PASNIPAddress (const PBYTEArray &buffer)
 
 PASNIPAddress (const PBYTEArray &buffer, PINDEX &ptr)
 
PASNObject::ASNType GetType () const
 Return a value of type enum ASNType which indicates the type of the object. More...
 
void Encode (PBYTEArray &buffer)
 Virtual function used to encode the object into ASN format. More...
 
PString GetString () const
 Return the value of the object as a PString. More...
 
PString GetTypeAsString () const
 Return a string giving the type of the object. More...
 
PObjectClone () const
 Virtual function used to duplicate objects. More...
 
PIPSocket::Address GetIPAddress () const
 Return the value of the object as an IPAddress. More...
 
- Public Member Functions inherited from PASNString
 PASNString (const PString &str)
 
 PASNString (const BYTE *ptr, int len)
 
 PASNString (const PBYTEArray &buffer, PASNObject::ASNType=String)
 
 PASNString (const PBYTEArray &buffer, PINDEX &ptr, PASNObject::ASNType=String)
 
void PrintOn (ostream &strm) const
 Virtual functions used by the PObject::operator<< function to print the value of the object. More...
 
WORD GetEncodedLength ()
 Virtual function used to get the length of object when encoded into ASN format. More...
 
- Public Member Functions inherited from PASNObject
int GetChoice () const
 Return the descriminator for Choice sequences. More...
 
virtual PASNInt GetInteger () const
 Return the value of the ASN object as a PASNInt. More...
 
virtual PASNUnsigned GetUnsigned () const
 Return the value of the object as a PASNUnsigned. More...
 
virtual const PASNSequenceGetSequence () const
 Return the value of the object as a PString. More...
 
- Public Member Functions inherited from PObject
unsigned GetTraceContextIdentifier () const
 Get PTRACE context identifier. More...
 
void SetTraceContextIdentifier (unsigned id)
 
void GetTraceContextIdentifier (PObject &obj)
 
void GetTraceContextIdentifier (PObject *obj)
 
void SetTraceContextIdentifier (const PObject &obj)
 
void SetTraceContextIdentifier (const PObject *obj)
 
virtual ~PObject ()
 
template<class CLS >
CLS * CloneAs () const
 As for Clone() but converts to specified type. 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...
 
__inline const PObjectPTraceObjectInstance () const
 
virtual void ReadFrom (istream &strm)
 Input the contents of the object from the stream. More...
 

Additional Inherited Members

- Public Types inherited from PASNObject
enum  ASNType {
  Integer, String, ObjectID, Sequence,
  Choice, IPAddress, Counter, Gauge,
  TimeTicks, Opaque, NsapAddress, Counter64,
  UInteger32, Null, Unknown, ASNTypeMax
}
 Value returned by the GetType() function to indicate the type of an ASN object. More...
 
- Static Public Member Functions inherited from PASNObject
static void EncodeASNLength (PBYTEArray &buffer, WORD length)
 Encode an ASN length value. More...
 
static WORD GetASNLengthLength (WORD length)
 Return the length of an encoded ASN length value. More...
 
static PBoolean DecodeASNLength (const PBYTEArray &buffer, PINDEX &ptr, WORD &len)
 Decode an ASN length in the buffer at the given ptr. More...
 
static void EncodeASNSequenceStart (PBYTEArray &buffer, BYTE type, WORD length)
 Encode a sequence header into the buffer at the specified offset. More...
 
static WORD GetASNSequenceStartLength (WORD length)
 Return the encoded length of a sequence if it has the specified length. More...
 
static void EncodeASNHeader (PBYTEArray &buffer, PASNObject::ASNType type, WORD length)
 Encode an ASN object header into the buffer. More...
 
static WORD GetASNHeaderLength (WORD length)
 Return the length of an ASN object header if the object is the specified length. More...
 
static void EncodeASNInteger (PBYTEArray &buffer, PASNInt data, PASNObject::ASNType type)
 
static void EncodeASNUnsigned (PBYTEArray &buffer, PASNUnsigned data, PASNObject::ASNType type)
 
static WORD GetASNIntegerLength (PASNInt data)
 
static WORD GetASNUnsignedLength (PASNUnsigned data)
 
static PBoolean DecodeASNInteger (const PBYTEArray &buffer, PINDEX &ptr, PASNInt &value, ASNType type=Integer)
 
static PBoolean DecodeASNUnsigned (const PBYTEArray &buffer, PINDEX &ptr, PASNUnsigned &value, ASNType type=TimeTicks)
 
- Protected Member Functions inherited from PASNString
PBoolean Decode (const PBYTEArray &buffer, PINDEX &i, PASNObject::ASNType type)
 
void Encode (PBYTEArray &buffer, PASNObject::ASNType type)
 
- Protected Attributes inherited from PASNString
PString value
 
WORD valueLen
 
- Static Protected Attributes inherited from PASNObject
static BYTE ASNTypeToType [ASNTypeMax]
 Table to map enum ASNType values to ASN identifiers. More...
 
- Friends inherited from PObject

Detailed Description

A descendant of PASNObject which is an IP address type.

Constructor & Destructor Documentation

PASNIPAddress::PASNIPAddress ( const PIPSocket::Address addr)
inline

Referenced by Clone().

PASNIPAddress::PASNIPAddress ( const PString str)
PASNIPAddress::PASNIPAddress ( const PBYTEArray buffer)
inline
PASNIPAddress::PASNIPAddress ( const PBYTEArray buffer,
PINDEX &  ptr 
)
inline

Member Function Documentation

PObject* PASNIPAddress::Clone ( ) const
inlinevirtual

Virtual function used to duplicate objects.

Reimplemented from PASNString.

References PASNIPAddress(), and PNEW.

void PASNIPAddress::Encode ( PBYTEArray buffer)
inlinevirtual

Virtual function used to encode the object into ASN format.

Reimplemented from PASNString.

References PASNString::Encode(), and PASNObject::IPAddress.

PIPSocket::Address PASNIPAddress::GetIPAddress ( ) const
virtual

Return the value of the object as an IPAddress.

This function will assert if the object is not a descendant of PASNIPAddress.

Reimplemented from PASNObject.

PString PASNIPAddress::GetString ( ) const
virtual

Return the value of the object as a PString.

This function can be use for all ASN object types

Reimplemented from PASNString.

PASNObject::ASNType PASNIPAddress::GetType ( ) const
inlinevirtual

Return a value of type enum ASNType which indicates the type of the object.

Reimplemented from PASNString.

References PASNObject::IPAddress.

PString PASNIPAddress::GetTypeAsString ( ) const
virtual

Return a string giving the type of the object.

Reimplemented from PASNString.


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