//
// cisco.cxx
//
// Code automatically generated by asnparse.
//
#ifdef P_USE_PRAGMA
#pragma implementation "cisco.h"
#endif
#include <ptlib.h>
#include "cisco.h"
#define new PNEW
#if ! H323_DISABLE_CISCO
//
// ArrayOf_AliasAddress
//
Cisco_ArrayOf_AliasAddress::Cisco_ArrayOf_AliasAddress(unsigned tag, PASN_Object::TagClass tagClass)
: PASN_Array(tag, tagClass)
{
}
PASN_Object * Cisco_ArrayOf_AliasAddress::CreateObject() const
{
return new H225_AliasAddress;
}
H225_AliasAddress & Cisco_ArrayOf_AliasAddress::operator[](PINDEX i) const
{
return (H225_AliasAddress &)array[i];
}
PObject * Cisco_ArrayOf_AliasAddress::Clone() const
{
#ifndef PASN_LEANANDMEAN
PAssert(IsClass(Cisco_ArrayOf_AliasAddress::Class()), PInvalidCast);
#endif
return new Cisco_ArrayOf_AliasAddress(*this);
}
//
// ARQnonStandardInfo
//
Cisco_ARQnonStandardInfo::Cisco_ARQnonStandardInfo(unsigned tag, PASN_Object::TagClass tagClass)
: PASN_Sequence(tag, tagClass, 0, TRUE, 5)
{
m_redirectIEinfo.SetConstraints(PASN_Object::FixedConstraint, 0, 255);
m_callingOctet3a.SetConstraints(PASN_Object::FixedConstraint, 0, 255);
m_displayInformationElement.SetConstraints(PASN_Object::FixedConstraint, 1, 128);
m_interfaceSpecificBillingId.SetConstraints(PASN_Object::FixedConstraint, 1, 128);
m_interfaceDescription.SetConstraints(PASN_Object::FixedConstraint, 1, 128);
}
#ifndef PASN_NOPRINTON
void Cisco_ARQnonStandardInfo::PrintOn(ostream & strm) const
{
int indent = strm.precision() + 2;
strm << "{\n";
strm << setw(indent+14) << "sourceAlias = " << setprecision(indent) << m_sourceAlias << '\n';
strm << setw(indent+17) << "sourceExtAlias = " << setprecision(indent) << m_sourceExtAlias << '\n';
if (HasOptionalField(e_redirectIEinfo))
strm << setw(indent+17) << "redirectIEinfo = " << setprecision(indent) << m_redirectIEinfo << '\n';
if (HasOptionalField(e_callingOctet3a))
strm << setw(indent+17) << "callingOctet3a = " << setprecision(indent) << m_callingOctet3a << '\n';
if (HasOptionalField(e_displayInformationElement))
strm << setw(indent+28) << "displayInformationElement = " << setprecision(indent) << m_displayInformationElement << '\n';
if (HasOptionalField(e_interfaceSpecificBillingId))
strm << setw(indent+29) << "interfaceSpecificBillingId = " << setprecision(indent) << m_interfaceSpecificBillingId << '\n';
if (HasOptionalField(e_interfaceDescription))
strm << setw(indent+23) << "interfaceDescription = " << setprecision(indent) << m_interfaceDescription << '\n';
strm << setw(indent-1) << "}";
}
#endif
PObject::Comparison Cisco_ARQnonStandardInfo::Compare(const PObject & obj) const
{
#ifndef PASN_LEANANDMEAN
PAssert(PIsDescendant(&obj, Cisco_ARQnonStandardInfo), PInvalidCast);
#endif
const Cisco_ARQnonStandardInfo & other = (const Cisco_ARQnonStandardInfo &)obj;
Comparison result;
if ((result = m_sourceAlias.Compare(other.m_sourceAlias)) != EqualTo)
return result;
if ((result = m_sourceExtAlias.Compare(other.m_sourceExtAlias)) != EqualTo)
return result;
return PASN_Sequence::Compare(other);
}
PINDEX Cisco_ARQnonStandardInfo::GetDataLength() const
{
PINDEX length = 0;
length += m_sourceAlias.GetObjectLength();
length += m_sourceExtAlias.GetObjectLength();
return length;
}
BOOL Cisco_ARQnonStandardInfo::Decode(PASN_Stream & strm)
{
if (!PreambleDecode(strm))
return FALSE;
if (!m_sourceAlias.Decode(strm))
return FALSE;
if (!m_sourceExtAlias.Decode(strm))
return FALSE;
if (!KnownExtensionDecode(strm, e_redirectIEinfo, m_redirectIEinfo))
return FALSE;
if (!KnownExtensionDecode(strm, e_callingOctet3a, m_callingOctet3a))
return FALSE;
if (!KnownExtensionDecode(strm, e_displayInformationElement, m_displayInformationElement))
return FALSE;
if (!KnownExtensionDecode(strm, e_interfaceSpecificBillingId, m_interfaceSpecificBillingId))
return FALSE;
if (!KnownExtensionDecode(strm, e_interfaceDescription, m_interfaceDescription))
return FALSE;
return UnknownExtensionsDecode(strm);
}
void Cisco_ARQnonStandardInfo::Encode(PASN_Stream & strm) const
{
PreambleEncode(strm);
m_sourceAlias.Encode(strm);
m_sourceExtAlias.Encode(strm);
KnownExtensionEncode(strm, e_redirectIEinfo, m_redirectIEinfo);
KnownExtensionEncode(strm, e_callingOctet3a, m_callingOctet3a);
KnownExtensionEncode(strm, e_displayInformationElement, m_displayInformationElement);
KnownExtensionEncode(strm, e_interfaceSpecificBillingId, m_interfaceSpecificBillingId);
KnownExtensionEncode(strm, e_interfaceDescription, m_interfaceDescription);
UnknownExtensionsEncode(strm);
}
PObject * Cisco_ARQnonStandardInfo::Clone() const
{
#ifndef PASN_LEANANDMEAN
PAssert(IsClass(Cisco_ARQnonStandardInfo::Class()), PInvalidCast);
#endif
return new Cisco_ARQnonStandardInfo(*this);
}
//
// LRQnonStandardInfo
//
Cisco_LRQnonStandardInfo::Cisco_LRQnonStandardInfo(unsigned tag, PASN_Object::TagClass tagClass)
: PASN_Sequence(tag, tagClass, 0, TRUE, 5)
{
m_ttl.SetConstraints(PASN_Object::FixedConstraint, 1, 255);
m_redirectIEinfo.SetConstraints(PASN_Object::FixedConstraint, 0, 255);
m_callingOctet3a.SetConstraints(PASN_Object::FixedConstraint, 0, 255);
m_displayInformationElement.SetConstraints(PASN_Object::FixedConstraint, 1, 128);
}
#ifndef PASN_NOPRINTON
void Cisco_LRQnonStandardInfo::PrintOn(ostream & strm) const
{
int indent = strm.precision() + 2;
strm << "{\n";
strm << setw(indent+6) << "ttl = " << setprecision(indent) << m_ttl << '\n';
if (HasOptionalField(e_callIdentifier))
strm << setw(indent+17) << "callIdentifier = " << setprecision(indent) << m_callIdentifier << '\n';
if (HasOptionalField(e_redirectIEinfo))
strm << setw(indent+17) << "redirectIEinfo = " << setprecision(indent) << m_redirectIEinfo << '\n';
if (HasOptionalField(e_callingOctet3a))
strm << setw(indent+17) << "callingOctet3a = " << setprecision(indent) << m_callingOctet3a << '\n';
if (HasOptionalField(e_gatewaySrcInfo))
strm << setw(indent+17) << "gatewaySrcInfo = " << setprecision(indent) << m_gatewaySrcInfo << '\n';
if (HasOptionalField(e_displayInformationElement))
strm << setw(indent+28) << "displayInformationElement = " << setprecision(indent) << m_displayInformationElement << '\n';
strm << setw(indent-1) << "}";
}
#endif
PObject::Comparison Cisco_LRQnonStandardInfo::Compare(const PObject & obj) const
{
#ifndef PASN_LEANANDMEAN
PAssert(PIsDescendant(&obj, Cisco_LRQnonStandardInfo), PInvalidCast);
#endif
const Cisco_LRQnonStandardInfo & other = (const Cisco_LRQnonStandardInfo &)obj;
Comparison result;
if ((result = m_ttl.Compare(other.m_ttl)) != EqualTo)
return result;
return PASN_Sequence::Compare(other);
}
PINDEX Cisco_LRQnonStandardInfo::GetDataLength() const
{
PINDEX length = 0;
length += m_ttl.GetObjectLength();
return length;
}
BOOL Cisco_LRQnonStandardInfo::Decode(PASN_Stream & strm)
{
if (!PreambleDecode(strm))
return FALSE;
if (!m_ttl.Decode(strm))
return FALSE;
if (!KnownExtensionDecode(strm, e_callIdentifier, m_callIdentifier))
return FALSE;
if (!KnownExtensionDecode(strm, e_redirectIEinfo, m_redirectIEinfo))
return FALSE;
if (!KnownExtensionDecode(strm, e_callingOctet3a, m_callingOctet3a))
return FALSE;
if (!KnownExtensionDecode(strm, e_gatewaySrcInfo, m_gatewaySrcInfo))
return FALSE;
if (!KnownExtensionDecode(strm, e_displayInformationElement, m_displayInformationElement))
return FALSE;
return UnknownExtensionsDecode(strm);
}
void Cisco_LRQnonStandardInfo::Encode(PASN_Stream & strm) const
{
PreambleEncode(strm);
m_ttl.Encode(strm);
KnownExtensionEncode(strm, e_callIdentifier, m_callIdentifier);
KnownExtensionEncode(strm, e_redirectIEinfo, m_redirectIEinfo);
KnownExtensionEncode(strm, e_callingOctet3a, m_callingOctet3a);
KnownExtensionEncode(strm, e_gatewaySrcInfo, m_gatewaySrcInfo);
KnownExtensionEncode(strm, e_displayInformationElement, m_displayInformationElement);
UnknownExtensionsEncode(strm);
}
PObject * Cisco_LRQnonStandardInfo::Clone() const
{
#ifndef PASN_LEANANDMEAN
PAssert(IsClass(Cisco_LRQnonStandardInfo::Class()), PInvalidCast);
#endif
return new Cisco_LRQnonStandardInfo(*this);
}
#endif // if ! H323_DISABLE_CISCO
// End of cisco.cxx
syntax highlighted by Code2HTML, v. 0.9.1