Image Component Library (ICL)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Classes | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Types | Private Member Functions | Private Attributes | Friends

Device struct, used by the DCGrabber class to identify devices. More...

#include <DCDevice.h>

List of all members.

Classes

struct  Mode
 Internally used Mode struct (combination of videomode and framerate) More...

Public Member Functions

std::string getTypeID () const
 returns an instances type ID (see also static functions)
dc1394camera_t * getCam () const
 returns the camera, which is associated with this device (fixed)
Mode getMode () const
 returns the current mode
std::vector< ModegetModes () const
 returns a list of supported modes for this device
std::string getModesInfo () const
 returns a list of supported modes for this device as info-string
std::string getVendorID () const
 returns the vendor id string from the wrapped camera or "null" if the device is null
std::string getModelID () const
 returns the model id string from the wrapped camera or "null" if the device is null
uint64_t getGUID () const
 returns the devices Global Unique ID
icl32s getUnit () const
 returns the IEEE1394 Unit of the device
icl32s getUnitSpecID () const
 returns the IEEE1394 UnitSpecID of the device
std::string getUniqueStringIdentifier () const
 returns a unique string identifier for this device
bool isNull () const
 returns wheather the device is associated to a dc-camera
void show (const std::string &title="DCDevice") const
 shows some device information
bool supports (const Mode &mode) const
 returns whether the Device supports a given mode
dc1394color_filter_t getBayerFilterLayout () const
 returns the cameras bayer filter layout
void setISOSpeed (int mbits)
 sets the cameras iso speed
bool supportsDC800 ()
 returns whether the device supports Firewire B mode

Static Public Member Functions

static std::string getTypeID (const std::string &model, const std::string &vendor)
 returns a type ID specifier (vendor+" -- "+model)
static std::string getTypeID (const dc1394camera_t *cam)
 returns getTypeID(cam->model,cam->vendor)
static void dc1394_reset_bus (bool verbose=false)
 save version to call dc1394_reset_bus (after call all other cams become useless)

Static Public Attributes

static const DCDevice null
 static null device (m_poCam is null)

Private Types

enum  BayerFilterMode {
  BF_RGGB = DC1394_COLOR_FILTER_RGGB, BF_GBRG = DC1394_COLOR_FILTER_GBRG, BF_GRBG = DC1394_COLOR_FILTER_GRBG, BF_BGGR = DC1394_COLOR_FILTER_BGGR,
  BF_NONE, BF_FROM_MODE, BF_FROM_FEATURE
}

Private Member Functions

 DCDevice (dc1394camera_t *cam)
 Creates a new device (pivate; called by DCGrabber::getDeviceList())
void setMode (const Mode &mode)
 sets the current mode of this device
void reset ()
 resets the camera internally
void estimateBayerFilterMode ()
 this function is called by the constructor

Private Attributes

dc1394camera_t * m_poCam
 associated camera (libdc stays the owner of the pointer)
BayerFilterMode m_eBayerFilterMode
 once estimated this flag is used to identify the current camery type

Friends

class icl::io::DCGrabber
 DCDevices may only be created by the DCGrabbers private function.
class icl::io::dc::DCGrabberThread
 DCDevices may only be created by the DCGrabbers private function.

Detailed Description

Device struct, used by the DCGrabber class to identify devices.


Member Enumeration Documentation

Enumerator:
BF_RGGB 
BF_GBRG 
BF_GRBG 
BF_BGGR 
BF_NONE 
BF_FROM_MODE 
BF_FROM_FEATURE 

Constructor & Destructor Documentation

icl::io::DCDevice::DCDevice ( dc1394camera_t *  cam) [inline, private]

Creates a new device (pivate; called by DCGrabber::getDeviceList())


Member Function Documentation

static void icl::io::DCDevice::dc1394_reset_bus ( bool  verbose = false) [static]

save version to call dc1394_reset_bus (after call all other cams become useless)

this function is called by the constructor

dc1394color_filter_t icl::io::DCDevice::getBayerFilterLayout ( ) const

returns the cameras bayer filter layout

Returns:
bayer filter layout
  • 0 if no bayer filter is needed
  • 1 if the bayer filter layout is given by a camera feature
  • otherwise a valid dc1394color_filter_t value
dc1394camera_t* icl::io::DCDevice::getCam ( ) const [inline]

returns the camera, which is associated with this device (fixed)

uint64_t icl::io::DCDevice::getGUID ( ) const

returns the devices Global Unique ID

Mode icl::io::DCDevice::getMode ( ) const [inline]

returns the current mode

std::string icl::io::DCDevice::getModelID ( ) const

returns the model id string from the wrapped camera or "null" if the device is null

std::vector<Mode> icl::io::DCDevice::getModes ( ) const

returns a list of supported modes for this device

std::string icl::io::DCDevice::getModesInfo ( ) const

returns a list of supported modes for this device as info-string

static std::string icl::io::DCDevice::getTypeID ( const std::string &  model,
const std::string &  vendor 
) [static]

returns a type ID specifier (vendor+" -- "+model)

static std::string icl::io::DCDevice::getTypeID ( const dc1394camera_t *  cam) [static]

returns getTypeID(cam->model,cam->vendor)

std::string icl::io::DCDevice::getTypeID ( ) const [inline]

returns an instances type ID (see also static functions)

See also:
getTypeID(const std::string&,const std::string &)

returns a unique string identifier for this device

currently: getModelID + "-" +getGUID()

returns the IEEE1394 Unit of the device

returns the IEEE1394 UnitSpecID of the device

std::string icl::io::DCDevice::getVendorID ( ) const

returns the vendor id string from the wrapped camera or "null" if the device is null

bool icl::io::DCDevice::isNull ( ) const [inline]

returns wheather the device is associated to a dc-camera

void icl::io::DCDevice::reset ( ) [inline, private]

resets the camera internally

This function may only be called by the DCGrabber

void icl::io::DCDevice::setISOSpeed ( int  mbits)

sets the cameras iso speed

See also:
icl::dc::set_iso_speed(int)
void icl::io::DCDevice::setMode ( const Mode mode) [private]

sets the current mode of this device

This function may only be called by the DCGrabber

void icl::io::DCDevice::show ( const std::string &  title = "DCDevice") const

shows some device information

bool icl::io::DCDevice::supports ( const Mode mode) const

returns whether the Device supports a given mode

returns whether the device supports Firewire B mode


Friends And Related Function Documentation

friend class icl::io::dc::DCGrabberThread [friend]

DCDevices may only be created by the DCGrabbers private function.

friend class icl::io::DCGrabber [friend]

DCDevices may only be created by the DCGrabbers private function.


Member Data Documentation

once estimated this flag is used to identify the current camery type

dc1394camera_t* icl::io::DCDevice::m_poCam [private]

associated camera (libdc stays the owner of the pointer)

static null device (m_poCam is null)


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines