3 * Copyright © 2002 Lutz Müller <lutz@users.sourceforge.net>
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.
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.
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., 59 Temple Place - Suite 330,
18 * Boston, MA 02111-1307, USA.
26 #include <gphoto2/gphoto2-camera.h>
27 #include <gphoto2/gphoto2-context.h>
30 RICOH_SPEED_2400 = 0x00,
31 RICOH_SPEED_4800 = 0x01,
32 RICOH_SPEED_9600 = 0x02,
33 RICOH_SPEED_19200 = 0x03,
34 RICOH_SPEED_38400 = 0x04,
35 RICOH_SPEED_57600 = 0x05,
36 RICOH_SPEED_115200 = 0x07
38 typedef enum _RicohSpeed RicohSpeed;
40 int ricoh_set_speed (Camera *camera, GPContext *context, RicohSpeed speed);
42 /* We don't know the numbers for the models marked as 'dummy'. */
44 RICOH_MODEL_1 = 0x001, /* dummy */
45 RICOH_MODEL_2 = 0x002, /* dummy */
46 RICOH_MODEL_2E = 0x003, /* dummy */
47 RICOH_MODEL_100G = 0x005, /* dummy */
48 RICOH_MODEL_300 = 0x300,
49 RICOH_MODEL_300Z = 0x301,
50 RICOH_MODEL_4200 = 0x402,
51 RICOH_MODEL_4300 = 0x403,
52 RICOH_MODEL_5000 = 0x004, /* dummy */
53 RICOH_MODEL_ESP2 = 0x006, /* dummy */
54 RICOH_MODEL_ESP50 = 0x007, /* dummy */
55 RICOH_MODEL_ESP60 = 0x008, /* dummy */
56 RICOH_MODEL_ESP70 = 0x009, /* dummy */
57 RICOH_MODEL_ESP80 = 0x010, /* dummy */
58 RICOH_MODEL_ESP80SXG = 0x400
60 typedef enum _RicohModel RicohModel;
62 int ricoh_connect (Camera *camera, GPContext *context, RicohModel *model);
63 int ricoh_disconnect (Camera *camera, GPContext *context);
66 RICOH_MODE_PLAY = 0x00,
67 RICOH_MODE_RECORD = 0x01
69 typedef enum _RicohMode RicohMode;
71 int ricoh_get_mode (Camera *camera, GPContext *context, RicohMode *mode);
72 int ricoh_set_mode (Camera *camera, GPContext *context, RicohMode mode);
74 int ricoh_get_num (Camera *camera, GPContext *context, unsigned int *n);
76 int ricoh_get_pic_size (Camera *, GPContext *, unsigned int, unsigned long *);
77 int ricoh_get_pic_date (Camera *, GPContext *, unsigned int, time_t *);
78 int ricoh_get_pic_name (Camera *, GPContext *, unsigned int, const char **);
79 int ricoh_get_pic_memo (Camera *, GPContext *, unsigned int, const char **);
80 int ricoh_del_pic (Camera *, GPContext *, unsigned int);
83 RICOH_FILE_TYPE_NORMAL = 0xa0,
84 RICOH_FILE_TYPE_PREVIEW = 0xa4
86 typedef enum _RicohFileType RicohFileType;
87 int ricoh_get_pic (Camera *camera, GPContext *context, unsigned int n,
89 unsigned char **data, unsigned int *size);
91 int ricoh_take_pic (Camera *, GPContext *);
92 int ricoh_put_file (Camera *, GPContext *, const char *name,
93 const unsigned char *data, unsigned int size);
95 int ricoh_get_date (Camera *camera, GPContext *context, time_t *time);
96 int ricoh_set_date (Camera *camera, GPContext *context, time_t time);
98 int ricoh_get_cam_mem (Camera *camera, GPContext *context, int *mem);
99 int ricoh_get_cam_amem (Camera *camera, GPContext *context, int *mem);
101 int ricoh_get_copyright (Camera *camera, GPContext *context,
102 const char **copyright);
103 int ricoh_set_copyright (Camera *camera, GPContext *context,
104 const char *copyright);
106 enum _RicohResolution {
107 RICOH_RESOLUTION_640_480 = 0x01,
108 RICOH_RESOLUTION_1280_960 = 0x04
110 typedef enum _RicohResolution RicohResolution;
112 int ricoh_get_resolution (Camera *, GPContext *, RicohResolution *);
113 int ricoh_set_resolution (Camera *, GPContext *, RicohResolution);
115 enum _RicohExposure {
116 RICOH_EXPOSURE_M20 = 0x01, /* -2.0 */
117 RICOH_EXPOSURE_M15 = 0x02,
118 RICOH_EXPOSURE_M10 = 0x03,
119 RICOH_EXPOSURE_M05 = 0x04,
120 RICOH_EXPOSURE_00 = 0x05,
121 RICOH_EXPOSURE_05 = 0x06,
122 RICOH_EXPOSURE_10 = 0x07,
123 RICOH_EXPOSURE_15 = 0x08,
124 RICOH_EXPOSURE_20 = 0x09, /* +2.0 */
125 RICOH_EXPOSURE_AUTO = 0xff
127 typedef enum _RicohExposure RicohExposure;
129 int ricoh_get_exposure (Camera *, GPContext *, RicohExposure *);
130 int ricoh_set_exposure (Camera *, GPContext *, RicohExposure);
132 enum _RicohWhiteLevel {
133 RICOH_WHITE_LEVEL_AUTO = 0x00,
134 RICOH_WHITE_LEVEL_OUTDOOR = 0x01,
135 RICOH_WHITE_LEVEL_FLUORESCENT = 0x02,
136 RICOH_WHITE_LEVEL_INCANDESCENT = 0x03,
137 RICOH_WHITE_LEVEL_BLACK_WHITE = 0x04,
138 RICOH_WHITE_LEVEL_SEPIA = 0x05
140 typedef enum _RicohWhiteLevel RicohWhiteLevel;
142 int ricoh_get_white_level (Camera *, GPContext *, RicohWhiteLevel *);
143 int ricoh_set_white_level (Camera *, GPContext *, RicohWhiteLevel);
146 RICOH_MACRO_OFF = 0x00,
147 RICOH_MACRO_ON = 0x01
149 typedef enum _RicohMacro RicohMacro;
151 int ricoh_get_macro (Camera *, GPContext *, RicohMacro *);
152 int ricoh_set_macro (Camera *, GPContext *, RicohMacro);
155 RICOH_ZOOM_OFF = 0x00,
165 typedef enum _RicohZoom RicohZoom;
167 int ricoh_get_zoom (Camera *, GPContext *, RicohZoom *);
168 int ricoh_set_zoom (Camera *, GPContext *, RicohZoom);
171 RICOH_FLASH_AUTO = 0x00,
172 RICOH_FLASH_OFF = 0x01,
173 RICOH_FLASH_ON = 0x02
175 typedef enum _RicohFlash RicohFlash;
177 int ricoh_get_flash (Camera *, GPContext *, RicohFlash *);
178 int ricoh_set_flash (Camera *, GPContext *, RicohFlash);
181 RICOH_REC_MODE_IMAGE = 0x00,
182 RICOH_REC_MODE_CHARACTER = 0x01,
183 RICOH_REC_MODE_SOUND = 0x03,
184 RICOH_REC_MODE_IMAGE_SOUND = 0x04,
185 RICOH_REC_MODE_CHARACTER_SOUND = 0x06
187 typedef enum _RicohRecMode RicohRecMode;
189 int ricoh_get_rec_mode (Camera *, GPContext *, RicohRecMode *);
190 int ricoh_set_rec_mode (Camera *, GPContext *, RicohRecMode);
192 enum _RicohCompression {
193 RICOH_COMPRESSION_NONE = 0x00,
194 RICOH_COMPRESSION_MAX = 0x01,
195 RICOH_COMPRESSION_NORM = 0x02,
196 RICOH_COMPRESSION_MIN = 0x03
198 typedef enum _RicohCompression RicohCompression;
200 int ricoh_get_compression (Camera *, GPContext *, RicohCompression *);
201 int ricoh_set_compression (Camera *, GPContext *, RicohCompression);
203 #endif /* __RICOH_H__ */