www.pudn.com > openh323-v1_15_1-src.zip > t38.h
// // t38.h // // Code automatically generated by asnparse. // #if ! H323_DISABLE_T38 #ifndef __T38_H #define __T38_H #ifdef P_USE_PRAGMA #pragma interface #endif #include// // Type-of-msg // class T38_Type_of_msg_t30_indicator; class T38_Type_of_msg_data; class T38_Type_of_msg : public PASN_Choice { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_Type_of_msg, PASN_Choice); #endif public: T38_Type_of_msg(unsigned tag = 0, TagClass tagClass = UniversalTagClass); enum Choices { e_t30_indicator, e_data }; #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 operator T38_Type_of_msg_t30_indicator &() const; #else operator T38_Type_of_msg_t30_indicator &(); operator const T38_Type_of_msg_t30_indicator &() const; #endif #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 operator T38_Type_of_msg_data &() const; #else operator T38_Type_of_msg_data &(); operator const T38_Type_of_msg_data &() const; #endif BOOL CreateObject(); PObject * Clone() const; }; // // Data-Field // class T38_Data_Field_subtype; class T38_Data_Field : public PASN_Array { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_Data_Field, PASN_Array); #endif public: T38_Data_Field(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); PASN_Object * CreateObject() const; T38_Data_Field_subtype & operator[](PINDEX i) const; PObject * Clone() const; }; // // PreCorrigendum-Data-Field // class T38_PreCorrigendum_Data_Field_subtype; class T38_PreCorrigendum_Data_Field : public PASN_Array { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_PreCorrigendum_Data_Field, PASN_Array); #endif public: T38_PreCorrigendum_Data_Field(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); PASN_Object * CreateObject() const; T38_PreCorrigendum_Data_Field_subtype & operator[](PINDEX i) const; PObject * Clone() const; }; // // Type-of-msg_t30-indicator // class T38_Type_of_msg_t30_indicator : public PASN_Enumeration { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_Type_of_msg_t30_indicator, PASN_Enumeration); #endif public: T38_Type_of_msg_t30_indicator(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); enum Enumerations { e_no_signal, e_cng, e_ced, e_v21_preamble, e_v27_2400_training, e_v27_4800_training, e_v29_7200_training, e_v29_9600_training, e_v17_7200_short_training, e_v17_7200_long_training, e_v17_9600_short_training, e_v17_9600_long_training, e_v17_12000_short_training, e_v17_12000_long_training, e_v17_14400_short_training, e_v17_14400_long_training }; T38_Type_of_msg_t30_indicator & operator=(unsigned v); PObject * Clone() const; }; // // Type-of-msg_data // class T38_Type_of_msg_data : public PASN_Enumeration { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_Type_of_msg_data, PASN_Enumeration); #endif public: T38_Type_of_msg_data(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); enum Enumerations { e_v21, e_v27_2400, e_v27_4800, e_v29_7200, e_v29_9600, e_v17_7200, e_v17_9600, e_v17_12000, e_v17_14400 }; T38_Type_of_msg_data & operator=(unsigned v); PObject * Clone() const; }; // // UDPTLPacket_error-recovery // class T38_UDPTLPacket_error_recovery_secondary_ifp_packets; class T38_UDPTLPacket_error_recovery_fec_info; class T38_UDPTLPacket_error_recovery : public PASN_Choice { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_UDPTLPacket_error_recovery, PASN_Choice); #endif public: T38_UDPTLPacket_error_recovery(unsigned tag = 0, TagClass tagClass = UniversalTagClass); enum Choices { e_secondary_ifp_packets, e_fec_info }; #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 operator T38_UDPTLPacket_error_recovery_secondary_ifp_packets &() const; #else operator T38_UDPTLPacket_error_recovery_secondary_ifp_packets &(); operator const T38_UDPTLPacket_error_recovery_secondary_ifp_packets &() const; #endif #if defined(__GNUC__) && __GNUC__ <= 2 && __GNUC_MINOR__ < 9 operator T38_UDPTLPacket_error_recovery_fec_info &() const; #else operator T38_UDPTLPacket_error_recovery_fec_info &(); operator const T38_UDPTLPacket_error_recovery_fec_info &() const; #endif BOOL CreateObject(); PObject * Clone() const; }; // // Data-Field_subtype_field-type // class T38_Data_Field_subtype_field_type : public PASN_Enumeration { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_Data_Field_subtype_field_type, PASN_Enumeration); #endif public: T38_Data_Field_subtype_field_type(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); enum Enumerations { e_hdlc_data, e_hdlc_sig_end, e_hdlc_fcs_OK, e_hdlc_fcs_BAD, e_hdlc_fcs_OK_sig_end, e_hdlc_fcs_BAD_sig_end, e_t4_non_ecm_data, e_t4_non_ecm_sig_end }; T38_Data_Field_subtype_field_type & operator=(unsigned v); PObject * Clone() const; }; // // PreCorrigendum-Data-Field_subtype_field-type // class T38_PreCorrigendum_Data_Field_subtype_field_type : public PASN_Enumeration { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_PreCorrigendum_Data_Field_subtype_field_type, PASN_Enumeration); #endif public: T38_PreCorrigendum_Data_Field_subtype_field_type(unsigned tag = UniversalEnumeration, TagClass tagClass = UniversalTagClass); enum Enumerations { e_hdlc_data, e_hdlc_sig_end, e_hdlc_fcs_OK, e_hdlc_fcs_BAD, e_hdlc_fcs_OK_sig_end, e_hdlc_fcs_BAD_sig_end, e_t4_non_ecm_data, e_t4_non_ecm_sig_end }; T38_PreCorrigendum_Data_Field_subtype_field_type & operator=(unsigned v); PObject * Clone() const; }; // // UDPTLPacket_error-recovery_secondary-ifp-packets // class T38_UDPTLPacket_error_recovery_secondary_ifp_packets_subtype; class T38_UDPTLPacket_error_recovery_secondary_ifp_packets : public PASN_Array { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_UDPTLPacket_error_recovery_secondary_ifp_packets, PASN_Array); #endif public: T38_UDPTLPacket_error_recovery_secondary_ifp_packets(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); PASN_Object * CreateObject() const; T38_UDPTLPacket_error_recovery_secondary_ifp_packets_subtype & operator[](PINDEX i) const; PObject * Clone() const; }; // // ArrayOf_PASN_OctetString // class T38_ArrayOf_PASN_OctetString : public PASN_Array { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_ArrayOf_PASN_OctetString, PASN_Array); #endif public: T38_ArrayOf_PASN_OctetString(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); PASN_Object * CreateObject() const; PASN_OctetString & operator[](PINDEX i) const; PObject * Clone() const; }; // // IFPPacket // class T38_IFPPacket : public PASN_Sequence { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_IFPPacket, PASN_Sequence); #endif public: T38_IFPPacket(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); enum OptionalFields { e_data_field }; T38_Type_of_msg m_type_of_msg; T38_Data_Field m_data_field; PINDEX GetDataLength() const; BOOL Decode(PASN_Stream & strm); void Encode(PASN_Stream & strm) const; #ifndef PASN_NOPRINTON void PrintOn(ostream & strm) const; #endif Comparison Compare(const PObject & obj) const; PObject * Clone() const; }; // // PreCorrigendum-IFPPacket // class T38_PreCorrigendum_IFPPacket : public PASN_Sequence { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_PreCorrigendum_IFPPacket, PASN_Sequence); #endif public: T38_PreCorrigendum_IFPPacket(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); enum OptionalFields { e_data_field }; T38_Type_of_msg m_type_of_msg; T38_PreCorrigendum_Data_Field m_data_field; PINDEX GetDataLength() const; BOOL Decode(PASN_Stream & strm); void Encode(PASN_Stream & strm) const; #ifndef PASN_NOPRINTON void PrintOn(ostream & strm) const; #endif Comparison Compare(const PObject & obj) const; PObject * Clone() const; }; // // Data-Field_subtype // class T38_Data_Field_subtype : public PASN_Sequence { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_Data_Field_subtype, PASN_Sequence); #endif public: T38_Data_Field_subtype(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); enum OptionalFields { e_field_data }; T38_Data_Field_subtype_field_type m_field_type; PASN_OctetString m_field_data; PINDEX GetDataLength() const; BOOL Decode(PASN_Stream & strm); void Encode(PASN_Stream & strm) const; #ifndef PASN_NOPRINTON void PrintOn(ostream & strm) const; #endif Comparison Compare(const PObject & obj) const; PObject * Clone() const; }; // // PreCorrigendum-Data-Field_subtype // class T38_PreCorrigendum_Data_Field_subtype : public PASN_Sequence { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_PreCorrigendum_Data_Field_subtype, PASN_Sequence); #endif public: T38_PreCorrigendum_Data_Field_subtype(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); enum OptionalFields { e_field_data }; T38_PreCorrigendum_Data_Field_subtype_field_type m_field_type; PASN_OctetString m_field_data; PINDEX GetDataLength() const; BOOL Decode(PASN_Stream & strm); void Encode(PASN_Stream & strm) const; #ifndef PASN_NOPRINTON void PrintOn(ostream & strm) const; #endif Comparison Compare(const PObject & obj) const; PObject * Clone() const; }; // // UDPTLPacket_primary-ifp-packet // class T38_UDPTLPacket_primary_ifp_packet : public PASN_OctetString { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_UDPTLPacket_primary_ifp_packet, PASN_OctetString); #endif public: T38_UDPTLPacket_primary_ifp_packet(unsigned tag = 0, TagClass tagClass = UniversalTagClass); BOOL DecodeSubType(T38_IFPPacket & obj) { return PASN_OctetString::DecodeSubType(obj); } void EncodeSubType(const T38_IFPPacket & obj) { PASN_OctetString::EncodeSubType(obj); } PObject * Clone() const; }; // // UDPTLPacket_error-recovery_fec-info // class T38_UDPTLPacket_error_recovery_fec_info : public PASN_Sequence { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_UDPTLPacket_error_recovery_fec_info, PASN_Sequence); #endif public: T38_UDPTLPacket_error_recovery_fec_info(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); PASN_Integer m_fec_npackets; T38_ArrayOf_PASN_OctetString m_fec_data; PINDEX GetDataLength() const; BOOL Decode(PASN_Stream & strm); void Encode(PASN_Stream & strm) const; #ifndef PASN_NOPRINTON void PrintOn(ostream & strm) const; #endif Comparison Compare(const PObject & obj) const; PObject * Clone() const; }; // // UDPTLPacket_error-recovery_secondary-ifp-packets_subtype // class T38_UDPTLPacket_error_recovery_secondary_ifp_packets_subtype : public PASN_OctetString { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_UDPTLPacket_error_recovery_secondary_ifp_packets_subtype, PASN_OctetString); #endif public: T38_UDPTLPacket_error_recovery_secondary_ifp_packets_subtype(unsigned tag = 0, TagClass tagClass = UniversalTagClass); BOOL DecodeSubType(T38_IFPPacket & obj) { return PASN_OctetString::DecodeSubType(obj); } void EncodeSubType(const T38_IFPPacket & obj) { PASN_OctetString::EncodeSubType(obj); } PObject * Clone() const; }; // // UDPTLPacket // class T38_UDPTLPacket : public PASN_Sequence { #ifndef PASN_LEANANDMEAN PCLASSINFO(T38_UDPTLPacket, PASN_Sequence); #endif public: T38_UDPTLPacket(unsigned tag = UniversalSequence, TagClass tagClass = UniversalTagClass); PASN_Integer m_seq_number; T38_UDPTLPacket_primary_ifp_packet m_primary_ifp_packet; T38_UDPTLPacket_error_recovery m_error_recovery; PINDEX GetDataLength() const; BOOL Decode(PASN_Stream & strm); void Encode(PASN_Stream & strm) const; #ifndef PASN_NOPRINTON void PrintOn(ostream & strm) const; #endif Comparison Compare(const PObject & obj) const; PObject * Clone() const; }; #endif // __T38_H #endif // if ! H323_DISABLE_T38 // End of t38.h