14 uint16_t standard_version;
15 uint32_t vendor_ext_id;
18 uint16_t functional_mode;
20 int ops_supported_length;
21 uint16_t ops_supported[256];
23 int events_supported_length;
24 uint16_t events_supported[256];
26 int props_supported_length;
27 uint16_t props_supported[512];
29 int capture_formats_length;
30 uint16_t capture_formats[32];
32 int playback_formats_length;
33 uint16_t playback_formats[32];
35 char manufacturer[128];
37 char device_version[64];
38 char serial_number[128];
42 uint16_t storage_type;
44 uint16_t access_capability;
45 uint64_t max_capacity;
47 uint32_t free_objects;
48 char storage_desc[128];
49 char volume_identifier[128];
56 uint32_t compressed_size;
57 uint16_t thumb_format;
58 uint32_t thumb_compressed_size;
60 uint32_t thumb_height;
63 uint32_t img_bit_depth;
67 uint32_t sequence_num;
70 char date_created[32];
71 char date_modified[32];
92 uint32_t default_value32;
93 uint32_t current_value32;
103 uint32_t property_code;
106 uint32_t default_value;
128 uint32_t lcd_palette[256];
138enum PtpMlBmpLvOption {
139 PTP_ML_BMP_LV_GET_FRAME = 0,
140 PTP_ML_BMP_LV_GET_SPEC = 1,
143enum PtpCHDKCommands {
144 PTP_CHDK_Version = 0,
145 PTP_CHDK_UploadFile = 5,
148int ptp_pack_object_info(
struct PtpRuntime *r,
struct PtpObjectInfo *oi, uint8_t *buf,
unsigned int max);
150int ptp_parse_prop_value(
struct PtpRuntime *r);
151int ptp_parse_device_info(
struct PtpRuntime *r,
struct PtpDeviceInfo *di);
152int ptp_device_info_json(
const struct PtpDeviceInfo *di,
char *buffer,
unsigned int max);
153int ptp_parse_prop_desc(
struct PtpRuntime *r,
struct PtpPropDesc *oi);
154int ptp_prop_desc_json(
const struct PtpPropDesc *pd,
char *buffer,
unsigned int max);
155int ptp_parse_object_info(
struct PtpRuntime *r,
struct PtpObjectInfo *oi);
156int ptp_storage_info_json(
const struct PtpStorageInfo *so,
char *buffer,
unsigned int max);
157int ptp_object_info_json(
const struct PtpObjectInfo *so,
char *buffer,
unsigned int max);
158int ptp_parse_storage_info(
struct PtpRuntime *r,
struct PtpStorageInfo *si);
159__attribute__((deprecated))
int ptp_eos_events(
struct PtpRuntime *r,
struct PtpGenericEvent **p);
165int ptp_eos_events_next(
struct PtpRuntime *r,
struct PtpEventReader *reader,
struct PtpGenericEvent *event);
170int ptp_eos_get_shutter(
int data,
int *out,
int dir);
171int ptp_eos_get_iso(
int data,
int *out,
int dir);
172int ptp_eos_get_aperture(
int data,
int *out,
int dir);
173int ptp_eos_get_white_balance(
int data,
int *out,
int dir);
174int ptp_eos_get_imgformat_value(uint32_t data[5],
int *out);
176void *ptp_pack_chdk_upload_file(
struct PtpRuntime *r,
char *in,
char *out,
unsigned int *length);
178void *canon_evproc_pack(
int *out_length,
char *
string);
int ptp_eos_events_next(struct PtpRuntime *r, struct PtpEventReader *reader, struct PtpGenericEvent *event)
int ptp_eos_events_open(struct PtpRuntime *r, struct PtpEventReader *reader)
int ptp_eos_events_json(struct PtpRuntime *r, char *buffer, unsigned int max)
Reads event list currently in r->data and converts to JSON.