00001 00025 #ifndef __GPHOTO2_LIBRARY_H__ 00026 #define __GPHOTO2_LIBRARY_H__ 00027 00028 #include <gphoto2/gphoto2-abilities-list.h> 00029 #include <gphoto2/gphoto2-camera.h> 00030 00031 #ifdef __cplusplus 00032 extern "C" { 00033 #endif /* __cplusplus */ 00034 00042 typedef int (* CameraLibraryIdFunc) (CameraText *id); 00043 00051 typedef int (* CameraLibraryAbilitiesFunc) (CameraAbilitiesList *list); 00052 00065 typedef int (* CameraLibraryInitFunc) (Camera *camera, GPContext *context); 00066 00067 /* 00068 * If you want to write a camera library, you need to implement 00069 * the following three functions. Everything else should be declared 00070 * as static. 00071 */ 00072 int camera_id (CameraText *id); 00073 int camera_abilities (CameraAbilitiesList *list); 00074 int camera_init (Camera *camera, GPContext *context); 00075 00076 #ifdef __cplusplus 00077 } 00078 #endif /* __cplusplus */ 00079 00080 #endif /* __GPHOTO2_LIBRARY_H__ */