⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 camfun.h

📁 CAM-TOOL 是高效率高质量的模具制造的最好CAM解决方案。在当今的 Windows 操作环境里
💻 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 + -