📄 sanyoapi.h
字号:
/******************************************************************************/
/******************************************************************************/
/* */
/* */
/* Communicfation(Host Interface Support) Library */
/* */
/* Copyright (C) 1994-2002 */
/* SANYO Electric Co., Ltd. */
/* All Rights Reserved */
/* */
/* File name : SanyoApi.h */
/* Date : 15 Dec.02 */
/* */
/******************************************************************************/
/******************************************************************************/
#ifndef __SANYO_API_H
#define __SANYO_API_H
#include <time.h>
#include <windows.h>
#ifdef __cplusplus
extern "C" {
#endif
#ifdef WIN32
#ifdef DLL_EXPORTS
#define SANYO_API __declspec(dllexport)
#else
#define SANYO_API
#endif //DLL_EXPORTS
#else //!WIN32
#define SANYO_API
#endif //WIN32
#ifndef _TYPE_ENUM_
#define _TYPE_ENUM_
typedef enum tagCAM_ERROR {
CAM_NO_ERROR = 0, /* 00 No Error */
CAM_INVALID_PARAMETER, /* 01 Invalid parameter */
CAM_INVALID_PARAM_RANGE, /* 02 Parameter out of range */
CAM_COMM_PORT_NOT_AVAILABLE, /* 03 Port not available */
CAM_COMM_FAILURE, /* 04 Communication failure */
CAM_INSUFF_DISK_SPACE, /* 05 Insufficient disk space */
CAM_USER_DISCONNECT, /* 06 User disconnection */
CAM_BAD_CLOSE, /* 07 Bad close */
CAM_BAD_WRITE, /* 08 Bad write */
CAM_BAD_EXECUTE, /* 09 Bad execute */
CAM_BAD_READ, /* 0A Bad read */
CAM_BAD_OPEN, /* 0B Bad open */
CAM_CAMERA_NOT_RESPONDING, /* 0C Camera not responding */
CAM_CAMERA_BAD_RESPONSE, /* 0D Camera bad responding */
CAM_NAK1_RESPONSE, /* 0E Camera NAK1 responde */
CAM_DC1_RESPONSE, /* 0F Camera DC1 response */
CAM_BAD_CHECKSUM, /* 10 Bad chaecksum */
CAM_BAD_GETLONG, /* 11 Bad getlong */
CAM_BAD_RCVLEN, /* 12 Bad rcvlen */
CAM_USER_BREAK, /* 13 User break */
CAM_SESSION_CLOSED, /* 14 Session closed */
CAM_USB_NOT_RESPONDING, /* 15 USB not responding */
CAM_MEMORY_ERROR, /* 16 Failed memory create */
CAM_CAN_RESPONSE, /* 17 Camera CAN response */
CAM_COMM_TIMEOUT, /* 18 Communication timeout */
CAM_ERROR_OTHER=255 /* FF Other error */
} CAM_ERROR;
typedef enum tagCAM_STATTYPE {
CAM_PERCENT_COMPL = 0, /* 00 % COMPLETION MESSAGE */
CAM_COM_TIMEOUT, /* 01 COMMUNICATIONS TIMEOUT ERROR, RETRYING */
CAM_COM_PARITY_ERROR, /* 02 COMMUNICATIONS CHECKSUM PARITY ERROR, RETRYING */
CAM_COM_OVERRUN, /* 03 COMMUNICATIONS OVERRUN ERROR, RETRYING */
CAM_COMM_FATAL, /* 04 FATAL COMMUNICATIONS ERROR, - FUNCTION ABORTED */
CAM_COMM_USER_DISCONNECT, /* 05 USER DISCONNECT - FUNCTION ABORTED */
CAM_COMM_PROTOCOL_ERROR, /* 06 CAMERA COMM PROTOCOL VIOLATION-FUNCTION ABORTED */
CAM_UNSPEC_ERROR=255 /* 07 FATAL UNSPECIFIED ERROR, - FUNCTION ABORTED */
} CAM_STATTYPE ;
typedef enum tagCAM_COMM_PORT {
COMM_AUTO = 0, /* 00 Auto detect */
COMM_USB = 0xA0, /* A0 USB */
} CAM_COMM_PORT;
typedef enum tagCAM_RES {
RES_640_N = 2, /* 02 640x480 Normal quality mode */
RES_640_F, /* 03 640x480 High quality mode */
RES_1600_N = 0x0A, /* 0A 1600x1200 Normal quality mode */
RES_1600_F, /* 0B 1600x1200 High quality mode */
RES_2000_N, /* 0C 2000x1490 Normal quality mode */
RES_2000_F, /* 0D 2000x1490 High quality mode */
RES_2048_N, /* 0E 2048x1536 Normal quality mode */
RES_2048_F, /* 0F 2048x1536 High quality mode */
RES_1600_S = 0x1C, /* 1C 1600x1200 Super High quality mode */
RES_2048_S, /* 1D 2048x1536 High quality mode */
RES_1600_TIFF = 0x25, /* 25 1600x1200 Tiff mode */
RES_2880_N = 0x41, /* 41 2880x2160 Normal quality mode */
RES_2880_F /* 42 2880x2160 High quality mode */
} CAM_RES;
typedef enum tagCAM_FLASH_MODE {
CAM_FLASH_AUTO = 0, /* 00 Automatic flash mode */
CAM_FLASH_ON, /* 01 Forced flash mode */
CAM_FLASH_OFF, /* 02 Flash disable mode */
CAM_FLASH_RED, /* 03 Automatic eliminate red eye effect mode */
}CAM_FLASH_MODE;
typedef enum tagCAM_LIGHT_SOURCE {
LS_UNIDENTIFIED = 0, /* 00 Unidentified (Auto setting) */
LS_DAYLIGHT, /* 01 Daylight */
LS_FLUORESCENT, /* 02 Fluorescent light */
LS_TUNGSTENT, /* 03 Tungsten lamp */
LS_PRESET = 0xE1, /* E1 Preset Added_saka 1998.06.12 [SR87] */
LS_MANUAL = 0xFE, /* FE Manual whitebalance [SX215] */
LS_CLOUDY = 0xFF /* FF Cloudy */
} CAM_LIGHT_SOURCE;
typedef enum tagSPEED_RATING {
SR_AUTO = 0, /* 00 auto */
SR_ISO100, /* 01 ISO 100 */
SR_ISO200, /* 02 ISO 200 */
SR_ISO400, /* 03 ISO 400 */
SR_ISO50 /* 04 ISO 50 */
} SPEED_RATING;
typedef enum tagCAM_FOCUS_MODE {
CAM_FOCUS_NOT_AVAILABLE = 0, /* 00 READ ONLY */
CAM_FOCUS_MACRO_ON, /* 01 Macro mode */
CAM_FOCUS_AUTO, /* 02 Auto focus mode */
CAM_FOCUS_MANUAL_ON, /* 03 Manual focus mode */
CAM_FOCUS_DISTANT_ON /* 04 Distant focus mode */
} CAM_FOCUS_MODE;
typedef enum tagCAM_LCD_MODE {
LCD_NOT_AVAILABLE = 0, /* 00 */
LCD_POWER_OFF, /* 01 LCD off */
LCD_MONITOR, /* 02 LCD on for CCD monitor */
LCD_PLAY_NORMAL /* 03 LCD on for play the media */
} CAM_LCD_MODE;
typedef enum tagLCD_OPCODE_ENUM {
LCD_OPCODE_POWER_OFF = 1, /* 01 */
LCD_OPCODE_MONITOR, /* 02 View mode */
LCD_OPCODE_PLAY_NORMAL, /* 03 Display the picture on LCD monitor */
} LCD_OPCODE_ENUM;
typedef enum tagPROGRAM_MODE {
PROGRAM_MANUAL = 1, /* 01 manual */
PROGRAM_AUTO, /* 02 auto */
PROGRAM_APERTURE_PRIORITY, /* 03 aperture priority */
PROGRAM_SHUTTER_PRIORITY /* 04 shutter priority */
} PROGRAM_MODE;
typedef struct _CAM_FRACTION
{
ULONG ulcam_numerator;
ULONG ulcam_denominator;
} CAM_FRACTION, *pCAM_FRACTION;
typedef struct _CAM_SFRACTION
{
LONG lcam_numerator;
LONG lcam_denominator;
} CAM_SFRACTION, *pCAM_SFRACTION;
typedef struct _EXPOSURE_MODE
{
PROGRAM_MODE program_mode; /* Program Mode */
LONG aperture_number_numerator; /* Aperture number numerator */
LONG aperture_number_denominator; /* Aperture number denominator */
LONG exposure_time; /* Exposure time [midro-sec] */
LONG em_option_1; /* Reserved */
} EXPOSURE_MODE, *pEXPOSURE_MODE;
typedef struct _CURRENT_SETTING
{
CAM_RES res_select; /* Resolution mode */
CAM_FLASH_MODE flash_ctl; /* Flash mode */
LONG picture_count; /* Number of pictures stored in the internal memory */
LONG remaining_count; /* Number of remaining pictures which can be stored */
SHORT battery_status; /* Battery status */
LONG extnal_picture_count; /* Number of pictures stored in the external memory */
LONG extnal_remaining_count; /* Number of remaining pictures which can be stored in external memory */
LONG cs_option_3; /* Not used */
} CURRENT_SETTING, *pCURRENT_SETTING;
typedef struct _DIAG_INFO_2
{
UCHAR vendor_id_name[8]; /* Vendor ID name */
UCHAR product_id_name[16]; /* Product ID name */
UCHAR product_rev_label[4]; /* Product Rev.Label */
UCHAR serial_number[12]; /* Serial number */
} DIAG_INFO_2, *pDIAG_INFO_2;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -