libgphoto2 photo camera library (libgphoto2) API: gphoto2/gphoto2-library.h File Reference

libgphoto2 photo camera library (libgphoto2) API 2.5.32

Loading...
Searching...
No Matches
gphoto2-library.h File Reference

Camery driver header. More...

`#include <gphoto2/gphoto2-abilities-list.h>`
`#include <gphoto2/gphoto2-camera.h>`
Include dependency graph for gphoto2-library.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Typedefs
typedef int(* | CameraLibraryIdFunc) (CameraText *id)
| Returns a unique id for the camera driver.
typedef int(* | CameraLibraryAbilitiesFunc) (CameraAbilitiesList *list)
| Adds the abilities of the supported models to the supplied list.
typedef int(* | CameraLibraryInitFunc) (Camera *camera, GPContext *context)
| Initializes the camera.

## Functions
int | camera_id (CameraText *id)
| Get a unique camera id.
int | camera_abilities (CameraAbilitiesList *list)
| Get a list of abilities of all supported cameras.
int | camera_init (Camera *camera, GPContext *context)

## Detailed Description

Camery driver header.

Author
  Copyright 2000 Scott Fritzinger

Note
  This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
  This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
  You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

## Typedef Documentation

## ◆ CameraLibraryAbilitiesFunc

typedef int(* CameraLibraryAbilitiesFunc) (CameraAbilitiesList *list)

Adds the abilities of the supported models to the supplied list.

Parameters

  list | a CameraAbilitiesList

Returns
  a gphoto2 error code

## ◆ CameraLibraryIdFunc

typedef int(* CameraLibraryIdFunc) (CameraText *id)

Returns a unique id for the camera driver.

Parameters

  id | a CameraText

Returns
  a gphoto2 error code

## ◆ CameraLibraryInitFunc

typedef int(* CameraLibraryInitFunc) (Camera *camera, GPContext *context)

Initializes the camera.

Parameters

  camera | a Camera
  context | a GPContext

Returns
  a gphoto2 error code

The camera driver will establish a first connection to the camera and configure the camera variable (i.e. using #gp_filesystem_set_list_funcs or gp_port_get_settings).

## Function Documentation

## ◆ camera_abilities()

int camera_abilities | ( | CameraAbilitiesList * | list | ) |

Get a list of abilities of all supported cameras.

Parameters

  list | a CameraAbilitiesList

This function should use gp_abilities_list_append as many times as the number of models the camera driver supports. That is, fill out (in a loop) the CameraAbilities for each model and append each of those to the supplied list using gp_abilities_list_append(). Then, return GP_OK.

Returns
  a gphoto2 error code

References CameraAbilities::file_operations, CameraAbilities::folder_operations, gp_abilities_list_append(), GP_CAPTURE_IMAGE, GP_DRIVER_STATUS_PRODUCTION, GP_FILE_OPERATION_DELETE, GP_FILE_OPERATION_PREVIEW, GP_FOLDER_OPERATION_NONE, GP_OK, GP_OPERATION_CAPTURE_PREVIEW, GP_PORT_SERIAL, GP_PORT_USB, CameraAbilities::model, CameraAbilities::operations, CameraAbilities::port, CameraAbilities::speed, and CameraAbilities::status.

## ◆ camera_id()

int camera_id | ( | CameraText * | id | ) |

Get a unique camera id.

Parameters

  id | a CameraText that receives the id string

This function should write a unique id into id and return GP_OK. That is, choose a unique id, use strncpy in order to copy it into the id, and return GP_OK. The driver name should suffice.

Returns
  a gphoto2 error code

References GP_OK, and CameraText::text.

## ◆ camera_init()

int camera_init | ( | Camera * | camera,
|  | GPContext * | context )

Initialize a Camera object.

Sets up all the proper object function pointers, initialize camlib internal data structures, and probably establish a connection to the camera.

This is a camlib API function.

References _CameraFunctions::about, camera_about(), camera_capture(), camera_capture_preview(), camera_config_get(), camera_config_set(), camera_exit(), camera_manual(), camera_summary(), _CameraFunctions::capture, _CameraFunctions::capture_preview, _CameraFunctions::exit, fsfuncs, _CameraFunctions::get_config, gp_filesystem_set_funcs(), GP_OK, _CameraFunctions::manual, _CameraFunctions::set_config, and _CameraFunctions::summary.