libapogee  3.0.3079
apogee/AltaF.h
00001 
00014 #ifndef ALTAF_INCLUDE_H__ 
00015 #define ALTAF_INCLUDE_H__ 
00016 
00017 #include "CamGen2Base.h" 
00018 #include <string>
00019 
00020 class DLL_EXPORT AltaF : public CamGen2Base
00021 { 
00022     public: 
00023         AltaF();
00024 
00025         virtual ~AltaF(); 
00026 
00027         void OpenConnection( const std::string & ioType,
00028              const std::string & DeviceAddr,
00029              const uint16_t FirmwareRev,
00030              const uint16_t Id );
00031 
00032         void CloseConnection();
00033 
00034         void StartExposure( double Duration, bool IsLight );
00035 
00036         int32_t GetNumAdChannels();
00037         
00038         void Init();
00039 
00040         Apg::FanMode GetFanMode();
00041         void SetFanMode( Apg::FanMode mode, bool PreCondCheck = true );
00042 
00043     protected:
00044         void FixImgFromCamera( const std::vector<uint16_t> & data,
00045             std::vector<uint16_t> & out,  int32_t rows, int32_t cols );
00046 
00047         void ExposureAndGetImgRC(uint16_t & r, uint16_t & c);
00048 
00049         void CreateCamIo(const std::string & ioType,
00050             const std::string & DeviceAddr);
00051 
00052         void CfgCamFromId( uint16_t CameraId );
00053 
00054         void VerifyCamId();
00055 
00065         void WriteId2CamReg();
00066 
00067         void SetIsInterlineBit();
00068 
00069         bool AreColsCentered();
00070 
00071         const std::string m_fileName;
00072 
00073     private:
00074         void UpdateCfgWithStrDbInfo();
00075 
00076         //disabling the copy ctor and assignment operator
00077         //generated by the compiler - don't want them
00078         //Effective C++ Item 6
00079         AltaF(const AltaF&);
00080         AltaF& operator=(AltaF&);
00081 }; 
00082 
00083 #endif