Logo Search packages:      
Sourcecode: libgphoto2 version File versions  Download package

Classes | Defines | Functions | Variables

gphoto2-port.c File Reference

#include "config.h"
#include <stdarg.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <ltdl.h>
#include <gphoto2/gphoto2-port-result.h>
#include <gphoto2/gphoto2-port-library.h>
#include <gphoto2/gphoto2-port-log.h>
Include dependency graph for gphoto2-port.c:

Go to the source code of this file.

Classes

struct  _GPPortPrivateCore
 Internal private libgphoto2_port data. This structure contains private data. More...

Defines

#define _(String)   (String)
#define CHECK_INIT(p)   {if (!(p)->pc->ops) {gp_port_set_error ((p), _("The port has not yet been initialized")); return (GP_ERROR_BAD_PARAMETERS);}}
#define CHECK_NULL(m)   {if (!(m)) return (GP_ERROR_BAD_PARAMETERS);}
#define CHECK_RESULT(result)   {int r=(result); if (r<0) return (r);}
#define CHECK_SUPP(p, t, o)   {if (!(o)) {gp_port_set_error ((p), _("The operation '%s' is not supported by this device"), (t)); return (GP_ERROR_NOT_SUPPORTED);}}
#define FAST_TIMEOUT   50
#define N_(String)   (String)

Functions

int gp_port_check_int (GPPort *port, char *data, int size)
 Check for intterupt.
int gp_port_check_int_fast (GPPort *port, char *data, int size)
 Check for interrupt without wait.
int gp_port_close (GPPort *port)
 Close a port.
static int gp_port_exit (GPPort *port)
int gp_port_flush (GPPort *port, int direction)
 Flush data on serial port.
int gp_port_free (GPPort *port)
 Free the port structure.
const char * gp_port_get_error (GPPort *port)
 Get verbose port error message.
int gp_port_get_info (GPPort *port, GPPortInfo *info)
 Retreives information about the port.
int gp_port_get_pin (GPPort *port, GPPin pin, GPLevel *level)
 Get setting of specific serial PIN.
int gp_port_get_settings (GPPort *port, GPPortSettings *settings)
 Get the current port settings.
int gp_port_get_timeout (GPPort *port, int *timeout)
 Get the current port timeout.
static int gp_port_init (GPPort *port)
int gp_port_new (GPPort **port)
 Create new GPPort.
int gp_port_open (GPPort *port)
 Open a port.
int gp_port_read (GPPort *port, char *data, int size)
 Read data from port.
int gp_port_seek (GPPort *port, int offset, int whence)
 Seek on a port (for usb disk direct ports)
int gp_port_send_break (GPPort *port, int duration)
 Send a break over a serial port.
int gp_port_send_scsi_cmd (GPPort *port, int to_dev, char *cmd, int cmd_size, char *sense, int sense_size, char *data, int data_size)
 Send a SCSI command to a port (for usb scsi ports)
int gp_port_set_error (GPPort *port, const char *format,...)
 Set verbose port error message.
int gp_port_set_info (GPPort *port, GPPortInfo info)
 Configure a port.
int gp_port_set_pin (GPPort *port, GPPin pin, GPLevel level)
 Set specified serial PIN to value.
int gp_port_set_settings (GPPort *port, GPPortSettings settings)
 Set port settings.
int gp_port_set_timeout (GPPort *port, int timeout)
 Set timeout of port.
int gp_port_settings_get (GPPort *, GPPortSettings *)
int gp_port_settings_set (GPPort *, GPPortSettings)
int gp_port_timeout_get (GPPort *, int *)
int gp_port_timeout_set (GPPort *, int)
int gp_port_usb_clear_halt (GPPort *port, int ep)
 Clear USB endpoint HALT condition.
int gp_port_usb_find_device (GPPort *port, int idvendor, int idproduct)
 Find USB device by vendor/product.
int gp_port_usb_find_device_by_class (GPPort *port, int mainclass, int subclass, int protocol)
 Find USB device by interface class.
int gp_port_usb_msg_class_read (GPPort *port, int request, int value, int index, char *bytes, int size)
 Send a USB class control message with input data.
int gp_port_usb_msg_class_write (GPPort *port, int request, int value, int index, char *bytes, int size)
 Send a USB class control message with output data.
int gp_port_usb_msg_interface_read (GPPort *port, int request, int value, int index, char *bytes, int size)
 Send a USB interface control message with input data.
int gp_port_usb_msg_interface_write (GPPort *port, int request, int value, int index, char *bytes, int size)
 Send a USB interface control message with output data.
int gp_port_usb_msg_read (GPPort *port, int request, int value, int index, char *bytes, int size)
 Send a USB control message with input data.
int gp_port_usb_msg_write (GPPort *port, int request, int value, int index, char *bytes, int size)
 Send a USB control message with output data.
int gp_port_write (GPPort *port, const char *data, int size)
 Writes a specified amount of data to a port.

Variables

struct {
   const char *   description
   GPLevel   level
LevelTable []
struct {
   const char *   description_long
   const char *   description_short
   unsigned char   number
   GPPin   pin
PinTable []

Detailed Description

Author:
Copyright 2001 Lutz Müller <lutz@users.sf.net>
Copyright 1999 Scott Fritzinger <scottf@unr.edu>
License
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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

Definition in file gphoto2-port.c.


Generated by  Doxygen 1.6.0   Back to index