25 #ifndef __BIASVIDEOSOURCE_PMDZESS_HH__
26 #define __BIASVIDEOSOURCE_PMDZESS_HH__
29 # error The PMD-cameras can only be run under windows.
32 #include <VideoSource/VideoSource_Base.hh>
33 #include <Image/Camera.hh>
34 #include <bias_config.h>
36 #include <Image/PMDImageProc.hh>
67 if ((type < 0)||(type > 3)) {
68 BIASERR(
"Invalid type given!!!");
76 virtual int OpenDevice();
78 virtual int OpenDevice(
int camNr);
80 virtual int CloseDevice();
83 virtual int PreGrab();
84 virtual int PostGrab();
102 virtual int SetShutter3D(
float exptime);
104 int SetShutter2D(
float exptime);
106 int SetGain2D(
float g);
108 virtual float GetShutter3D();
109 float GetShutter2D();
113 int SetModulationFrequency(
int dModulationFrequency);
115 int GetModulationFrequency();
118 DepthImg_.SetTime(sec, usec);
119 ModCoeffImg_.SetTime(sec, usec);
120 img2D_.SetTime(sec, usec);
126 if (!DepthImg_.IsEmpty()) {
136 if (!ModCoeffImg_.IsEmpty()) {
137 image = ModCoeffImg_;
146 if (!img2D_.IsEmpty()) {
156 BIASERR(
"Always generating new UUIDS for PMD images");
161 void DepthImageFloatFromDouble_(
double* data,
Image<float> &dst);
164 void ImageFloatFromDouble_(
double* data,
Image<float> &dst);
167 int type_,
use2D_, doCalcs_, phaseAlgorithm_;
168 unsigned int modulationsFrequenz_,
Width2D_, Height2D_;
185 #endif //__VIDEOSOURCE_PMDZESS_HH__
represents Zess PMD camera driver interface TODO: include support for normal images (2DImg_)...
Defines a common interface to different devices.
void SetGenerateNewUIDs(bool s)
int GrabSingleDepth(Camera< float > &image)
Returns the depth image.
void SetBitFile(std::string file)
int GrabSingle2D(Camera< unsigned char > &image)
Returns the High Res 2D image.
BIAS::Camera< unsigned char > imgPMD2D_
void SetTime(long sec, long usec)
This is the base class for images in BIAS.
int GrabSingleModCoeff(Camera< float > &image)
Returns the amplitude image.
BIAS::Camera< float > ModCoeffImg_