00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef __OPAL_H281_H
00027 #define __OPAL_H281_H
00028
00029 #ifdef P_USE_PRAGMA
00030 #pragma interface
00031 #endif
00032
00033 #ifndef _PTLIB_H
00034 #include <ptlib.h>
00035 #endif
00036
00037 #include <h224/h224.h>
00038
00039 class H281_Frame : public H224_Frame
00040 {
00041 PCLASSINFO(H281_Frame, H224_Frame);
00042
00043 public:
00044
00045 enum RequestType {
00046 IllegalRequest = 0x00,
00047 StartAction = 0x01,
00048 ContinueAction = 0x02,
00049 StopAction = 0x03,
00050 SelectVideoSource = 0x04,
00051 VideoSourceSwitched = 0x05,
00052 StoreAsPreset = 0x07,
00053 ActivatePreset = 0x08
00054 };
00055
00056 enum PanDirection {
00057 NoPan = 0x00,
00058 IllegalPan = 0x40,
00059 PanLeft = 0x80,
00060 PanRight = 0xc0,
00061 };
00062
00063 enum TiltDirection {
00064 NoTilt = 0x00,
00065 IllegalTilt = 0x10,
00066 TiltDown = 0x20,
00067 TiltUp = 0x30,
00068 };
00069
00070 enum ZoomDirection {
00071 NoZoom = 0x00,
00072 IllegalZoom = 0x04,
00073 ZoomOut = 0x08,
00074 ZoomIn = 0x0c
00075 };
00076
00077 enum FocusDirection {
00078 NoFocus = 0x00,
00079 IllegalFocus = 0x01,
00080 FocusOut = 0x02,
00081 FocusIn = 0x03
00082 };
00083
00084 enum VideoMode {
00085 MotionVideo = 0x00,
00086 IllegalVideoMode = 0x01,
00087 NormalResolutionStillImage = 0x02,
00088 DoubleResolutionStillImage = 0x03
00089 };
00090
00091 H281_Frame();
00092 ~H281_Frame();
00093
00094 RequestType GetRequestType() const { return (RequestType)(GetClientDataPtr())[0]; }
00095 void SetRequestType(RequestType requestType);
00096
00097
00098
00099 PanDirection GetPanDirection() const;
00100 void SetPanDirection(PanDirection direction);
00101
00102 TiltDirection GetTiltDirection() const;
00103 void SetTiltDirection(TiltDirection direction);
00104
00105 ZoomDirection GetZoomDirection() const;
00106 void SetZoomDirection(ZoomDirection direction);
00107
00108 FocusDirection GetFocusDirection() const;
00109 void SetFocusDirection(FocusDirection direction);
00110
00111
00112 BYTE GetTimeout() const;
00113 void SetTimeout(BYTE timeout);
00114
00115
00116 BYTE GetVideoSourceNumber() const;
00117 void SetVideoSourceNumber(BYTE videoSourceNumber);
00118
00119 VideoMode GetVideoMode() const;
00120 void SetVideoMode(VideoMode videoMode);
00121
00122
00123 BYTE GetPresetNumber() const;
00124 void SetPresetNumber(BYTE presetNumber);
00125 };
00126
00127 #endif // __OPAL_H281_H
00128