Go to the documentation of this file.00001 #ifndef FCAM_F2_FRAME_H
00002 #define FCAM_F2_FRAME_H
00003
00007
00008 #include "../Frame.h"
00009 #include "Shot.h"
00010 #include "Platform.h"
00011
00012 namespace FCam {
00013 namespace F2 {
00014
00015 class Sensor;
00016
00021 struct _Frame: public FCam::_Frame {
00022 RowSkip::e rowSkip;
00023 ColSkip::e colSkip;
00024 RowBin::e rowBin;
00025 ColBin::e colBin;
00026
00027 int roiStartX;
00028 int roiStartY;
00029
00030 FCam::F2::Shot _shot;
00031
00032 const FCam::F2::Shot &shot() const { return _shot; }
00033 const FCam::Shot &baseShot() const { return shot(); }
00034
00035 const FCam::Platform &platform() const {return ::FCam::F2::Platform::instance();}
00036
00037 _Frame();
00038 };
00039
00045 class Frame: public FCam::Frame {
00046 protected:
00047 const _Frame *get() const { return static_cast<_Frame *>(ptr.get()); }
00048
00049 public:
00050
00055 Frame(_Frame *f=NULL): FCam::Frame(f) {}
00056
00058 RowSkip::e rowSkip() const { return get()->rowSkip; }
00059
00061 ColSkip::e colSkip() const { return get()->colSkip; }
00062
00064 RowBin::e rowBin() const { return get()->rowBin; }
00065
00067 ColBin::e colBin() const { return get()->colBin; }
00068
00073 int roiStartX() const { return get()->roiStartX; }
00074
00079 int roiStartY() const { return get()->roiStartY; }
00080
00084 const FCam::F2::Shot &shot() const {
00085 return get()->shot();
00086 }
00087
00088 };
00089
00090 }
00091 }
00092
00093 #endif