1 /* library.h 2 * 3 * Copyright (C) Scott Fritzinger 4 * 5 * This library is free software; you can redistribute it and/or 6 * modify it under the terms of the GNU Lesser General Public 7 * License as published by the Free Software Foundation; either 8 * version 2 of the License, or (at your option) any later version. 9 * 10 * This library is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 13 * Lesser General Public License for more details. 14 * 15 * You should have received a copy of the GNU Lesser General Public 16 * License along with this library; if not, write to the 17 * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 18 * Boston, MA 02110-1301 USA 19 */ 20 21 22 #ifndef _DC120_LIBRARY_H_ 23 #define _DC120_LIBRARY_H_ 24 25 26 #define CAMERA_EPOC 852094800 27 28 #define DC120_ACTION_IMAGE 0 29 #define DC120_ACTION_PREVIEW 1 30 #define DC120_ACTION_DELETE 2 31 32 /* Status structure. Copied from dc210, thus may not fit. */ 33 typedef struct { 34 char camera_type_id; /* 1 */ 35 char firmware_major; /* 2 */ 36 char firmware_minor; /* 3 */ 37 char batteryStatusId; /* 8 battery status */ 38 char acStatusId; /* 9 */ 39 unsigned long time; /* 12-15 */ 40 char af_mode; /* 16 */ 41 char zoom_mode; /* 16 */ 42 char flash_charged; /* 18 */ 43 char compression_mode_id; /* 19 */ 44 char flash_mode; /* 20 */ 45 char exposure_compensation; /* 21 */ 46 char light_value; /* 22 measured light */ 47 char manual_exposure; /* 23 */ 48 unsigned long exposure_time; /* 24-27*/ 49 char shutter_delay; /* 29 */ 50 char memory_card; /* 30 */ 51 char front_cover; /* 31 */ 52 char date_format; /* 32 */ 53 char time_format; /* 33 */ 54 char distance_format; /* 34 */ 55 unsigned short taken_pict_mem; /* 36-37 */ 56 unsigned short remaining_pic_mem[4]; /* 46-53 */ 57 unsigned short taken_pict_card; /* 56-57 */ 58 unsigned short remaining_pic_card[4]; /* 66-73 */ 59 unsigned long album_count; /* 122-125 */ 60 char card_id[32]; /* 77-88 */ 61 char camera_id[32]; /* 90-122 */ 62 } Kodak_dc120_status; 63 64 int dc120_set_speed (Camera *camera, int speed); 65 int dc120_get_status (Camera *camera, Kodak_dc120_status *status, GPContext *context); 66 int dc120_get_albums (Camera *camera, int from_card, CameraList *list, GPContext *context); 67 int dc120_get_filenames(Camera *camera, int from_card, int album_number, CameraList *list, GPContext *context); 68 int dc120_file_action (Camera *camera, int action, int from_card, int album_number, 69 int file_number, CameraFile *file, GPContext *context); 70 int dc120_capture (Camera *camera, CameraFilePath *path, GPContext *context); 71 72 73 #endif /* _DC120_LIBRARY_H_ */ 74