📄 pelco_p.hxx
字号:
#ifndef _PELCO_D_H_
#define _PELCO_D_H_
#include "COM.hxx"
#include "PTZ.hxx"
#include "Camera.hxx"
class CPelco_p:public CPTZ,public CCamera
{
private:
byte STX;
byte ETX;
byte CameraOn;
public:
CCOM *com;
public:
CPelco_p();
~CPelco_p();
bool Init();
//设置预置位PreSet,清除预置位PreClear ,转到预置位PreGoto
//preset: 01-FF
virtual void Preset(void *proto ,unsigned int deviceAddress, byte preset, byte action);
//翻转180
virtual void Flip(void *proto,unsigned int deviceAddress);
//转到零点pan
virtual void ZeroPanPosition(void *proto ,unsigned int deviceAddress);
//设置辅助的AuxSet 清除辅助的AuxClear
//auxiliaryID:01-08
virtual void SetAuxiliary(void *proto,unsigned int deviceAddress,byte auxiliaryID, byte action);
//远程重新安排
virtual void RemoteReset(void *proto ,unsigned int deviceAddress);
//设置开始区域ActStart,设置结束区域ActStop
//zone:01-08
virtual void Zone(void *proto ,unsigned int deviceAddress,byte zone, byte action);
//清除屏幕
virtual void ClearScreen(void *proto,unsigned int deviceAddress);
//警报信息
virtual void AlarmAcknowledge(void *proto ,unsigned int deviceAddress, unsigned int alarmID);
//区域浏览开ActStart,区域浏览关ActStop
virtual void ZoneScan(void *proto,unsigned int deviceAddress,byte action);
//设置开始模式PatternStart设置停止PatternStop模式运行模式PatternRun
virtual void Pattern(void *proto ,unsigned int deviceAddress,byte action);
//设置变倍速度
//speed:00-03
virtual void SetZoomLensSpeed(void *proto ,unsigned int deviceAddress, unsigned int speed);
//设置聚焦速度
//speed:00-03
virtual void SetFocusLensSpeed(void *proto ,unsigned int deviceAddress, byte speed);
//摄象机打开,关闭 on/off
virtual void CameraSwitch(void *proto ,unsigned int deviceAddress,byte action);
//光圈打开,关闭 pIrisOpen/pIrisClose
virtual void CameraIrisSwitch(void *proto ,unsigned int deviceAddress,byte action);
//焦距拉近,拉远 pFocusFar/pFocusNear
virtual void CameraFocus(void *proto ,unsigned int deviceAddress,byte action);
//视野变宽,变窄pZoomTele/pZoomWide
virtual void CameraZoom(void *proto ,unsigned int deviceAddress,byte action);
//云台垂直上下移动pTiltUp/pTiltDown pTiltSpeedMin/pTiltSpeedMax
virtual void CameraTilt(void *proto ,unsigned int deviceAddress,byte action, unsigned int speed);
//云台水平左右移动pPanLeft/pPanRight pPanSpeedMin/pPanSpeedMax
virtual void CameraPan(void *proto ,unsigned int deviceAddress,byte action, unsigned int speed);
//云台左上,左下,右上,右下移动
virtual void CameraPanTilt(void *proto ,unsigned int deviceAddress,byte panAction, unsigned int panSpeed, byte tiltAction, unsigned int tiltSpeed);
//云台停止移动
virtual void CameraStop(void *proto ,unsigned int deviceAddress);
//自动扫描 ActStart/ActStop
virtual void CameraScan(void *proto ,unsigned int deviceAddress,byte action);
//灯光打开/关闭
virtual void LightSwitch(void *proto ,unsigned int deviceAddress,byte action);
//打开串口
void OpenCOM();
//设置串口波特率
//speed{38400,19200,9600,4800,2400,1200,300,38400,19200,9600,4800,2400,1200,300}
void set_speed(int speed);
//设置串口数据位(7/8),停止位(1/2)和效验位(N,E,O,S)
bool set_Parity(int databits,int stopbits,int parity);
//发送数据
int SendData(void *buffer,int Len);
//读取数据
int ReadData(void *buffer,int Len);
//关闭串口
void CloseCOM();
//获取信息
void GetMessage(Pelco_p_Stru *pp,unsigned int address, byte data1, byte data2, byte data3, byte data4);
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -