libapogee  3.0.3179
Quad.h
1 
13 #ifndef QUAD_INCLUDE_H__
14 #define QUAD_INCLUDE_H__
15 
16 
17 #include "CamGen2Base.h"
18 #include "CameraInfo.h"
19 #include <string>
20 
21 class DLL_EXPORT Quad: public CamGen2Base
22 {
23  public:
24  Quad();
25 
26  virtual ~Quad();
27 
28  void OpenConnection( const std::string & ioType,
29  const std::string & DeviceAddr,
30  const uint16_t FirmwareRev,
31  const uint16_t Id );
32 
33  void CloseConnection();
34 
35  void StartExposure( double Duration, bool IsLight );
36 
37  bool IsPixelReorderOn() { return m_DoPixelReorder; }
38 
39  void SetPixelReorder( const bool TurnOn ) { m_DoPixelReorder = TurnOn; }
40 
41  int32_t GetNumAdChannels();
42 
43  void SetIsQuadBit();
44 
45  void Init();
46 
48  void SetFanMode( Apg::FanMode mode, bool PreCondCheck = true );
49 
50  protected:
51  Quad(const std::string & ioType,
52  const std::string & DeviceAddr);
53 
54  void FixImgFromCamera( const std::vector<uint16_t> & data,
55  std::vector<uint16_t> & out, int32_t rows, int32_t cols );
56 
57  void CreateCamIo(const std::string & ioType,
58  const std::string & DeviceAddr);
59 
60  bool IsRoiCenteredAndSymmetric(uint16_t ccdLen, uint16_t startingPos, uint16_t roiLen );
61 
62  void ExposureAndGetImgRC(uint16_t & r, uint16_t & c);
63 
64  private:
65  void UpdateCfgWithStrDbInfo();
66  void FullCtorInit( const std::string & ioType,
67  const std::string & DeviceAddr );
68 
69  void CfgCamFromId( uint16_t CameraId );
70  void VerifyCamId();
71 
72  const std::string m_fileName;
73  bool m_DoPixelReorder;
74 
75  Quad(const Quad&);
76  Quad& operator=(Quad&);
77 };
78 
79 #endif
virtual void OpenConnection(const std::string &ioType, const std::string &DeviceAddr, const uint16_t FirmwareRev, const uint16_t Id)=0
FanMode
Definition: CameraInfo.h:264
virtual int32_t GetNumAdChannels()=0
camera class for f4320 for Quad
Definition: Quad.h:21
virtual void CloseConnection()=0
virtual void SetFanMode(Apg::FanMode mode, bool PreCondCheck=true)=0
virtual void Init()=0
virtual void StartExposure(double Duration, bool IsLight)=0
virtual Apg::FanMode GetFanMode()=0
This is the base class for the second generation apogee cameras (Ascent, Aspen, etc). This is a derived class of the ApogeeCam, which contains the function common to both Alta and second generation cameras.
Definition: CamGen2Base.h:19