📄 camfun.h
字号:
// CamFum.h: interface for the CCamFun class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_CAMFUN_H__8323B4E0_13E4_4514_A239_ED34CB86FBF3__INCLUDED_)
#define AFX_CAMFUN_H__8323B4E0_13E4_4514_A239_ED34CB86FBF3__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#define IMAGE_WIDTH 2048L
#define IMAGE_HEIGHT 1536L
typedef struct {
unsigned short edge;
unsigned short OFno;
unsigned short SFno;
}ZOOM_POS_INFO;
#define START_FNUM_ITEM 2700
#define END_FNUM_ITEM 4900
enum { CALIB_OK = 0, CALIB_BUSY, CALIB_ERROR };
enum { CAP_MANUAL_FLASH_MODE = 0, CAP_FOCUS_MODE, CAP_MANUAL_RESOLUTION, CAP_MANUAL_COMPRESSION,
CAP_MANUAL_WB_MODE, CAP_MANUAL_EXPOSURE_BIAS, CAP_AE_MODE, CAP_SHUTTER_TIME,
CAP_APERTURE, CAP_MANUAL_ISO_SETTING, CAP_MANUAL_R_GAIN,
CAP_MANUAL_G_GAIN, CAP_MANUAL_B_GAIN, CAP_DAYLIGHT_R_GAIN, CAP_DAYLIGHT_G_GAIN,
CAP_DAYLIGHT_B_GAIN, CAP_INTERNAL_FLASH, CAP_NUM_OF_SETUP_MODE };
enum { WB_AUTO = 0, WB_DAYLIGHT, WB_CLOUDY, WB_TUNGSTEN, WB_FLUORESCENT, WB_BLACKWHITE, WB_MANUAL };
enum { RATIO_DAYLIGHT = 0, RATIO_CLOUDY, RATIO_TUNGSTEN, RATIO_FLUORENSCENT };
enum { CMD_ADDR = 0x9100, PARAM0, PARAM1, PARAM2, PARAM3, PARAM4, PARAM5, PARAM6,
OUTPARAM0, OUTPARAM1, OUTPARAM2, OUTPARAM3, OUTPARAM4, OUTPARAM5, OUTPARAM6,
OUTPARAM7, BUSYFLAG = 0x9128 };
extern unsigned short CapImgInfo[];
extern ZOOM_POS_INFO ZPosInfo[];
class CCamFun
{
public:
CCamFun();
virtual ~CCamFun();
unsigned char CameraDirName[17];// = "\\.CDMI1\\003V13 0"; //.\DCIM\100V3310
BOOL Open();
BOOL Close();
void WaitBusy();
void ViewMode();
void IdleMode();
void WaitForMode(unsigned short Mode);
BOOL DownloadFileToBuf(unsigned char *FileBuf, unsigned char *FileName, unsigned long Size);
void CaptureImage();
void LoadCameraDefaultValue();
void SaveCameraDefaultValue();
unsigned short FnoToZPos(unsigned short Fno);
unsigned short GetHceVersion();
unsigned short RemainPics();
unsigned short ZoomAction(unsigned short ZPos);
void TurnLCD(unsigned short sw);
void SetWBValue(unsigned short sel);
void DoFlashCharge(unsigned short sel);
void SetExposureBias(unsigned short bias);
BOOL DeleteLastOne();
unsigned short GetZoomPos();
unsigned short ZPosToFNum(unsigned short Edge, unsigned short Apt_sw);
unsigned long GetCaptureCount();
void SetManualSaturation(unsigned short level);
private:
//RTC function
//For RTC function
typedef struct {
unsigned short Hour;
unsigned short Minute;
unsigned short Sec;
}RTCTIME;
typedef struct {
unsigned short Year;
unsigned short Month;
unsigned short Day;
}RTCDATE;
#define RTC4SEC
#define BASE_YEAR 1001
RTCTIME CurTime;
RTCDATE CurDate;
unsigned long RTCTimeLo;
unsigned short RTCTimeHi;
unsigned char IsLeapYear(unsigned short year);
void RTC2Time();
unsigned long GetTotalDay();
void Time2RTC();
void SetRTCTime();
void GetRTCTime();
public:
void SetCurTimeToRTC();
void GetCurRTC(char *TimeString);
};
#endif // !defined(AFX_CAMFUM_H__8323B4E0_13E4_4514_A239_ED34CB86FBF3__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -