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

📄 mochacommon.h

📁 此代码是奥林巴斯相机驱动的例程
💻 H
📖 第 1 页 / 共 2 页
字号:
#ifndef _MOCHACOMMON_H
#define _MOCHACOMMON_H

// ----------------------------------------
typedef enum tagRESPONSE {
	RES_SUCCESS										= 0x00000000,	// 惓忢廔椆

	// 15740僄儔乕
	RES_UNDEFINED									= 0x80042000,
	RES_GENERAL_ERROR								= 0x80042002,	// General Error
	RES_SESSION_NOT_OPEN							= 0x80042003,	// Session Not Open
	RES_INVALID_TRANSACTION_ID						= 0x80042004,	// Invalid TransactionID
	RES_OPERATION_NOT_SUPPORTED						= 0x80042005,	// Operation Not Supported
	RES_PARAMETER_NOT_SUPPORTED						= 0x80042006,	// Parameter Not Supported
	RES_INCOMPLETE_TRANSFER							= 0x80042007,	// Incomplete Transfer
	RES_INVALID_STORAGE_ID							= 0x80042008,	// Invalid StorageID
	RES_INVALID_OBJECTHANDLE						= 0x80042009,	// Invalid ObjectHandle
	RES_PROPERTY_NOT_SUPPORTED						= 0x8004200A,	// DeviceProp Not Supported
	RES_INVALID_OBJECT_FORMAT_CODE					= 0x8004200B,	// Invalid ObjectFormatCode
	RES_STORE_FULL									= 0x8004200C,	// Store Full
	RES_OBJECT_WRITE_PROTECTED						= 0x8004200D,	// Object WriteProtected
	RES_STORE_READ_ONLY								= 0x8004200E,	// Store Read-Only
	RES_ACCESS_DENIED								= 0x8004200F,	// Access Denied
	RES_NO_THUMBNAIL_PRESENT						= 0x80042010,	// No Thumbnail Present
	RES_SELFTEST_FAILED								= 0x80042011,	// SelfTest Failed
	RES_PARTIAL_DELETION							= 0x80042012,	// Partial Deletion
	RES_STORE_NOT_AVAILABLE							= 0x80042013,	// Store Not Available
	RES_SPECIFICATION_BY_FORMAT_UNSUPPORTED			= 0x80042014,	// Specification By Format Unsupported
	RES_NO_VALID_OBJECTINFO							= 0x80042015,	// No Valid ObjectInfo
	RES_INVALID_CODE_FORMAT							= 0x80042016,	// Invalid Code Format
	RES_UNKNOWN_VENDOR_CODE							= 0x80042017,	// Unknown Vendor Code
	RES_CAPTURE_ALREADY_TERMINATED					= 0x80042018,	// Capture Already Terminated
	RES_DEVICE_BUSY									= 0x80042019,	// Device Busy
	RES_INVALID_PARENT_OBJECT						= 0x8004201A,	// Invalid ParentObject
	RES_INVALID_DEVICE_PROP_FORMAT					= 0x8004201B,	// Invalid DeviceProp Format
	RES_INVALID_DEVICE_PROP_VALUE					= 0x8004201C,	// Invalid DeviceProp Value
	RES_INVALID_PARAMETER							= 0x8004201D,	// Invalid Parameter
	RES_SESSION_ALREADY_OPEN						= 0x8004201E,	// Session Already Open
	RES_TRANSACTION_CANCELLED						= 0x8004201F,	// Transaction Cancelled
	RES_SPECIFICATION_OF_DESTINATION_UNSUPPORTED	= 0x80042020,	// Specification of Destination Unsupported

	// Mocha僄儔乕
	RES_MEMORY_FAILURE								= 0x80045001,	// 儊儌儕乕妋曐僄儔乕
	RES_DEVICE_CLOSE_ERROR							= 0x80045004,	// 僨僶僀僗僋儘乕僘幐攕
	RES_DEVICE_BAD_RESPONSE							= 0x80045006,	// 僨僶僀僗墳摎堎忢
	RES_BAD_DEVICE_NO								= 0x80045008,	// 僨僶僀僗斣崋堎忢
	RES_CONNECTION_ERROR							= 0x80045009,	// 僨僶僀僗愙懕妋棫幐攕
	RES_NOT_CONNECTED								= 0x8004500A,	// 僨僶僀僗偲偺愙懕偑妋棫偝傟偰偄側偄
	RES_NOT_INITIALIZE								= 0x8004500B,	// 僀僯僔儍儔僀僘偝傟偰偄側偄
	RES_COMMAND_NOT_SUPPORTED						= 0x8004500D,	// 僐儅儞僪枹僒億乕僩
	RES_MSXML40_NOT_INSTALLED						= 0x80045011,	// MSXML4.0偑僀儞僗僩乕儖偝傟偰偄側偄
	RES_TIMEOUT										= 0x80045012,	// 捠怣僞僀儉傾僂僩
	RES_ACQUIRE_REMAINDER							= 0x80045013,	// 夋憸偺儊僀儞晹暘偑庢摼偝傟偰偄側偄偺偵懠偺僐儅儞僪傪敪峴偟偨
	RES_INVALID_BUFFER								= 0x80045014,	// 僶僢僼傽偑堎忢
	RES_UNDER_COMMAND_PROCESSING					= 0x80045019,	// 僐儅儞僪張棟拞

	RES_CMD_LOAD_ERROR								= 0x80045050,	// 庴怣偟偨僐儅儞僪偑堎忢
	RES_CMD_DATA_ERROR								= 0x80045051,	// 庴怣偟偨僐儅儞僪偺僨乕僞偑堎忢
	RES_CMD_FILENAME_FAILURE						= 0x80045052,	// 庴怣偟偨僐儅儞僪偺柤徧偑堎忢
	RES_CMD_RCVDATA_GET_ERROR						= 0x80045053,	// 僨乕僞偺庴怣偵幐攕
	RES_CMD_MAKE_ERROR								= 0x80045054,	// 僐儅儞僪嶌惉幐攕
	RES_CMD_ANALYSIS_ERROR							= 0x80045055,	// 僐儅儞僪夝愅僄儔乕

	// Driver僄儔乕
	RES_UNCRRSPND									= 0x80048000,	// 僒億乕僩奜偺OS僶乕僕儑儞側偺偱巊梡偱偒側偄
	RES_ALREADY_LIB_OPEN							= 0x80048001,	// ioSOdscLibRec偼婛偵僆乕僾儞偝傟偰偄傞
	RES_NOT_SUPPORT_OS								= 0x80048002,	// 僒億乕僩奜偺OS僶乕僕儑儞
	RES_NOT_ENOUGH_MEMORY							= 0x80048003,	// 儊儌儕偑妋曐偱偒側偄
	RES_CANNOT_CREATE_EVENT							= 0x80048004,	// 僀儀儞僩偑嶌惉偱偒側偄
	RES_CANNOT_CREATE_THREAD						= 0x80048005,	// 僗儗僢僪偑嶌惉偱偒側偄
	RES_CANNOT_CREATE_MAILSLOT						= 0x80048006,	// MailSlot偑嶌惉偱偒側偄
	RES_CANNOT_LOAD_ASPI							= 0x80048007,	// ASPI32偑load偱偒側偄
	RES_ILLEGAL_LIB_REC								= 0x80048008,	// ioSOdscLibRec偑柍岠
	RES_NOT_LIB_OPEN								= 0x80048009,	// ioSOdscLibRec偼僆乕僾儞偝傟偰偄側偄
	RES_ALREADY_DEV_OPEN							= 0x8004800A,	// ioSOdscDeviceRec偼婛偵僆乕僾儞偝傟偰偄傞
	RES_ILLEGAL_DEV_INDEX							= 0x8004800B,	// 僨僶僀僗僀儞僨僢僋僗偑柍岠
	RES_CANNOT_OPEN_DEV								= 0x8004800C,	// 僨僶僀僗偑僆乕僾儞偱偒側偄
	RES_ILLEGAL_DEV_REC								= 0x8004800D,	// ioSOdscDevRec偑柍岠
	RES_NOT_DEV_OPEN								= 0x8004800E,	// ioSOdscDevRec偼僆乕僾儞偝傟偰偄側偄
	RES_CANNOT_DEVICE_CTRL							= 0x8004800F,	// WinNT宯偱SPTI偺DeviceIoControl偑敪峴偱偒側偄
	RES_CANNOT_GET_OVRLPD_RSLT						= 0x80048010,	// WinNT宯偱SPTI偺GetOverlappedResult偑敪峴偱偒側偄
	RES_CHNG_ENM_SCRTY								= 0x80048011,	// 僙僉儏儕僥傿傪偐偄偔偖傞偨傔偺張棟偺幐攕
	RES_CANT_ACSSSRV								= 0x80048012,	// 僒乕價僗偲偺傗傝庢傝晹暘偑偍偐偟偄
	RES_CANT_OPEN_SRV								= 0x80048013,	// 僒乕價僗偑僆乕僾儞偱偒側偄
	RES_CANT_SNDMSG_TO_SRV							= 0x80048014,	// 僒乕價僗偵儊僢僙乕僕偑憲傟側偄
	RES_CANT_RSV_EVENT								= 0x80048015,	// 僀儀儞僩偑庴偗庢傟側偐偭偨
	RES_RETRY_AFTR_EXEC_OF_SRV						= 0x80048016,	// 僒乕價僗偲儔僀僽儔儕偺傗傝庢傝拞側偨傔偪傚偭偲帪娫傪偍偄偰嵞搙儕僩儔僀偡傞偙偲
	RES_CANT_DOUBLE_OPEN_LIB						= 0x80048017,	// 儔僀僽儔儕偺擇廳僆乕僾儞偼偱偒側偄
	RES_DOUBLE_OPEN									= 0x80048018,	// 嬻偺峔憿懱傪梡偄偨擇廳僆乕僾儞乮僄儔乕偩偑堷悢偼曉傞乯
	RES_NOT_ENOUGH_CMMN_MEM							= 0x80048019,	// CMMN梡儊儌儕偑側偄
	RES_DURING_DEV_CLOSE							= 0x80048020,	// 僨僶僀僗僋儘乕僘拞偵僨僶僀僗傪僋儘乕僘偟偨丅

	RES_ERROR_UNKNOWN								= 0x8004FFFF
} eRESPONSE;

// Command type
typedef enum 
{
	OPTYPE_CMD	= 0x00000000,
	OPTYPE_GET	= 0x00010000,
	OPTYPE_SET	= 0x00020000,
	OPTYPE_DESC	= 0x00030000
}OP_TYPE;

// 僐儅儞僪
typedef enum 
{
	C_BATTERY_LEVEL					= 0x5001,	// 僶僢僥儕乕儗儀儖
	C_IMAGE_SIZE					= 0x5003,	// 夋憸僒僀僘
	C_FNUMBER						= 0x5007,	// 峣傝
	C_FOCAL_LENGTH					= 0x5008,	// 徟揰嫍棧
	C_EXPOSURE_METERING_MODE		= 0x500B,	// 應岝儌乕僪
	C_FLASH_MODE					= 0x500C,	// FlashMode
	C_EXPOSURE_PROGRAM_MODE			= 0x500E,	// 業弌僾儘僌儔儉儌乕僪
	C_EXPOSURE_INDEX				= 0x500F,	// ISO姶搙
	C_EXPOSURE_BIAS_COMPENSATION	= 0x5010,	// 業弌曗惓抣
	C_STILL_CAPTURE_MODE			= 0x5013,	// 嶣塭儌乕僪
	C_CONTRAST						= 0x5014,	// 僐儞僩儔僗僩
	C_SHARPNESS						= 0x5015,	// 僔儍乕僾僱僗
	C_BURST_NUMBER					= 0x5018,	// 楢幨枃悢
	C_FOCUS_METERING_MODE			= 0x501C,	// 僼僅乕僇僗曽幃

	C_SET_DATETIME					= 0x9402,	// 僇儊儔偺擔晅傪愝掕偡傞
	C_GET_DATETIME					= 0x9482,	// 僇儊儔偺擔晅傪庢摼偡傞
	C_SET_CAMERA_ID					= 0x9501,	// 僇儊儔ID偺愝掕
	C_GET_CAMERA_ID					= 0x9581,	// 僇儊儔ID偺庢摼

	C_RESOLUTION_MODE				= 0xD102,	// 僇儊儔夋幙
	C_FOCUS_PRIORITY				= 0xD103,	// 僼僅乕僇僗偺桪愭弴埵
	C_DATETIME_FORMAT				= 0xD105,	// 擔晅僨乕僞偺昞帵宍幃
	C_EXPOSURE_BIAS_STEP			= 0xD106,	// 業弌曗惓僗僥僢僾抣
	C_WB_MODE						= 0xD107,	// WB儌乕僪
	C_ONETOUCH_WB					= 0xD108,	// OneTouchWB
	C_MANUAL_WB						= 0xD109,	// ManualWB
	C_MANUAL_WB_BIAS				= 0xD10A,	// ManualWB偺曗惓抣
	C_EXPOSURE_TIME_EX				= 0xD10D,	// 僔儍僢僞乕僗僺乕僪
	C_BULB_MODE						= 0xD10E,	// 僶儖僽儌乕僪
	C_ANTI_MIRROR_MODE				= 0xD10F,	// 掅怳摦儌乕僪
	C_AEBKT_FRAME					= 0xD110,	// AEBKT Frame
	C_AEBKT_STEP					= 0xD111,	// AEBKT Step
	C_WBBKT_FRAME					= 0xD112,	// WBBKT Frame
	C_WBBKT_RANGE					= 0xD113,	// WBBKT Range
	C_FLASH_BIAS_COMPENSATION		= 0xD11A,	// 挷岝曗惓抣
	C_MANUAL_FOCUS_MODE				= 0xD11B,	// 儅僯儏傾儖僼僅乕僇僗儌乕僪
	C_RAW_SAVE_MODE					= 0xD11D,	// +Raw 曐懚儌乕僪
	C_AUX_LIGHT_MODE				= 0xD11E,	// AF曗彆岝ON/OFF
	C_LENSSINK_MODE					= 0xD11F,	// PW OFF帪偺捑摲儌乕僪
	C_BEEP_STATUS					= 0xD120,	// BEEP壒ON/OFF
	C_COLOR_SPACE					= 0xD122,	// 怓嬻娫
	C_COLOR_MATCHING				= 0xD123,	// 怓崌偄
	C_SATURATION					= 0xD124,	// 嵤搙
	C_NOISE_REDUCTION_PATTERN		= 0xD126,	// 僷僞乕儞僲僀僘偺寉尭
	C_NOISE_REDUCTION_RANDOM		= 0xD127,	// 儔儞僟儉僲僀僘偺寉尭
	C_SHADING_MODE					= 0xD129,	// 廃曈岝検曗惓
	C_ISO_BOOST_MODE				= 0xD12A,	// ISO偺憹姶儌乕僪
	C_LANGUAGE						= 0xD12E,	// 巊梡尵岅
	C_RECVIEW_MODE					= 0xD130,	// RECVIEW儌乕僪
	C_SLEEP_TIME					= 0xD131,	// SLEEP帪娫
	C_AELAFL_MODE					= 0xD135,	// AE Lock/AF Lock
	C_AELBTN_STATUS					= 0xD136,	// AELAFL儃僞儞忬懺
	C_COMPRESSION_SETTING_EX		= 0xD137,	// 夋憸偺埑弅棪

} VODKA_COMMAND;	

// Command
typedef enum 
{
	OP_GET_BATTERY_LEVEL				= OPTYPE_GET	+ C_BATTERY_LEVEL,				// 
	OP_DESC_BATTERY_LEVEL				= OPTYPE_DESC	+ C_BATTERY_LEVEL,				// 

	OP_GET_IMAGE_SIZE					= OPTYPE_GET	+ C_IMAGE_SIZE,					// 
	OP_SET_IMAGE_SIZE					= OPTYPE_SET	+ C_IMAGE_SIZE,					// 
	OP_DESC_IMAGE_SIZE					= OPTYPE_DESC	+ C_IMAGE_SIZE,					// 
	
	OP_GET_FNUMBER						= OPTYPE_GET	+ C_FNUMBER,					// 
	OP_SET_FNUMBER						= OPTYPE_SET	+ C_FNUMBER,					// 
	OP_DESC_FNUMBER						= OPTYPE_DESC	+ C_FNUMBER,					// 
	
	OP_GET_FOCAL_LENGTH					= OPTYPE_GET	+ C_FOCAL_LENGTH,				// 
	OP_DESC_FOCAL_LENGTH				= OPTYPE_DESC	+ C_FOCAL_LENGTH,				// 
	
	OP_GET_EXPOSURE_METERING_MODE		= OPTYPE_GET	+ C_EXPOSURE_METERING_MODE,		// 
	OP_SET_EXPOSURE_METERING_MODE		= OPTYPE_SET	+ C_EXPOSURE_METERING_MODE,		// 
	OP_DESC_EXPOSURE_METERING_MODE		= OPTYPE_DESC	+ C_EXPOSURE_METERING_MODE,		// 
	
	OP_GET_FLASH_MODE					= OPTYPE_GET	+ C_FLASH_MODE,					// 
	OP_SET_FLASH_MODE					= OPTYPE_SET	+ C_FLASH_MODE,					// 
	OP_DESC_FLASH_MODE					= OPTYPE_DESC	+ C_FLASH_MODE,					// 
	
	OP_GET_EXPOSURE_PROGRAM_MODE		= OPTYPE_GET	+ C_EXPOSURE_PROGRAM_MODE,		// 
	OP_SET_EXPOSURE_PROGRAM_MODE		= OPTYPE_SET	+ C_EXPOSURE_PROGRAM_MODE,		// 
	OP_DESC_EXPOSURE_PROGRAM_MODE		= OPTYPE_DESC	+ C_EXPOSURE_PROGRAM_MODE,		// 
	
	OP_GET_EXPOSURE_INDEX				= OPTYPE_GET	+ C_EXPOSURE_INDEX,				// 
	OP_SET_EXPOSURE_INDEX				= OPTYPE_SET	+ C_EXPOSURE_INDEX,				// 
	OP_DESC_EXPOSURE_INDEX				= OPTYPE_DESC	+ C_EXPOSURE_INDEX,				// 
	
	OP_GET_EXPOSURE_BIAS_COMPENSATION	= OPTYPE_GET	+ C_EXPOSURE_BIAS_COMPENSATION,	// 
	OP_SET_EXPOSURE_BIAS_COMPENSATION	= OPTYPE_SET	+ C_EXPOSURE_BIAS_COMPENSATION,	// 
	OP_DESC_EXPOSURE_BIAS_COMPENSATION	= OPTYPE_DESC	+ C_EXPOSURE_BIAS_COMPENSATION,	// 
	
	OP_GET_STILL_CAPTURE_MODE			= OPTYPE_GET	+ C_STILL_CAPTURE_MODE,			// 
	OP_SET_STILL_CAPTURE_MODE			= OPTYPE_SET	+ C_STILL_CAPTURE_MODE,			// 
	OP_DESC_STILL_CAPTURE_MODE			= OPTYPE_DESC	+ C_STILL_CAPTURE_MODE,			// 
	
	OP_GET_CONTRAST						= OPTYPE_GET	+ C_CONTRAST,					// 
	OP_SET_CONTRAST						= OPTYPE_SET	+ C_CONTRAST,					// 
	OP_DESC_CONTRAST					= OPTYPE_DESC	+ C_CONTRAST,					// 
	
	OP_GET_SHARPNESS					= OPTYPE_GET	+ C_SHARPNESS,					// 
	OP_SET_SHARPNESS					= OPTYPE_SET	+ C_SHARPNESS,					// 
	OP_DESC_SHARPNESS					= OPTYPE_DESC	+ C_SHARPNESS,					// 
	
	OP_GET_BURST_NUMBER					= OPTYPE_GET	+ C_BURST_NUMBER,				// 
	OP_SET_BURST_NUMBER					= OPTYPE_SET	+ C_BURST_NUMBER,				// 
	OP_DESC_BURST_NUMBER				= OPTYPE_DESC	+ C_BURST_NUMBER,				// 
	
	OP_GET_FOCUS_METERING_MODE			= OPTYPE_GET	+ C_FOCUS_METERING_MODE,		// 
	OP_SET_FOCUS_METERING_MODE			= OPTYPE_SET	+ C_FOCUS_METERING_MODE,		// 
	OP_DESC_FOCUS_METERING_MODE			= OPTYPE_DESC	+ C_FOCUS_METERING_MODE,		// 

	OP_SET_DATETIME						= OPTYPE_CMD	+ C_SET_DATETIME,				// 
	OP_GET_DATETIME						= OPTYPE_CMD	+ C_GET_DATETIME,				// 
	
	OP_SET_CAMERA_ID					= OPTYPE_CMD	+ C_SET_CAMERA_ID,				// 
	OP_GET_CAMERA_ID					= OPTYPE_CMD	+ C_GET_CAMERA_ID,				// 

	OP_GET_RESOLUTION_MODE				= OPTYPE_GET	+ C_RESOLUTION_MODE,			// 
	OP_SET_RESOLUTION_MODE				= OPTYPE_SET	+ C_RESOLUTION_MODE,			// 
	OP_DESC_RESOLUTION_MODE				= OPTYPE_DESC	+ C_RESOLUTION_MODE,			// 
	
	OP_GET_FOCUS_PRIORITY				= OPTYPE_GET	+ C_FOCUS_PRIORITY,				// 
	OP_SET_FOCUS_PRIORITY				= OPTYPE_SET	+ C_FOCUS_PRIORITY,				// 
	OP_DESC_FOCUS_PRIORITY				= OPTYPE_DESC	+ C_FOCUS_PRIORITY,				// 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -