Public Member Functions

FCam::Dummy::Sensor Class Reference

The Dummy simulator image sensor class. More...

#include <Sensor.h>

Inheritance diagram for FCam::Dummy::Sensor:
Inheritance graph
[legend]
Collaboration diagram for FCam::Dummy::Sensor:
Collaboration graph
[legend]

List of all members.

Public Member Functions

void capture (const FCam::Shot &)
 Queue up the next shot.
void capture (const std::vector< FCam::Shot > &)
 Queue up a burst of shots.
void stream (const FCam::Shot &)
 Set a shot to be captured when the sensor isn't busy capturing anything else.
void stream (const std::vector< FCam::Shot > &)
 Set a burst to be captured whenever the sensor isn't busy capturing anything else.
bool streaming ()
 Is there a shot or burst currently streaming?
void stopStreaming ()
 Stop the sensor from streaming a shot or burst set with stream.
void start ()
 Power up the sensor, image processor, and the FCam daemon This is done automatically when you call capture for the first time.
void stop ()
 Shut down the sensor, image processor, and the FCam daemon.
virtual int maxExposure () const
 The maximum exposure time supported by this sensor.
virtual int minExposure () const
 The minimum supported exposure time.
virtual int maxFrameTime () const
 The maximum supported frame time.
virtual int minFrameTime () const
 The minimum supported frame time.
virtual float maxGain () const
 The maximum supported gain.
virtual float minGain () const
 The minimum supported gain.
virtual Size minImageSize () const
 The smallest image size.
virtual Size maxImageSize () const
 The largest image size.
virtual int maxHistogramRegions () const
 The maximum supported number of histogram regions.
int rollingShutterTime (const FCam::Shot &) const
 The time difference between the first line exposing and the last line in microseconds, for given shot parameters.
int framesPending () const
 How many frames are in the frame queue (i.e., how many times can you call getFrame before it blocks?
int shotsPending () const
 How many shots are pending.
unsigned short minRawValue () const
 The smallest value to expect when in raw mode.
unsigned short maxRawValue () const
 The largest value to expect when in raw mode.
BayerPattern bayerPattern () const
 Get the bayer pattern of this sensor when in raw mode.
const std::string & manufacturer () const
 The camera's manufacturer.
const std::string & model () const
 The camera's model.
virtual void rawToRGBColorMatrix (int kelvin, float *matrix) const
 Produce a 3x4 affine matrix that maps from sensor RGB to linear-luminance sRGB at the given white balance.
FCam::Dummy::Frame getFrame ()
 Get the next frame.

Detailed Description

The Dummy simulator image sensor class.

This works without any camera hardware, providing simulated test images or images loaded from DNG files through the same capture/getFrame interface as the real sensors. Its simulation capabilites are very limited, but sufficient for basic testing of UI or image processing functionality using x86 Qt simulators or arm emulators, such as the ones included in the Nokia Qt SDK. The sensor simulates frame duration, exposure, and gain.

Definition at line 24 of file Sensor.h.


Member Function Documentation

void FCam::Dummy::Sensor::capture ( const FCam::Shot  )  [virtual]

Queue up the next shot.

Makes a deep copy of the argument.

Implements FCam::Sensor.

Definition at line 27 of file Sensor.cpp.

void FCam::Dummy::Sensor::capture ( const std::vector< FCam::Shot > &   )  [virtual]

Queue up a burst of shots.

Makes a deep copy of the argument.

Implements FCam::Sensor.

Definition at line 49 of file Sensor.cpp.

void FCam::Dummy::Sensor::stream ( const FCam::Shot s  )  [virtual]

Set a shot to be captured when the sensor isn't busy capturing anything else.

Makes a deep copy of the argument.

Implements FCam::Sensor.

Definition at line 83 of file Sensor.cpp.

void FCam::Dummy::Sensor::stream ( const std::vector< FCam::Shot > &   )  [virtual]

Set a burst to be captured whenever the sensor isn't busy capturing anything else.

Makes a deep copy of the argument.

Implements FCam::Sensor.

Definition at line 101 of file Sensor.cpp.

void FCam::Dummy::Sensor::stopStreaming (  )  [virtual]

Stop the sensor from streaming a shot or burst set with stream.

The sensor will continue to run. To turn off the sensor completely see Sensor::stop

Implements FCam::Sensor.

Definition at line 128 of file Sensor.cpp.

void FCam::Dummy::Sensor::start (  )  [virtual]

Power up the sensor, image processor, and the FCam daemon This is done automatically when you call capture for the first time.

Implements FCam::Sensor.

Definition at line 135 of file Sensor.cpp.

void FCam::Dummy::Sensor::stop (  )  [virtual]

Shut down the sensor, image processor, and the FCam daemon.

Call this to save power and/or processing cycles while your program is doing something unrelated to taking pictures.

Implements FCam::Sensor.

Definition at line 143 of file Sensor.cpp.

virtual int FCam::Dummy::Sensor::maxExposure (  )  const [inline, virtual]

The maximum exposure time supported by this sensor.

Implements FCam::Sensor.

Definition at line 45 of file Sensor.h.

virtual int FCam::Dummy::Sensor::maxFrameTime (  )  const [inline, virtual]

The maximum supported frame time.

Implements FCam::Sensor.

Definition at line 49 of file Sensor.h.

virtual float FCam::Dummy::Sensor::minGain (  )  const [inline, virtual]

The minimum supported gain.

Defaults to 1.0.

Reimplemented from FCam::Sensor.

Definition at line 55 of file Sensor.h.

int FCam::Dummy::Sensor::rollingShutterTime ( const FCam::Shot  )  const [virtual]

The time difference between the first line exposing and the last line in microseconds, for given shot parameters.

Implements FCam::Sensor.

Definition at line 169 of file Sensor.cpp.

int FCam::Dummy::Sensor::shotsPending (  )  const [virtual]

How many shots are pending.

This includes frames in the frame queue, shots currently in the pipeline, and shots in the capture queue. Stop streaming (stopStreaming) and get frames (getFrame) until this hits zero to completely drain the system.

Implements FCam::Sensor.

Definition at line 198 of file Sensor.cpp.

unsigned short FCam::Dummy::Sensor::minRawValue (  )  const [virtual]

The smallest value to expect when in raw mode.

Implements FCam::Sensor.

Definition at line 202 of file Sensor.cpp.

unsigned short FCam::Dummy::Sensor::maxRawValue (  )  const [virtual]

The largest value to expect when in raw mode.

Implements FCam::Sensor.

Definition at line 203 of file Sensor.cpp.

BayerPattern FCam::Dummy::Sensor::bayerPattern (  )  const [virtual]

Get the bayer pattern of this sensor when in raw mode.

Implements FCam::Sensor.

Definition at line 205 of file Sensor.cpp.

const std::string & FCam::Dummy::Sensor::manufacturer (  )  const [virtual]

The camera's manufacturer.

(e.g. Canon).

Implements FCam::Sensor.

Definition at line 207 of file Sensor.cpp.

const std::string & FCam::Dummy::Sensor::model (  )  const [virtual]

The camera's model.

Should also include manufacturer (e.g. Canon 400D).

Implements FCam::Sensor.

Definition at line 209 of file Sensor.cpp.

void FCam::Dummy::Sensor::rawToRGBColorMatrix ( int  kelvin,
float *  matrix 
) const [virtual]

Produce a 3x4 affine matrix that maps from sensor RGB to linear-luminance sRGB at the given white balance.

Given in row-major order.

Implements FCam::Sensor.

Definition at line 211 of file Sensor.cpp.

FCam::Dummy::Frame FCam::Dummy::Sensor::getFrame (  ) 

Get the next frame.

We promise that precisely one frame will come back per time capture is called. A reference-counted shared pointer object is returned, so you don't need to worry about deleting it.

Reimplemented from FCam::Sensor.

Definition at line 150 of file Sensor.cpp.


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