libapogee
3.0.3079
|
00001 00013 #ifndef CAMGEN2BASE_INCLUDE_H__ 00014 #define CAMGEN2BASE_INCLUDE_H__ 00015 00016 #include "ApogeeCam.h" 00017 #include <string> 00018 00019 class DLL_EXPORT CamGen2Base : public ApogeeCam 00020 { 00021 public: 00022 virtual ~CamGen2Base(); 00023 00024 CameraStatusRegs GetStatus(); 00025 Apg::Status GetImagingStatus(); 00026 00027 void GetImage( std::vector<uint16_t> & out ); 00028 00029 void StopExposure( bool Digitize ); 00030 00031 uint32_t GetAvailableMemory(); 00032 00033 int32_t GetNumAds(); 00034 00035 double GetCoolerDrive(); 00036 00037 double GetTempHeatsink(); 00038 00039 protected: 00040 CamGen2Base(const uint16_t FirmwareRev, 00041 const uint16_t Id, 00042 CamModel::PlatformType platform); 00043 00044 CamGen2Base(CamModel::PlatformType platform); 00045 00046 uint16_t ExposureZ(); 00047 00048 uint16_t GetImageZ(); 00049 00050 uint16_t GetIlluminationMask(); 00051 00052 void DefaultStartExposure( double Duration, bool IsLight, bool IssueReset=true ); 00053 00054 private: 00055 const std::string m_fileName; 00056 00057 //disabling the copy ctor and assignment operator 00058 //generated by the compiler - don't want them 00059 //Effective C++ Item 6 00060 CamGen2Base(const CamGen2Base&); 00061 CamGen2Base& operator=(CamGen2Base&); 00062 }; 00063 00064 #endif