# h4609.h

Go to the documentation of this file.

    00001 //
    00002 // h4609.h
    00003 //
    00004 // Code automatically generated by asnparse.
    00005 //
    00006
    00007 #ifndef __H4609_H
    00008 #define __H4609_H
    00009
    00010 #ifdef P_USE_PRAGMA
    00011 #pragma interface
    00012 #endif
    00013
    00014 #include <opal/buildopts.h>
    00015
    00016 #if OPAL_H460
    00017
    00018 #include <ptclib/asner.h>
    00019
    00020 #include <asn/h225.h>
    00021
    00022
    00023 //
    00024 // EstimatedEnd2EndDelay
    00025 //
    00026
    00027 class H4609_EstimatedEnd2EndDelay : public PASN_Integer
    00028 {
    00029 #ifndef PASN_LEANANDMEAN
    00030     PCLASSINFO(H4609_EstimatedEnd2EndDelay, PASN_Integer);
    00031 #endif
    00032   public:
    00033     H4609_EstimatedEnd2EndDelay(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
    00034
    00035     H4609_EstimatedEnd2EndDelay & operator=(int v);
    00036     H4609_EstimatedEnd2EndDelay & operator=(unsigned v);
    00037     PObject * Clone() const;
    00038 };
    00039
    00040
    00041 //
    00042 // CalculatedJitter
    00043 //
    00044
    00045 class H4609_CalculatedJitter : public PASN_Integer
    00046 {
    00047 #ifndef PASN_LEANANDMEAN
    00048     PCLASSINFO(H4609_CalculatedJitter, PASN_Integer);
    00049 #endif
    00050   public:
    00051     H4609_CalculatedJitter(unsigned tag = UniversalInteger, TagClass tagClass = UniversalTagClass);
    00052
    00053     H4609_CalculatedJitter & operator=(int v);
    00054     H4609_CalculatedJitter & operator=(unsigned v);
    00055     PObject * Clone() const;
    00056 };
    00057
    00058
    00059 //
    00060 // Extension
    00061 //
    00062
    00063 class H4609_Extension : public PASN_Sequence
    00064 {
    00065 #ifndef PASN_LEANANDMEAN
    00066     PCLASSINFO(H4609_Extension, PASN_Sequence);
    00067 #endif
    00068   public:
    00069     H4609_Extension(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
    00070
    00071     enum OptionalFields {
    00072       e_extensionContent
    00073     };
    00074
    00075     H225_GenericIdentifier m_extensionId;
    00076     PASN_OctetString m_extensionContent;
    00077
    00078     PINDEX GetDataLength() const;
    00079     PBoolean Decode(PASN_Stream & strm);
    00080     void Encode(PASN_Stream & strm) const;
    00081 #ifndef PASN_NOPRINTON
    00082     void PrintOn(ostream & strm) const;
    00083 #endif
    00084     Comparison Compare(const PObject & obj) const;
    00085     PObject * Clone() const;
    00086 };
    00087
    00088
    00089 //
    00090 // QosMonitoringReportData
    00091 //
    00092
    00093 class H4609_PeriodicQoSMonReport;
    00094 class H4609_FinalQosMonReport;
    00095 class H4609_InterGKQosMonReport;
    00096
    00097 class H4609_QosMonitoringReportData : public PASN_Choice
    00098 {
    00099 #ifndef PASN_LEANANDMEAN
    00100     PCLASSINFO(H4609_QosMonitoringReportData, PASN_Choice);
    00101 #endif
    00102   public:
    00103     H4609_QosMonitoringReportData(unsigned tag = 0, TagClass tagClass = UniversalTagClass);
    00104
    00105     enum Choices {
    00106       e_periodic,
    00107       e_final,
    00108       e_interGK
    00109     };
    00110
    00111 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
    00112     operator H4609_PeriodicQoSMonReport &() const;
    00113 #else
    00114     operator H4609_PeriodicQoSMonReport &();
    00115     operator const H4609_PeriodicQoSMonReport &() const;
    00116 #endif
    00117 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
    00118     operator H4609_FinalQosMonReport &() const;
    00119 #else
    00120     operator H4609_FinalQosMonReport &();
    00121     operator const H4609_FinalQosMonReport &() const;
    00122 #endif
    00123 #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9
    00124     operator H4609_InterGKQosMonReport &() const;
    00125 #else
    00126     operator H4609_InterGKQosMonReport &();
    00127     operator const H4609_InterGKQosMonReport &() const;
    00128 #endif
    00129
    00130     PBoolean CreateObject();
    00131     PObject * Clone() const;
    00132 };
    00133
    00134
    00135 //
    00136 // RTCPMeasures_mediaSenderMeasures
    00137 //
    00138
    00139 class H4609_RTCPMeasures_mediaSenderMeasures : public PASN_Sequence
    00140 {
    00141 #ifndef PASN_LEANANDMEAN
    00142     PCLASSINFO(H4609_RTCPMeasures_mediaSenderMeasures, PASN_Sequence);
    00143 #endif
    00144   public:
    00145     H4609_RTCPMeasures_mediaSenderMeasures(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
    00146
    00147     enum OptionalFields {
    00148       e_worstEstimatedEnd2EndDelay,
    00149       e_meanEstimatedEnd2EndDelay
    00150     };
    00151
    00152     H4609_EstimatedEnd2EndDelay m_worstEstimatedEnd2EndDelay;
    00153     H4609_EstimatedEnd2EndDelay m_meanEstimatedEnd2EndDelay;
    00154
    00155     PINDEX GetDataLength() const;
    00156     PBoolean Decode(PASN_Stream & strm);
    00157     void Encode(PASN_Stream & strm) const;
    00158 #ifndef PASN_NOPRINTON
    00159     void PrintOn(ostream & strm) const;
    00160 #endif
    00161     Comparison Compare(const PObject & obj) const;
    00162     PObject * Clone() const;
    00163 };
    00164
    00165
    00166 //
    00167 // RTCPMeasures_mediaReceiverMeasures
    00168 //
    00169
    00170 class H4609_RTCPMeasures_mediaReceiverMeasures : public PASN_Sequence
    00171 {
    00172 #ifndef PASN_LEANANDMEAN
    00173     PCLASSINFO(H4609_RTCPMeasures_mediaReceiverMeasures, PASN_Sequence);
    00174 #endif
    00175   public:
    00176     H4609_RTCPMeasures_mediaReceiverMeasures(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
    00177
    00178     enum OptionalFields {
    00179       e_cumulativeNumberOfPacketsLost,
    00180       e_packetLostRate,
    00181       e_worstJitter,
    00182       e_estimatedThroughput,
    00183       e_fractionLostRate,
    00184       e_meanJitter
    00185     };
    00186
    00187     PASN_Integer m_cumulativeNumberOfPacketsLost;
    00188     PASN_Integer m_packetLostRate;
    00189     H4609_CalculatedJitter m_worstJitter;
    00190     H225_BandWidth m_estimatedThroughput;
    00191     PASN_Integer m_fractionLostRate;
    00192     H4609_CalculatedJitter m_meanJitter;
    00193
    00194     PINDEX GetDataLength() const;
    00195     PBoolean Decode(PASN_Stream & strm);
    00196     void Encode(PASN_Stream & strm) const;
    00197 #ifndef PASN_NOPRINTON
    00198     void PrintOn(ostream & strm) const;
    00199 #endif
    00200     Comparison Compare(const PObject & obj) const;
    00201     PObject * Clone() const;
    00202 };
    00203
    00204
    00205 //
    00206 // ArrayOf_Extension
    00207 //
    00208
    00209 class H4609_Extension;
    00210
    00211 class H4609_ArrayOf_Extension : public PASN_Array
    00212 {
    00213 #ifndef PASN_LEANANDMEAN
    00214     PCLASSINFO(H4609_ArrayOf_Extension, PASN_Array);
    00215 #endif
    00216   public:
    00217     H4609_ArrayOf_Extension(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
    00218
    00219     PASN_Object * CreateObject() const;
    00220     H4609_Extension & operator[](PINDEX i) const;
    00221     PObject * Clone() const;
    00222 };
    00223
    00224
    00225 //
    00226 // ArrayOf_RTCPMeasures
    00227 //
    00228
    00229 class H4609_RTCPMeasures;
    00230
    00231 class H4609_ArrayOf_RTCPMeasures : public PASN_Array
    00232 {
    00233 #ifndef PASN_LEANANDMEAN
    00234     PCLASSINFO(H4609_ArrayOf_RTCPMeasures, PASN_Array);
    00235 #endif
    00236   public:
    00237     H4609_ArrayOf_RTCPMeasures(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
    00238
    00239     PASN_Object * CreateObject() const;
    00240     H4609_RTCPMeasures & operator[](PINDEX i) const;
    00241     PObject * Clone() const;
    00242 };
    00243
    00244
    00245 //
    00246 // ArrayOf_PerCallQoSReport
    00247 //
    00248
    00249 class H4609_PerCallQoSReport;
    00250
    00251 class H4609_ArrayOf_PerCallQoSReport : public PASN_Array
    00252 {
    00253 #ifndef PASN_LEANANDMEAN
    00254     PCLASSINFO(H4609_ArrayOf_PerCallQoSReport, PASN_Array);
    00255 #endif
    00256   public:
    00257     H4609_ArrayOf_PerCallQoSReport(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
    00258
    00259     PASN_Object * CreateObject() const;
    00260     H4609_PerCallQoSReport & operator[](PINDEX i) const;
    00261     PObject * Clone() const;
    00262 };
    00263
    00264
    00265 //
    00266 // RTCPMeasures
    00267 //
    00268
    00269 class H4609_RTCPMeasures : public PASN_Sequence
    00270 {
    00271 #ifndef PASN_LEANANDMEAN
    00272     PCLASSINFO(H4609_RTCPMeasures, PASN_Sequence);
    00273 #endif
    00274   public:
    00275     H4609_RTCPMeasures(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
    00276
    00277     enum OptionalFields {
    00278       e_nonStandardData,
    00279       e_mediaSenderMeasures,
    00280       e_mediaReceiverMeasures,
    00281       e_extensions
    00282     };
    00283
    00284     H225_TransportChannelInfo m_rtpAddress;
    00285     H225_TransportChannelInfo m_rtcpAddress;
    00286     PASN_Integer m_sessionId;
    00287     H225_NonStandardParameter m_nonStandardData;
    00288     H4609_RTCPMeasures_mediaSenderMeasures m_mediaSenderMeasures;
    00289     H4609_RTCPMeasures_mediaReceiverMeasures m_mediaReceiverMeasures;
    00290     H4609_ArrayOf_Extension m_extensions;
    00291
    00292     PINDEX GetDataLength() const;
    00293     PBoolean Decode(PASN_Stream & strm);
    00294     void Encode(PASN_Stream & strm) const;
    00295 #ifndef PASN_NOPRINTON
    00296     void PrintOn(ostream & strm) const;
    00297 #endif
    00298     Comparison Compare(const PObject & obj) const;
    00299     PObject * Clone() const;
    00300 };
    00301
    00302
    00303 //
    00304 // PerCallQoSReport
    00305 //
    00306
    00307 class H4609_PerCallQoSReport : public PASN_Sequence
    00308 {
    00309 #ifndef PASN_LEANANDMEAN
    00310     PCLASSINFO(H4609_PerCallQoSReport, PASN_Sequence);
    00311 #endif
    00312   public:
    00313     H4609_PerCallQoSReport(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
    00314
    00315     enum OptionalFields {
    00316       e_nonStandardData,
    00317       e_mediaChannelsQoS,
    00318       e_extensions
    00319     };
    00320
    00321     H225_NonStandardParameter m_nonStandardData;
    00322     H225_CallReferenceValue m_callReferenceValue;
    00323     H225_ConferenceIdentifier m_conferenceID;
    00324     H225_CallIdentifier m_callIdentifier;
    00325     H4609_ArrayOf_RTCPMeasures m_mediaChannelsQoS;
    00326     H4609_ArrayOf_Extension m_extensions;
    00327
    00328     PINDEX GetDataLength() const;
    00329     PBoolean Decode(PASN_Stream & strm);
    00330     void Encode(PASN_Stream & strm) const;
    00331 #ifndef PASN_NOPRINTON
    00332     void PrintOn(ostream & strm) const;
    00333 #endif
    00334     Comparison Compare(const PObject & obj) const;
    00335     PObject * Clone() const;
    00336 };
    00337
    00338
    00339 //
    00340 // PeriodicQoSMonReport
    00341 //
    00342
    00343 class H4609_PeriodicQoSMonReport : public PASN_Sequence
    00344 {
    00345 #ifndef PASN_LEANANDMEAN
    00346     PCLASSINFO(H4609_PeriodicQoSMonReport, PASN_Sequence);
    00347 #endif
    00348   public:
    00349     H4609_PeriodicQoSMonReport(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
    00350
    00351     enum OptionalFields {
    00352       e_extensions
    00353     };
    00354
    00355     H4609_ArrayOf_PerCallQoSReport m_perCallInfo;
    00356     H4609_ArrayOf_Extension m_extensions;
    00357
    00358     PINDEX GetDataLength() const;
    00359     PBoolean Decode(PASN_Stream & strm);
    00360     void Encode(PASN_Stream & strm) const;
    00361 #ifndef PASN_NOPRINTON
    00362     void PrintOn(ostream & strm) const;
    00363 #endif
    00364     Comparison Compare(const PObject & obj) const;
    00365     PObject * Clone() const;
    00366 };
    00367
    00368
    00369 //
    00370 // FinalQosMonReport
    00371 //
    00372
    00373 class H4609_FinalQosMonReport : public PASN_Sequence
    00374 {
    00375 #ifndef PASN_LEANANDMEAN
    00376     PCLASSINFO(H4609_FinalQosMonReport, PASN_Sequence);
    00377 #endif
    00378   public:
    00379     H4609_FinalQosMonReport(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
    00380
    00381     enum OptionalFields {
    00382       e_nonStandardData,
    00383       e_extensions
    00384     };
    00385
    00386     H4609_ArrayOf_RTCPMeasures m_mediaInfo;
    00387     H225_NonStandardParameter m_nonStandardData;
    00388     H4609_ArrayOf_Extension m_extensions;
    00389
    00390     PINDEX GetDataLength() const;
    00391     PBoolean Decode(PASN_Stream & strm);
    00392     void Encode(PASN_Stream & strm) const;
    00393 #ifndef PASN_NOPRINTON
    00394     void PrintOn(ostream & strm) const;
    00395 #endif
    00396     Comparison Compare(const PObject & obj) const;
    00397     PObject * Clone() const;
    00398 };
    00399
    00400
    00401 //
    00402 // InterGKQosMonReport
    00403 //
    00404
    00405 class H4609_InterGKQosMonReport : public PASN_Sequence
    00406 {
    00407 #ifndef PASN_LEANANDMEAN
    00408     PCLASSINFO(H4609_InterGKQosMonReport, PASN_Sequence);
    00409 #endif
    00410   public:
    00411     H4609_InterGKQosMonReport(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass);
    00412
    00413     enum OptionalFields {
    00414       e_nonStandardData,
    00415       e_extensions
    00416     };
    00417
    00418     H4609_ArrayOf_RTCPMeasures m_mediaInfo;
    00419     H225_NonStandardParameter m_nonStandardData;
    00420     H4609_ArrayOf_Extension m_extensions;
    00421
    00422     PINDEX GetDataLength() const;
    00423     PBoolean Decode(PASN_Stream & strm);
    00424     void Encode(PASN_Stream & strm) const;
    00425 #ifndef PASN_NOPRINTON
    00426     void PrintOn(ostream & strm) const;
    00427 #endif
    00428     Comparison Compare(const PObject & obj) const;
    00429     PObject * Clone() const;
    00430 };
    00431
    00432
    00433 #endif // OPAL_H460
    00434
    00435 #endif // __H4609_H
    00436
    00437
    00438 // End of h4609.h