24 #ifndef __FIREVISION_CAMS_FIREWIRE_H_ 25 #define __FIREVISION_CAMS_FIREWIRE_H_ 27 #include <fvcams/camera.h> 28 #include <fvcams/control/focus.h> 30 #include <dc1394/dc1394.h> 32 #ifndef __STDC_LIMIT_MACROS 33 #define __STDC_LIMIT_MACROS 42 class CameraArgumentParser;
52 dc1394video_mode_t mode = DC1394_VIDEO_MODE_640x480_YUV422,
53 dc1394speed_t speed = DC1394_ISO_SPEED_400,
59 virtual void open_device();
65 virtual void capture();
67 virtual void print_info();
70 virtual unsigned char* buffer();
71 virtual unsigned int buffer_size();
72 virtual void dispose_buffer();
74 virtual unsigned int pixel_width();
75 virtual unsigned int pixel_height();
76 virtual colorspace_t colorspace();
78 virtual void set_image_number(
unsigned int n);
80 bool iso_mode_enabled();
82 virtual bool auto_focus();
83 virtual void set_auto_focus(
bool enabled);
85 virtual unsigned int focus();
86 virtual void set_focus(
unsigned int focus);
87 virtual unsigned int focus_min();
88 virtual unsigned int focus_max();
90 virtual bool auto_shutter();
91 virtual void set_auto_shutter(
bool enabled);
93 virtual unsigned int shutter();
94 virtual void set_shutter(
unsigned int shutter);
96 virtual bool auto_white_balance();
97 virtual void set_auto_white_balance(
bool enabled);
99 virtual void white_balance(
unsigned int *ub,
unsigned int *vr);
100 virtual void set_white_balance(
unsigned int ub,
unsigned int vr);
102 virtual void set_gain(
unsigned int gain);
104 virtual void parse_set_focus(
const char *focus);
105 virtual void parse_set_white_balance(
const char *white_balance);
106 virtual void parse_set_shutter(
const char *shutter);
108 virtual uint64_t guid()
const;
109 virtual const char * model()
const;
111 static void print_available_fwcams();
bool _opened
true if camera has been opened, false otherwise
bool _do_set_white_balance
true if the white balance should actually be set, false otherwise
dc1394speed_t _speed
DC1394 speed.
int _format7_width
Format7 width.
Camera interface for image aquiring devices in FireVision.
dc1394video_mode_t _mode
DC1394 video mode.
Camera focus control interface.
bool _started
true if camera has been started, false otherwise
unsigned int _focus
Focus value.
bool _auto_shutter
true if auto shutter is enabled, false if disabled
unsigned int _white_balance_ub
White balance U/B value.
dc1394video_frame_t * _frame
Last captured DC1394 video frame.
int _format7_bpp
Format7 bytes per packet.
unsigned int _shutter
Shutter value.
bool _device_opened
true if device has been opened, false otherwise
unsigned int _white_balance_vr
White balance V/R value.
bool _valid_frame_received
true, if a valid frame has been received, false otherwise
unsigned int _gain
Gain value.
char * _model
Camera model, used in open to identify the camera, if empty first found camera is used...
bool _do_set_shutter
true if the shutter should actually be set, false otherwise
bool _auto_white_balance
true if auto white balance is enabled, false if disabled
bool _auto_focus
true if auto focus is enabled, false if disabled
int _format7_height
Format7 height.
dc1394framerate_t _framerate
DC1394 framerate.
dc1394_t * cobj() const
Get underlying libdc1394 C handle.
bool _auto_gain
True, if gain is set automatically.
dc1394color_coding_t _format7_coding
Format7 color coding.
bool _do_set_focus
true if the focus should actually be set, false otherwise
dc1394camera_t * _camera
DC1394 camera handle.
dc1394camera_t * camera_cobj() const
Get underlying libdc1394 camera C handle.
int _format7_startx
Format7 ROI Start X coordinate.
int _num_buffers
Number of DMA buffers.
dc1394_t * _dc1394
DC1394 main context.
bool _format7_mode_enabled
Indicator of Format7 status.
int _format7_starty
Format7 ROI Start Y coordinate.