00001 #ifndef PV_2WAY_H324M_TYPES_H_INCLUDED 00002 #define PV_2WAY_H324M_TYPES_H_INCLUDED 00003 00004 #ifndef PV_2WAY_BASIC_TYPES_H_INCLUDED 00005 #include "pv_2way_basic_types.h" 00006 #endif 00007 00008 // MACROS 00010 #define PV_2WAY_MAX_USER_INPUT_FORMATS 4 00011 00012 #define PV_2WAY_MAX_SKEW_MS 1000 00013 00019 typedef enum TPVPostDisconnectOption 00020 { 00021 EDisconnectLine, 00022 EAnalogueTelephony 00023 } PV2WayPostDisconnectOption; 00024 00025 00030 typedef enum TPVUserInputType 00031 { 00032 EAlphanumeric = 0, 00033 EDtmf, 00034 } PV2WayUserInputType; 00035 00044 class PV2Way324InitInfo : public PV2WayInitInfo 00045 { 00046 public: 00055 virtual void GetInitInfoClassName(OSCL_wString &aClassName) 00056 { 00057 aClassName = _STRLIT_WCHAR("CPV2Way324InitInfo"); 00058 } 00059 PV2Way324InitInfo() : PV2WayInitInfo(), iMultiplexingDelayMs(0) {}; 00060 virtual ~PV2Way324InitInfo() {}; 00061 00065 uint16 iMultiplexingDelayMs; 00066 }; 00067 00068 00076 class PV2Way324ConnectOptions : public PV2WayConnectOptions 00077 { 00078 public: 00085 PV2Way324ConnectOptions(uint32 aDisconnectTimeoutInterval) 00086 : iDisconnectTimeoutInterval(aDisconnectTimeoutInterval) {} 00087 00088 PV2Way324ConnectOptions() : PV2WayConnectOptions(), iDisconnectTimeoutInterval(0) {}; 00089 virtual ~PV2Way324ConnectOptions() {}; 00090 00099 virtual void GetConnectInfoClassName(OSCL_wString &aClassName) 00100 { 00101 aClassName = _STRLIT_WCHAR("PV2Way324ConnectOptions"); 00102 } 00103 00107 uint32 iDisconnectTimeoutInterval; 00108 }; 00109 00116 class PVH223AlConfig 00117 { 00118 public: 00119 enum PVH223AlIndex 00120 { 00121 PVH223_AL1 = 1, 00122 PVH223_AL2 = 2, 00123 PVH223_AL3 = 4 00124 }; 00125 virtual PVH223AlIndex IsA() const = 0; 00126 }; 00127 00128 00135 class PVH223Al1Config : public PVH223AlConfig 00136 { 00137 public: 00138 PVH223AlIndex IsA()const 00139 { 00140 return PVH223_AL1; 00141 } 00142 00143 bool iFramed; 00144 }; 00145 00152 class PVH223Al2Config : public PVH223AlConfig 00153 { 00154 public: 00155 PVH223AlIndex IsA()const 00156 { 00157 return PVH223_AL2; 00158 } 00159 00160 bool iUseSequenceNumbers; 00161 }; 00162 00169 class PVH223Al3Config : public PVH223AlConfig 00170 { 00171 public: 00172 PVH223AlIndex IsA()const 00173 { 00174 return PVH223_AL3; 00175 } 00176 00177 uint32 iControlFieldOctets; 00178 uint32 iSendBufferSize; 00179 }; 00180 #endif