LTI-Lib latest version v1.9 - last update 10 Apr 2010

lti::camera Class Reference

Parent class for all cameras with control over the lens system, including zooming. More...

#include <ltiCamera.h>

Inheritance diagram for lti::camera:
Inheritance graph
[legend]
Collaboration diagram for lti::camera:
Collaboration graph
[legend]

List of all members.

Classes

class  parameters
 the parameters for the class camera More...

Public Member Functions

 camera ()
 camera (const parameters &par)
 camera (const camera &other)
virtual ~camera ()
virtual const char * getTypeName () const
cameracopy (const camera &other)
cameraoperator= (const camera &other)
virtual functorclone () const =0
const parametersgetParameters () const
virtual bool autoWhiteBalanceOn ()=0
virtual bool autoGainOn ()=0
virtual bool setGain (float value)=0
virtual bool setRedGain (float value)=0
virtual bool setBlueGain (float value)=0
virtual bool autoShutterSpeedOn ()=0
virtual bool setShutterSpeed (float value)=0
virtual bool setFocus (float value)=0
virtual bool setFocusToInfinity ()=0
virtual bool autoFocusOn ()=0
virtual float getFocus () const =0
virtual bool setZoom (float value)=0
virtual float getZoom () const =0
virtual bool getLensSetting (float &focus, float &zoom) const =0

Detailed Description

Parent class for all cameras with control over the lens system, including zooming.

Cameras without zoom shall set the maxZoom parameter to 0. When deriving a camera, please add all values (which can be set) as parameters to allow construction with application specific settings. During operation value setting by a specific method is more efficient as by setParameters. Camera constants, e.g. the max. and min. focus, should be defined as constant parameters.

Please note that the camera may take a little while until a focus, zoom, etc. position is reached. Thus the values in the parameters and those returned by the get-methods may differ.

The parameter functionality was reimplemented, following the functor's concept, because of a problem with multiple inheritance, which occures when deriving classed which are e.g. both a camera and a panTiltUnit.


Constructor & Destructor Documentation

lti::camera::camera (  ) 

default constructor

lti::camera::camera ( const parameters par  ) 

Construct a functor using the given parameters.

lti::camera::camera ( const camera other  ) 

copy constructor

Parameters:
other the object to be copied
virtual lti::camera::~camera (  )  [virtual]

destructor


Member Function Documentation

virtual bool lti::camera::autoFocusOn (  )  [pure virtual]

turn on auto focus

Returns:
true on success

Implemented in lti::sonyEviD100P.

virtual bool lti::camera::autoGainOn (  )  [pure virtual]

turn on automatic gain

Returns:
true on success

Implemented in lti::sonyEviD100P.

virtual bool lti::camera::autoShutterSpeedOn (  )  [pure virtual]

turn on automatic choice of the shutter speed

Returns:
true on success

Implemented in lti::sonyEviD100P.

virtual bool lti::camera::autoWhiteBalanceOn (  )  [pure virtual]

turn on automatic white balance

Returns:
true on success

Implemented in lti::sonyEviD100P.

virtual functor* lti::camera::clone (  )  const [pure virtual]

returns a pointer to a clone of this functor.

Implements lti::functor.

Implemented in lti::sonyEviD100P.

camera& lti::camera::copy ( const camera other  ) 

copy data of "other" functor.

Parameters:
other the functor to be copied
Returns:
a reference to this functor object

Reimplemented from lti::functor.

Reimplemented in lti::sonyEviD100P.

virtual float lti::camera::getFocus (  )  const [pure virtual]
Returns:
the current focus

Implemented in lti::sonyEviD100P.

virtual bool lti::camera::getLensSetting ( float &  focus,
float &  zoom 
) const [pure virtual]

Get the focus and zoom values from a single time instant.

Parameters:
focus the current focus value
zoom the current zoom value
Returns:
true on success

Implemented in lti::sonyEviD100P.

const parameters& lti::camera::getParameters (  )  const

returns used parameters

Reimplemented from lti::functor.

Reimplemented in lti::sonyEviD100P.

virtual const char* lti::camera::getTypeName (  )  const [virtual]

returns the name of this type ("camera")

Reimplemented from lti::functor.

Reimplemented in lti::sonyEviD100P.

virtual float lti::camera::getZoom (  )  const [pure virtual]
Returns:
the current zoom.

Implemented in lti::sonyEviD100P.

camera& lti::camera::operator= ( const camera other  ) 

alias for copy member

Parameters:
other the functor to be copied
Returns:
a reference to this functor object

Reimplemented from lti::functor.

Reimplemented in lti::sonyEviD100P.

virtual bool lti::camera::setBlueGain ( float  value  )  [pure virtual]

set the blue gain

Parameters:
value the blue gain value
Returns:
true on success

Implemented in lti::sonyEviD100P.

virtual bool lti::camera::setFocus ( float  value  )  [pure virtual]

set the focus.

Turns off autofocus.

Parameters:
value the focus value
Returns:
true on success

Implemented in lti::sonyEviD100P.

virtual bool lti::camera::setFocusToInfinity (  )  [pure virtual]

set the focus to infiniy.

Turns off autofocus.

Returns:
true on success

Implemented in lti::sonyEviD100P.

virtual bool lti::camera::setGain ( float  value  )  [pure virtual]

set the global gain.

Turns off automatic gain, i.e. sets it to manual mode.

Parameters:
value the gain value
Returns:
true on success

Implemented in lti::sonyEviD100P.

virtual bool lti::camera::setRedGain ( float  value  )  [pure virtual]

set the red gain

Parameters:
value the red gain value
Returns:
true on success

Implemented in lti::sonyEviD100P.

virtual bool lti::camera::setShutterSpeed ( float  value  )  [pure virtual]

set the shutter speed.

Turn off automatic shutter.

Parameters:
value the shutter speed
Returns:
true on success

Implemented in lti::sonyEviD100P.

virtual bool lti::camera::setZoom ( float  value  )  [pure virtual]

set the zoom which the camera shall use next.

Parameters:
value the zoom value
Returns:
true on success

Implemented in lti::sonyEviD100P.


The documentation for this class was generated from the following file:

Generated on Sat Apr 10 15:28:00 2010 for LTI-Lib by Doxygen 1.6.1