📄 camera.h
字号:
// Camera.h: interface for the CCamera class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_CAMERA_H__E0A68E01_C3E0_11D5_BA01_52544CC01EF9__INCLUDED_)
#define AFX_CAMERA_H__E0A68E01_C3E0_11D5_BA01_52544CC01EF9__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include "CameraInfo.h"
#include "Comm.h"
#include "MySocket.h"
#include "RecvSnapDll.h"
#define MAXCAMERA 16
#define INVALIDCAMERA 16
#define INVALIDCHIMNEY -1
#define TIMER_READYFORRECVVIDEO 7
class CCamera : public CComm
{
private:
DWORD dwPanSpeed;
DWORD dwTiltSpeed;
unsigned char szCommandLine[100];
float fCriticalPoint;
long m_hM7;
unsigned char pnSpeedTable[10]; // Used in JIMU mode
char lpszCommand[20]; // Used in MPEG mode
unsigned char m_JIMU_DecodedBuf[1000000];
unsigned char m_JIMU_EncodedBuf[1000000];
int m_JIMU_iEncodedBufLen;
//---------------------------------------------
// Camera control functions declaration.
bool MPEG_PanLeft();
bool MPEG_StopPanLeft();
bool MPEG_PanRight();
bool MPEG_StopPanRight();
bool MPEG_TiltUp();
bool MPEG_StopTiltUp();
bool MPEG_TiltDown();
bool MPEG_StopTiltDown();
bool MPEG_ZoomTelephoto();
bool MPEG_StopZoomTelephoto();
bool MPEG_ZoomWide();
bool MPEG_StopZoomWide();
bool MPEG_FocusNear();
bool MPEG_StopFocusNear();
bool MPEG_FocusFar();
bool MPEG_StopFocusFar();
bool MPEG_IrisOpen();
bool MPEG_StopIrisOpen();
bool MPEG_IrisClose();
bool MPEG_StopIrisClose();
bool MPEG_SetPreset(int nNum);
bool MPEG_GotoPreset(int nNum);
bool JIMU_PanLeft();
bool JIMU_StopPanLeft();
bool JIMU_PanRight();
bool JIMU_StopPanRight();
bool JIMU_TiltUp();
bool JIMU_StopTiltUp();
bool JIMU_TiltDown();
bool JIMU_StopTiltDown();
bool JIMU_ZoomTelephoto();
bool JIMU_StopZoomTelephoto();
bool JIMU_ZoomWide();
bool JIMU_StopZoomWide();
bool JIMU_FocusNear();
bool JIMU_StopFocusNear();
bool JIMU_FocusFar();
bool JIMU_StopFocusFar();
bool JIMU_IrisOpen();
bool JIMU_StopIrisOpen();
bool JIMU_IrisClose();
bool JIMU_StopIrisClose();
bool JIMU_SetPreset(int nNum);
bool JIMU_GotoPreset(int nNum);
int CheckSum();
public:
int m_iCurrentChimney; // -1 if invalid
int m_iCurrentCamera; // 16 if invalid
int m_iIllumination; // Value indicates environment illumination.
CMySocket mySocket;
CCameraInfo pCameraList[MAXCAMERA + 1]; // pCameraList[16] serve as a guard
// pCameraList[16].iType == INVALID
CCamera();
bool InitCamera(HWND hWnd);
DWORD GetPanSpeed();
DWORD GetTiltSpeed();
bool SetPanSpeed(DWORD ps);
bool SetTiltSpeed(DWORD ts);
float GetCriticalPoint(){return fCriticalPoint;}
bool SetCriticalPoint(float fCriticalPoint);
bool PanLeft();
bool StopPanLeft();
bool PanRight();
bool StopPanRight();
bool TiltUp();
bool StopTiltUp();
bool TiltDown();
bool StopTiltDown();
bool ZoomTelephoto();
bool StopZoomTelephoto();
bool ZoomWide();
bool StopZoomWide();
bool FocusNear();
bool StopFocusNear();
bool FocusFar();
bool StopFocusFar();
bool IrisOpen();
bool StopIrisOpen();
bool IrisClose();
bool StopIrisClose();
bool SetPreset(int nNum);
bool GotoPreset(int nNum);
int GetNextChimneyID(int);
int GetCurrentChimneyID(int);
int GetNextCameraID();
bool GetChimneyQueue(int nCamID, char* lpszCmnQueue);
bool GetIPAdress(int nCamID, char* lpszIPAdress);
bool SetChimneyQueue(int nCamID, char* lpszCmnQueue);
bool JIMU_MyDial(HWND hJimuMsgHandler, int nCameraID);
bool JIMU_Disconnect();
bool JIMU_DrawFrame(HWND hWnd, unsigned char *lpJimuEncodedBuf, int iWidth, int iHigth);
unsigned char *JIMU_GetEncodedBuf(){return m_JIMU_EncodedBuf;}
int JIMU_GetEncodedBufLen(){return m_JIMU_iEncodedBufLen;}
bool JIMU_GetFrame();
bool MPEG_StartRecvShow(HWND hWnd);
bool MPEG_StopRecvShow();
bool SwitchCamera(HWND hwndMsgHandler, HWND hwndVideoWnd_MPEG, int nCamera);
bool GetCameraInfo(CCameraInfo * pci, int nCam);
bool SetCameraInfo(CCameraInfo * pci, int nCam);
virtual ~CCamera();
};
#endif // !defined(AFX_CAMERA_H__E0A68E01_C3E0_11D5_BA01_52544CC01EF9__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -