Base class for apogee cameras. More...
#include <ApogeeCam.h>
Public Member Functions | |
void | Reset () |
uint16_t | ReadReg (uint16_t reg) |
void | WriteReg (uint16_t reg, uint16_t value) |
void | SetRoiNumRows (uint16_t rows) |
void | SetRoiNumCols (uint16_t cols) |
uint16_t | GetRoiNumRows () |
uint16_t | GetRoiNumCols () |
void | SetRoiStartRow (uint16_t row) |
void | SetRoiStartCol (uint16_t col) |
uint16_t | GetRoiStartRow () |
uint16_t | GetRoiStartCol () |
void | SetRoiBinRow (uint16_t bin) |
uint16_t | GetRoiBinRow () |
void | SetRoiBinCol (uint16_t bin) |
uint16_t | GetRoiBinCol () |
uint16_t | GetFirmwareRev () |
void | SetImageCount (uint16_t count) |
uint16_t | GetImageCount () |
uint16_t | GetImgSequenceCount () |
void | SetSequenceDelay (double delay) |
double | GetSequenceDelay () |
void | SetVariableSequenceDelay (bool variable) |
bool | GetVariableSequenceDelay () |
void | SetTdiRate (double TdiRate) |
double | GetTdiRate () |
void | SetTdiRows (uint16_t TdiRows) |
uint16_t | GetTdiRows () |
uint16_t | GetTdiCounter () |
void | SetTdiBinningRows (uint16_t bin) |
uint16_t | GetTdiBinningRows () |
void | SetKineticsSectionHeight (uint16_t height) |
uint16_t | GetKineticsSectionHeight () |
void | SetKineticsSections (uint16_t sections) |
uint16_t | GetKineticsSections () |
void | SetKineticsShiftInterval (double interval) |
double | GetKineticsShiftInterval () |
void | SetShutterStrobePosition (double position) |
double | GetShutterStrobePosition () |
void | SetShutterStrobePeriod (double period) |
double | GetShutterStrobePeriod () |
void | SetShutterCloseDelay (double delay) |
double | GetShutterCloseDelay () |
void | SetCoolerBackoffPoint (double point) |
double | GetCoolerBackoffPoint () |
void | SetCoolerSetPoint (double point) |
double | GetCoolerSetPoint () |
Apg::CameraMode | GetCameraMode () |
void | SetCameraMode (Apg::CameraMode mode) |
void | SetFastSequence (bool TurnOn) |
bool | IsFastSequenceOn () |
void | SetBulkDownload (bool TurnOn) |
bool | IsBulkDownloadOn () |
void | SetIoPortAssignment (uint16_t assignment) |
uint16_t | GetIoPortAssignment () |
void | SetIoPortBlankingBits (uint16_t blankingBits) |
uint16_t | GetIoPortBlankingBits () |
void | SetIoPortDirection (uint16_t direction) |
uint16_t | GetIoPortDirection () |
void | SetIoPortData (uint16_t data) |
uint16_t | GetIoPortData () |
void | SetPreFlash (bool TurnOn) |
bool | GetPreFlash () |
void | SetExternalTrigger (bool TurnOn, Apg::TriggerMode trigMode, Apg::TriggerType trigType) |
bool | IsTriggerNormEachOn () |
bool | IsTriggerNormGroupOn () |
bool | IsTriggerTdiKinEachOn () |
bool | IsTriggerTdiKinGroupOn () |
bool | IsTriggerExternalShutterOn () |
bool | IsTriggerExternalReadoutOn () |
void | SetShutterState (Apg::ShutterState state) |
Apg::ShutterState | GetShutterState () |
bool | IsShutterForcedOpen () |
bool | IsShutterForcedClosed () |
bool | IsShutterOpen () |
void | SetShutterAmpCtrl (bool TurnOn) |
bool | IsShutterAmpCtrlOn () |
void | SetCooler (bool TurnOn) |
Apg::CoolerStatus | GetCoolerStatus () |
bool | IsCoolerOn () |
double | GetTempCcd () |
void | SetCcdAdcResolution (Apg::Resolution res) |
Apg::Resolution | GetCcdAdcResolution () |
void | SetCcdAdcSpeed (Apg::AdcSpeed speed) |
Apg::AdcSpeed | GetCcdAdcSpeed () |
uint16_t | GetMaxBinCols () |
uint16_t | GetMaxBinRows () |
uint16_t | GetMaxImgCols () |
uint16_t | GetMaxImgRows () |
uint16_t | GetTotalRows () |
uint16_t | GetTotalCols () |
uint16_t | GetNumOverscanCols () |
bool | IsInterline () |
CamModel::PlatformType | GetPlatformType () |
void | SetLedAState (Apg::LedState state) |
Apg::LedState | GetLedAState () |
void | SetLedBState (Apg::LedState state) |
Apg::LedState | GetLedBState () |
void | SetLedMode (Apg::LedMode mode) |
Apg::LedMode | GetLedMode () |
std::string | GetInfo () |
std::string | GetModel () |
std::string | GetSensor () |
void | SetFlushCommands (bool Disable) |
bool | AreFlushCmdsDisabled () |
void | SetPostExposeFlushing (bool Disable) |
bool | IsPostExposeFlushingDisabled () |
double | GetPixelWidth () |
double | GetPixelHeight () |
double | GetMinExposureTime () |
double | GetMaxExposureTime () |
bool | IsColor () |
bool | IsCoolingSupported () |
bool | IsCoolingRegulated () |
double | GetInputVoltage () |
CamModel::InterfaceType | GetInterfaceType () |
void | GetUsbVendorInfo (uint16_t &VendorId, uint16_t &ProductId, uint16_t &DeviceId) |
bool | IsCCD () |
void | PauseTimer (bool TurnOn) |
bool | IsSerialASupported () |
bool | IsSerialBSupported () |
void | SetFlushBinningRows (uint16_t bin) |
uint16_t | GetFlushBinningRows () |
bool | IsOverscanDigitized () |
void | SetDigitizeOverscan (const bool TurnOn) |
void | SetAdcGain (uint16_t gain, int32_t ad, int32_t channel) |
uint16_t | GetAdcGain (int32_t ad, int32_t channel) |
void | SetAdcOffset (uint16_t offset, int32_t ad, int32_t channel) |
uint16_t | GetAdcOffset (int32_t ad, int32_t channel) |
bool | IsInitialized () |
bool | IsConnected () |
void | SetAdSimMode (bool TurnOn) |
bool | IsAdSimModeOn () |
void | SetLedBrightness (double PercentIntensity) |
double | GetLedBrightness () |
std::string | GetDriverVersion () |
std::string | GetUsbFirmwareVersion () |
std::string | GetSerialNumber () |
void | CloseConnection () |
virtual void | OpenConnection (const std::string &ioType, const std::string &DeviceAddr, const uint16_t FirmwareRev, const uint16_t Id)=0 |
virtual void | Init ()=0 |
virtual void | StartExposure (double Duration, bool IsLight)=0 |
virtual CameraStatusRegs | GetStatus ()=0 |
virtual Apg::Status | GetImagingStatus ()=0 |
virtual void | GetImage (std::vector< uint16_t > &out)=0 |
virtual void | StopExposure (bool Digitize)=0 |
virtual uint32_t | GetAvailableMemory ()=0 |
virtual int32_t | GetNumAds ()=0 |
virtual int32_t | GetNumAdChannels ()=0 |
virtual double | GetCoolerDrive ()=0 |
virtual void | SetFanMode (Apg::FanMode mode, bool PreCondCheck=true)=0 |
virtual Apg::FanMode | GetFanMode ()=0 |
virtual double | GetTempHeatsink ()=0 |
Protected Member Functions | |
ApogeeCam (CamModel::PlatformType platform) | |
void | VerifyFrmwrRev () |
void | LogConnectAndDisconnect (bool Connect) |
void | ExectuePreFlash () |
void | SetExpsoureTime (double Duration) |
void | IssueExposeCmd (bool IsLight) |
void | IsThereAStatusError (uint16_t statusReg) |
bool | IsImgDone (const CameraStatusRegs &statusObj) |
Apg::Status | LogAndReturnStatus (Apg::Status status, const CameraStatusRegs &statusObj) |
void | SupsendCooler (bool &resume) |
void | ResumeCooler () |
void | WaitForCoolerSuspendBit (const uint16_t mask, const bool IsHigh) |
void | InitShutterCloseDelay () |
void | StopExposureModeNorm (bool Digitize) |
void | Reset (bool Flush) |
void | HardStopExposure (const std::string &msg) |
void | GrabImageAndThrowItAway () |
void | AdcParamCheck (const int32_t ad, const int32_t channel, const std::string &fxName) |
void | SetNumAdOutputs (const uint16_t num) |
bool | CheckAndWaitForStatus (Apg::Status desired, Apg::Status &acutal) |
void | CancelExposureNoThrow () |
double | DefaultGetTempHeatsink () |
void | DefaultInit () |
void | ClearAllRegisters () |
virtual void | CfgCamFromId (uint16_t CameraId)=0 |
virtual void | ExposureAndGetImgRC (uint16_t &r, uint16_t &c)=0 |
virtual uint16_t | ExposureZ ()=0 |
virtual uint16_t | GetImageZ ()=0 |
virtual uint16_t | GetIlluminationMask ()=0 |
virtual void | FixImgFromCamera (const std::vector< uint16_t > &data, std::vector< uint16_t > &out, int32_t rows, int32_t cols)=0 |
Protected Attributes | |
std::tr1::shared_ptr< CameraIo > | m_CamIo |
std::tr1::shared_ptr < PlatformData > | m_CameraConsts |
std::tr1::shared_ptr< CApnCamData > | m_CamCfgData |
std::tr1::shared_ptr< ModeFsm > | m_CamMode |
std::tr1::shared_ptr < CcdAcqParams > | m_CcdAcqSettings |
CamModel::PlatformType | m_PlatformType |
const std::string | m_fileName |
uint16_t | m_FirmwareVersion |
uint16_t | m_Id |
uint16_t | m_NumImgsDownloaded |
bool | m_ImageInProgress |
bool | m_IsPreFlashOn |
bool | m_IsInitialized |
bool | m_IsConnected |
Base class for apogee cameras.
This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
Copyright(c) 2009 Apogee Instruments, Inc.
bool ApogeeCam::AreFlushCmdsDisabled | ( | ) |
Retruns if flushing commands have been disabled.
std::runtime_error |
void ApogeeCam::CloseConnection | ( | ) |
Closes the IO connection to the camera. IMPORTANT: If this call is made if camera is in an error condition, then the function will try to reset the interface. Thus it is not guaranteed that the address for the camera will be the same after this function is called.
std::runtime_error |
uint16_t ApogeeCam::GetAdcGain | ( | int32_t | ad, | |
int32_t | channel | |||
) |
This function returns the analog to digital converter gain value for the given ad and channel.
[in] | ad | The analog to digital convert to query. Valid range is 0 to 1 - GetNumAds(). |
[in] | channel | Channel on the ADC to query. Valid range is 0 to 1 - GetNumAdChannels(). |
std::runtime_error |
uint16_t ApogeeCam::GetAdcOffset | ( | int32_t | ad, | |
int32_t | channel | |||
) |
This function returns the analog to digital converter offset value for the given ad and channel.
[in] | ad | The analog to digital convert to query. Valid range is 0 to 1 - GetNumAds(). |
[in] | channel | Channel on the ADC to query. Valid range is 0 to 1 - GetNumAdChannels(). |
std::runtime_error |
virtual uint32_t ApogeeCam::GetAvailableMemory | ( | ) | [pure virtual] |
Returns the amount of available memory for storing images in terms of kilobytes (KB).
std::runtime_error |
Implemented in Alta, and CamGen2Base.
Apg::CameraMode ApogeeCam::GetCameraMode | ( | ) |
Returns the camera's operational mode.
std::runtime_error |
Apg::Resolution ApogeeCam::GetCcdAdcResolution | ( | ) |
Returns the camera's digitization resolution.
std::runtime_error |
Apg::AdcSpeed ApogeeCam::GetCcdAdcSpeed | ( | ) |
Returns the camera's acquisition speed.
std::runtime_error |
double ApogeeCam::GetCoolerBackoffPoint | ( | ) |
Returns the cooler backoff temperature in Celsius.
std::runtime_error |
virtual double ApogeeCam::GetCoolerDrive | ( | ) | [pure virtual] |
Drive level applied to the temp controller. Expressed as a percentage from 0% to 100%.
std::runtime_error |
Implemented in Alta, and CamGen2Base.
double ApogeeCam::GetCoolerSetPoint | ( | ) |
Returns the desired cooler temperature in Celsius.
std::runtime_error |
Apg::CoolerStatus ApogeeCam::GetCoolerStatus | ( | ) |
Returns the current cooler status
std::runtime_error |
std::string ApogeeCam::GetDriverVersion | ( | ) |
On Windows returns device driver version
std::runtime_error |
virtual Apg::FanMode ApogeeCam::GetFanMode | ( | ) | [pure virtual] |
Retruns current fan mode. Ascents always return Apg::FanMode_Off.
std::runtime_error |
Implemented in Alta, and CamGen2Base.
uint16_t ApogeeCam::GetFirmwareRev | ( | ) |
Version number of the camera control firmware.
std::runtime_error |
uint16_t ApogeeCam::GetFlushBinningRows | ( | ) |
Returns the row (vertical) binning value used during flushing operations.
std::runtime_error |
virtual void ApogeeCam::GetImage | ( | std::vector< uint16_t > & | out | ) | [pure virtual] |
Downloads the image data from the camera.
[out] | out | Vector that will recieve the image data |
std::runtime_error |
Implemented in Alta, and CamGen2Base.
uint16_t ApogeeCam::GetImageCount | ( | ) |
Returns the number of sequence images set by the user.
std::runtime_error |
virtual Apg::Status ApogeeCam::GetImagingStatus | ( | ) | [pure virtual] |
Returns the current imaging state of the camera.
std::runtime_error |
Implemented in Alta, and CamGen2Base.
uint16_t ApogeeCam::GetImgSequenceCount | ( | ) |
Returns the number of images in a sequence the camera has acquired. The camera updates this value after the StartExposure function has been called.
std::runtime_error |
std::string ApogeeCam::GetInfo | ( | ) |
Returns information on the camera such as model, sensor, ids, etc.
std::runtime_error |
double ApogeeCam::GetInputVoltage | ( | ) |
Returns the operating input voltage to the camera.
std::runtime_error |
CamModel::InterfaceType ApogeeCam::GetInterfaceType | ( | ) |
Retruns the camera interface type.
std::runtime_error |
uint16_t ApogeeCam::GetIoPortAssignment | ( | ) |
Returns the I/O port's signal usage.
std::runtime_error |
uint16_t ApogeeCam::GetIoPortBlankingBits | ( | ) |
std::runtime_error |
uint16_t ApogeeCam::GetIoPortData | ( | ) |
Returns the I/O port data.
std::runtime_error |
uint16_t ApogeeCam::GetIoPortDirection | ( | ) |
Returns the IO Port Direction.
std::runtime_error |
uint16_t ApogeeCam::GetKineticsSectionHeight | ( | ) |
Returns the vertical height for a Kinetics Mode section.
std::runtime_error |
uint16_t ApogeeCam::GetKineticsSections | ( | ) |
Retruns the number of sections in a Kinetics Mode image.
std::runtime_error |
double ApogeeCam::GetKineticsShiftInterval | ( | ) |
Returns the incremental rate between Kinetics Mode sections.
std::runtime_error |
Apg::LedState ApogeeCam::GetLedAState | ( | ) |
Returns the state of LED light A.
std::runtime_error |
double ApogeeCam::GetLedBrightness | ( | ) |
Returns brightness/intensity level of the LED light within the cap of the camera head. Expressed as a percentage from 0% to 100%.
std::runtime_error |
Apg::LedState ApogeeCam::GetLedBState | ( | ) |
Returns the state of LED light B.
std::runtime_error |
Apg::LedMode ApogeeCam::GetLedMode | ( | ) |
Returns the mode of LED status lights.
std::runtime_error |
uint16_t ApogeeCam::GetMaxBinCols | ( | ) |
Returns the maximum number of binning columns (horizontal) for the camera.
std::runtime_error |
uint16_t ApogeeCam::GetMaxBinRows | ( | ) |
Returns the maximum number of binning rows (vertical) for the camera.
std::runtime_error |
double ApogeeCam::GetMaxExposureTime | ( | ) |
Returns the maximum exposure duration.
std::runtime_error |
uint16_t ApogeeCam::GetMaxImgCols | ( | ) |
Returns number of imaging columns in terms of unbinned pixels. This value depends on the camera's sensor geometry.
std::runtime_error |
uint16_t ApogeeCam::GetMaxImgRows | ( | ) |
Returns number of imaging rows in terms of unbinned pixels. This value depends on the camera's sensor geometry.
std::runtime_error |
double ApogeeCam::GetMinExposureTime | ( | ) |
Returns the suggested minimum exposure duration, based on the camera's configuration.
std::runtime_error |
std::string ApogeeCam::GetModel | ( | ) |
Returns a camera model.
std::runtime_error |
virtual int32_t ApogeeCam::GetNumAdChannels | ( | ) | [pure virtual] |
virtual int32_t ApogeeCam::GetNumAds | ( | ) | [pure virtual] |
Returns the number of analog to digital (AD) converters on the camera.
std::runtime_error |
Implemented in Alta, and CamGen2Base.
uint16_t ApogeeCam::GetNumOverscanCols | ( | ) |
Returns the number of overscan columns in terms of unbinned pixels. This variable depends upon the particular sensor used within the camera.
std::runtime_error |
double ApogeeCam::GetPixelHeight | ( | ) |
Returns sensor's pixels height in micrometers.
std::runtime_error |
double ApogeeCam::GetPixelWidth | ( | ) |
Returns sensor's pixels width in micrometers.
std::runtime_error |
CamModel::PlatformType ApogeeCam::GetPlatformType | ( | ) |
Returns camera platform type.
std::runtime_error |
bool ApogeeCam::GetPreFlash | ( | ) | [inline] |
Returns IR pre-flash state ( true = turned on, false = turned off )
std::runtime_error |
uint16_t ApogeeCam::GetRoiBinCol | ( | ) |
Returns the number of binning columns.
std::runtime_error |
uint16_t ApogeeCam::GetRoiBinRow | ( | ) |
Returns the number of binning rows.
std::runtime_error |
uint16_t ApogeeCam::GetRoiNumCols | ( | ) |
Returns the number of imaging ROI columns
std::runtime_error |
uint16_t ApogeeCam::GetRoiNumRows | ( | ) |
Returns the number of imaging ROI rows
std::runtime_error |
uint16_t ApogeeCam::GetRoiStartCol | ( | ) |
Returns the starting column for the imaging ROI
std::runtime_error |
uint16_t ApogeeCam::GetRoiStartRow | ( | ) |
Returns the starting row for the imaging ROI
std::runtime_error |
std::string ApogeeCam::GetSensor | ( | ) |
Returns the sensor model installed in the camera
std::runtime_error |
double ApogeeCam::GetSequenceDelay | ( | ) |
Returns he amount of time between the close of the shutter and the beginning of the sensor readout.
std::runtime_error |
std::string ApogeeCam::GetSerialNumber | ( | ) |
Returns a special OEM-specific serial number.
std::runtime_error |
double ApogeeCam::GetShutterCloseDelay | ( | ) |
Returns the shutter close delay
std::runtime_error |
Apg::ShutterState ApogeeCam::GetShutterState | ( | ) |
Returns the current shutter state.
std::runtime_error |
double ApogeeCam::GetShutterStrobePeriod | ( | ) |
Returns ths shutter strobe period.
std::runtime_error |
double ApogeeCam::GetShutterStrobePosition | ( | ) |
Returns the shutter strobe position.
std::runtime_error |
virtual CameraStatusRegs ApogeeCam::GetStatus | ( | ) | [pure virtual] |
Returns the camera's status registers as a CameraStatusRegs class.
std::runtime_error |
Implemented in Alta, and CamGen2Base.
uint16_t ApogeeCam::GetTdiBinningRows | ( | ) |
Returns the number TDI binning rows
std::runtime_error |
uint16_t ApogeeCam::GetTdiCounter | ( | ) |
Dynamically incrementing count during a TDI image. The final value of TDICounter equals TDIRows. Valid range is between 1 and 65535.
std::runtime_error |
double ApogeeCam::GetTdiRate | ( | ) |
Returns the rate between TDI rows.
std::runtime_error |
uint16_t ApogeeCam::GetTdiRows | ( | ) |
Returns the total number of rows in the TDI image.
std::runtime_error |
double ApogeeCam::GetTempCcd | ( | ) |
Returns the current CCD temperature in degrees Celsius.
std::runtime_error |
virtual double ApogeeCam::GetTempHeatsink | ( | ) | [pure virtual] |
uint16_t ApogeeCam::GetTotalCols | ( | ) |
Returns the total number of physical columns on the CCD. This value depends on the camera's sensor geometry.
std::runtime_error |
uint16_t ApogeeCam::GetTotalRows | ( | ) |
Returns the total number of physical rows on the CCD. This value depends on the camera's sensor geometry.
std::runtime_error |
std::string ApogeeCam::GetUsbFirmwareVersion | ( | ) |
Returns USB firmware version.
std::runtime_error |
void ApogeeCam::GetUsbVendorInfo | ( | uint16_t & | VendorId, | |
uint16_t & | ProductId, | |||
uint16_t & | DeviceId | |||
) |
Returns the USB ids associated with the camera system.
[out] | VendorId | USB vendor id |
[out] | ProductId | USB product id |
[out] | DeviceId | USB device id |
std::runtime_error |
bool ApogeeCam::GetVariableSequenceDelay | ( | ) |
Returns the variable sequence delay state.
std::runtime_error |
virtual void ApogeeCam::Init | ( | ) | [pure virtual] |
bool ApogeeCam::IsAdSimModeOn | ( | ) |
Status of camera simulator mode
std::runtime_error |
bool ApogeeCam::IsBulkDownloadOn | ( | ) |
Retruns the state of bulk downloads (true = on, false = off)
std::runtime_error |
bool ApogeeCam::IsCCD | ( | ) |
Returns true if the sensor is a CCD; false if CMOS
std::runtime_error |
bool ApogeeCam::IsColor | ( | ) |
Returns true is CCD sensor has color dyes, and false otherwise
std::runtime_error |
bool ApogeeCam::IsConnected | ( | ) | [inline] |
Returns if the host is connected to a camera
bool ApogeeCam::IsCoolerOn | ( | ) |
Returns the state of the camera's cooler (true = on, false = off);
std::runtime_error |
bool ApogeeCam::IsCoolingRegulated | ( | ) |
Returns true if the camera supports regulated cooling, false if regulated cooling is not available.
std::runtime_error |
bool ApogeeCam::IsCoolingSupported | ( | ) |
Returns true if the camera supports cooling, false if no cooling is available.
std::runtime_error |
bool ApogeeCam::IsFastSequenceOn | ( | ) |
Retruns the state of fast sequences (true = on, false = off)
std::runtime_error |
bool ApogeeCam::IsInitialized | ( | ) | [inline] |
Returns if the Init() function has been called.
bool ApogeeCam::IsInterline | ( | ) |
Returns true if the sensor is an Interline CCD and false otherwise.
std::runtime_error |
bool ApogeeCam::IsOverscanDigitized | ( | ) |
std::runtime_error |
bool ApogeeCam::IsPostExposeFlushingDisabled | ( | ) |
Retruns if post exposure flushing has been disabled.
std::runtime_error |
bool ApogeeCam::IsSerialASupported | ( | ) |
Returns whether the camera supports Serial Port A. NOTE: Ascent cameras do not have serial ports.
std::runtime_error |
bool ApogeeCam::IsSerialBSupported | ( | ) |
Returns whether the camera supports Serial Port B. NOTE: Ascent cameras do not have serial ports.
std::runtime_error |
bool ApogeeCam::IsShutterAmpCtrlOn | ( | ) |
Returns shutter amp control state (true = CCD voltage disabled, false = CCD voltage enabled)
std::runtime_error |
bool ApogeeCam::IsShutterForcedClosed | ( | ) |
Returns if the shutter is in the Apg::ShutterState_ForceClosed state (true = yes, false = no)
std::runtime_error |
bool ApogeeCam::IsShutterForcedOpen | ( | ) |
Returns if the shutter is in the Apg::ShutterState_ForceOpen state (true = yes, false = no)
std::runtime_error |
bool ApogeeCam::IsShutterOpen | ( | ) |
Returns shutter state (true = open, false = closed)
std::runtime_error |
bool ApogeeCam::IsTriggerExternalReadoutOn | ( | ) |
Returns true if external readout trigger is on, false if off.
std::runtime_error |
bool ApogeeCam::IsTriggerExternalShutterOn | ( | ) |
Returns true if external shutter trigger is on, false if off.
std::runtime_error |
bool ApogeeCam::IsTriggerNormEachOn | ( | ) |
Returns true if normal each trigger is on, false if off.
std::runtime_error |
bool ApogeeCam::IsTriggerNormGroupOn | ( | ) |
Returns true if normal group trigger is on, false if off.
std::runtime_error |
bool ApogeeCam::IsTriggerTdiKinEachOn | ( | ) |
Returns true if TDI-Kinetrics each trigger is on, false if off.
std::runtime_error |
bool ApogeeCam::IsTriggerTdiKinGroupOn | ( | ) |
Returns true if TDI-Kinetrics group trigger is on, false if off.
std::runtime_error |
virtual void ApogeeCam::OpenConnection | ( | const std::string & | ioType, | |
const std::string & | DeviceAddr, | |||
const uint16_t | FirmwareRev, | |||
const uint16_t | Id | |||
) | [pure virtual] |
Opens a connection from the PC to the camera. The results strings from the FindDeviceUsb::Find() and the FindDeviceEthernet::Find() functions. provide the input into this function.
[in] | ioType | specifies camera IO interface 'usb' or 'ethernet' |
[in] | DeviceAddr | specifies the address of the camera on the interface |
[in] | FirmwareRev | Camera's firmware revision. Used to verify interface connection. |
[in] | Id | Camera's ID. Used to verify interface connection and setup camera specfic parameters. |
std::runtime_error |
void ApogeeCam::PauseTimer | ( | bool | TurnOn | ) |
Pauses the current exposure by closing the shutter and pausing the exposure timer.
[in] | TurnOn | A state variable that controls the pausing of the exposure timer. A value of true will issue a command to pause the timer. A value offalse will issue a command to unpause the timer. Multiple calls with this parameter set consistently to either state (i.e. back-to-back true states) have no effect. |
std::runtime_error |
uint16_t ApogeeCam::ReadReg | ( | uint16_t | reg | ) |
[in] | reg | Register |
std::runtime_error |
void ApogeeCam::Reset | ( | ) |
Resets the camera's internal pixel processing engines, and then starts the system flushing again. This function will cancel and pending expsoures. For more information on when to use this function please review the Exception Handling page.
std::runtime_error |
void ApogeeCam::SetAdcGain | ( | uint16_t | gain, | |
int32_t | ad, | |||
int32_t | channel | |||
) |
Sets the analog to digital converter gain value for the given ad and channel.
[in] | gain | The new gain value. 0-1023 is a valid range for Alta cameras. 0-63 is a valid range for Ascent cameras. |
[in] | ad | The analog to digital convert to set. Valid range is 0 to 1 - GetNumAds(). |
[in] | channel | Channel on the ADC to set. Valid range is 0 to 1 - GetNumAdChannels(). |
std::runtime_error |
void ApogeeCam::SetAdcOffset | ( | uint16_t | offset, | |
int32_t | ad, | |||
int32_t | channel | |||
) |
Sets the analog to digital converter offset value for the given ad and channel.
[in] | offset | The new offset value. 0-255 is a valid range for Alta cameras. 0-511 is a valid range for Ascent cameras. |
[in] | ad | The analog to digital convert to set. Valid range is 0 to 1 - GetNumAds(). |
[in] | channel | Channel on the ADC to set. Valid range is 0 to 1 - GetNumAdChannels(). |
std::runtime_error |
void ApogeeCam::SetAdSimMode | ( | bool | TurnOn | ) |
Specifies that the camera operation should be defined using simulated data for image parameters. param [in] TurnOn True turns on simulator mode. False turns of the simulator.
std::runtime_error |
void ApogeeCam::SetBulkDownload | ( | bool | TurnOn | ) |
Enables/Disables how image data will be retrieved from the camera during a sequence. For USB camera systems, this variable is used to determine whether the returned data will be downloaded in bulk, or streamed as it becomes available. By definition, bulk download must be false when the continuous imaging is enabled, since setting this variable true assumes that the number of images in a series is known in advance of starting the exposure. The default value for this variable after initialization is true.
[in] | TurnOn | true enables bulk download, false disables this feature |
std::runtime_error |
void ApogeeCam::SetCameraMode | ( | Apg::CameraMode | mode | ) |
Returns the camera's operational mode. The default value for this variable after initialization is Apg::CameraMode_Normal.
std::runtime_error |
void ApogeeCam::SetCcdAdcResolution | ( | Apg::Resolution | res | ) |
Sets the camera's digitization resolution. NOTE: This feature is scheduled for depreciation and only functional on AltaU cameras. Please use the SetCcdAdcSpeed(Apg::AdcSpeed speed) function; 16bit = Normal, 12bit = Fast.
std::runtime_error |
void ApogeeCam::SetCcdAdcSpeed | ( | Apg::AdcSpeed | speed | ) |
Sets the camera's acquisition speed. The default value after initialization is Apg::AdcSpeed_Normal.
void ApogeeCam::SetCooler | ( | bool | TurnOn | ) |
Sets the state of the camera's cooler
[in] | TurnOn | true = on, false = off |
std::runtime_error |
void ApogeeCam::SetCoolerBackoffPoint | ( | double | point | ) |
Sets the cooler backoff temperature of the cooler subsystem in Celsius. If the cooler is unable to reach the desired cooler set point, the Backoff Point is number of degrees up from the lowest point reached. Used to prevent the cooler from being constant driven with max power to an unreachable temperature. The default value of this variable after initialization can vary depending on camera model, but is typically set at 2.0 degrees Celsius.
[in] | point | Desired backoff point. Must be greater than 0. |
std::runtime_error |
void ApogeeCam::SetCoolerSetPoint | ( | double | point | ) |
Sets the desired cooler temperature in Celsius. If the input set point cannot be reached, the cooler subsystem will determine a new set point based on the backoff point and change the cooler status to Apg::CoolerStatus_Revision. An application should reread this property to see the new set point that the system is using. Once the application rereads this property, the status of Apg::CoolerStatus_Revision will be cleared.
[in] | point | Desired cooler set point |
std::runtime_error |
void ApogeeCam::SetDigitizeOverscan | ( | const bool | TurnOn | ) |
Function is a no op. It is in this interface for backwards compatibility purposes. The way to get the overscan data is to set the ROI to capture it.
[in] | TurnOn | Toggling the digitize overscan variable |
std::runtime_error |
void ApogeeCam::SetExternalTrigger | ( | bool | TurnOn, | |
Apg::TriggerMode | trigMode, | |||
Apg::TriggerType | trigType | |||
) |
Sets the external trigger mode and type. For more information see Hardware Trigger page
[in] | TurnOn | true activates the trigger type and mode, false deactivates it |
[in] | trigMode | Trigger mode |
[in] | trigType | Trigger Type |
std::runtime_error |
virtual void ApogeeCam::SetFanMode | ( | Apg::FanMode | mode, | |
bool | PreCondCheck = true | |||
) | [pure virtual] |
Sets the current fan speed. The default value of this variable after initialization is Apg::FanMode_Low. Ascent cameras do not support programmable fan speed, thus writes using this property have no effect.
[in] | mode | Desired fan mode |
[in] | PreCondCheck | Setting PreCondCheck to false results in the pre-condition checking to be skipped. PreCondCheck should ALWAYS be set to true. |
std::runtime_error |
Implemented in Alta, and CamGen2Base.
void ApogeeCam::SetFastSequence | ( | bool | TurnOn | ) |
Enables/Disables very fast back to back exposures for interline CCDs only. Also referred to as Ratio Mode. The default value for this variable after initialization is false. Note that this property cannot be used in conjunction with the TriggerNormalEach property, since progressive scan is defined as having the least possible time between exposures. However, the FastSequence property may be used with a single trigger to start a series of images (using TriggerNormalGroup).
[in] | TurnOn | true enables fast sequences, false disables this feature |
std::runtime_error |
void ApogeeCam::SetFlushBinningRows | ( | uint16_t | bin | ) |
Sets the row (vertical) binning value used during flushing operations. The default value after camera initialization is sensor-specific. NOTE: This is a specialized property designed for unique experiments. Applications and users will not normally need to modify this variable from the default value.
[in] | bin | The valid range for this property is between 1 and GetMaxBinRows(). |
std::runtime_error |
void ApogeeCam::SetFlushCommands | ( | bool | Disable | ) |
Enables/Disables any flushing command sent by the software to be recognized or unrecognized by the camera control firmware. This property may be used with SetPostExposeFlushing( bool Disable ) to completely stop all flushing operations within the camera. The default value of this variable after initialization is false. WARNING: This is a highly specialized property designed for very unique experiments. Applications and users will not normally need to modify this variable from the default value.
[in] | Disable | True disables flushing, false allows flushing after commands |
std::runtime_error |
void ApogeeCam::SetImageCount | ( | uint16_t | count | ) |
Sets the number of images to take in an image sequence.
[in] | count | Number of image in the sequence to acquire. |
std::runtime_error |
void ApogeeCam::SetIoPortAssignment | ( | uint16_t | assignment | ) |
Defines the signal usage for the I/O port. This function is only valid on AltaU systems.
[in] | assignment | The valid range is for the 6 LSBs, 0x0 to 0x3F. |
std::runtime_error |
void ApogeeCam::SetIoPortBlankingBits | ( | uint16_t | blankingBits | ) |
std::runtime_error |
void ApogeeCam::SetIoPortData | ( | uint16_t | data | ) |
Send data to the I/O port. Applications are responsible for toggling bits, i.e., if Bit 2 of the I/O port is specified as an OUT signal, and a 0x1 is written to this bit, it will remain 0x1 until 0x0 is written to the same bit.
[in] | data | Valid range of this property is for the 6 LSBs, 0x0 to 0x3F. |
std::runtime_error |
void ApogeeCam::SetIoPortDirection | ( | uint16_t | direction | ) |
This function is only valid on AltaU camera systems.
On Ascent camera systems, the direction cannot be configured. Pins 1, 4, and 5 are always input and pins 2, 3, and 6 are always output.
[in] | direction | Valid range is for the 6 LSBs, 0x0 to 0x3F. |
std::runtime_error |
void ApogeeCam::SetKineticsSectionHeight | ( | uint16_t | height | ) |
Set the vertical height for a Kinetics Mode section. Modifying this property also changes the value of the SetTdiBinningRows( uint16_t bin ) variable. The default value for this variable after initialization is 1.
[in] | height | Valid range for this variable is between 1 and the corresponding value of GetMaxBinRows(). |
std::runtime_error |
void ApogeeCam::SetKineticsSections | ( | uint16_t | sections | ) |
Sets the number of sections in a Kinetics Mode image. Modifying this property also changes the value of the SetTdiRows( uint16_t TdiRows )
[in] | sections | Valid range is 1 to 65535. |
std::runtime_error |
void ApogeeCam::SetKineticsShiftInterval | ( | double | interval | ) |
Sets the incremental rate between Kinetics Mode sections. The default value for this variable after initialization is 0.100s. Modifying this property also changes the value of SetTdiRate( double TdiRate ).
[in] | interval | The valid range is from 5.12us to 336ms. |
std::runtime_error |
void ApogeeCam::SetLedAState | ( | Apg::LedState | state | ) |
Sets the state of LED light A.
[in] | state | Desired Apg::LedState |
std::runtime_error |
void ApogeeCam::SetLedBrightness | ( | double | PercentIntensity | ) |
Sets brightness/intensity level of the LED light within the cap of the camera head. The default value of this variable after initialization is 0%.
[in] | PercentIntensity | Valid range is 0-100. |
std::runtime_error |
void ApogeeCam::SetLedBState | ( | Apg::LedState | state | ) |
Sets the state of LED light B.
[in] | state | Desired Apg::LedState |
std::runtime_error |
void ApogeeCam::SetLedMode | ( | Apg::LedMode | mode | ) |
Sets the mode of LED status lights.
[in] | mode | Desired Apg::LedMode |
std::runtime_error |
void ApogeeCam::SetPostExposeFlushing | ( | bool | Disable | ) |
Enables/Disables the camera control firmware to/from immediately beginning an internal flush cycle after an exposure. This property may be used with SetFlushCommands( bool Disable ) to completely stop all flushing operations within the camera. The default value of this variable after initialization is false. WARNING: This is a highly specialized property designed for very unique experiments. Applications and users will not normally need to modify this variable from the default value.
[in] | Disable | True disables flushing, false allows flushing after exposures |
std::runtime_error |
void ApogeeCam::SetPreFlash | ( | bool | TurnOn | ) | [inline] |
Toggles IR pre-flash control. IR pre-flash normalizes the sensor before an image is taken with a flash of IR. false is the default camera state. \ param [in] TurnOn, true turn IR pre-flash on, false turns pre-flash off.
std::runtime_error |
void ApogeeCam::SetRoiBinCol | ( | uint16_t | bin | ) |
Sets the number of columns to bin (horizontal binning). Default value is 1. Binning is not allowed in Apg::AdcSpeed_Video mode or for quad readout ccds.
[in] | bin | Valid range is 1 - GetMaxBinCols() |
std::runtime_error |
void ApogeeCam::SetRoiBinRow | ( | uint16_t | bin | ) |
Sets the number of rows to bin (vertical binning). Default value is 1. Binning is not allowed in Apg::AdcSpeed_Video mode or for quad readout ccds.
[in] | bin | Valid range is 1 - GetMaxBinRows() |
std::runtime_error |
void ApogeeCam::SetRoiNumCols | ( | uint16_t | cols | ) |
Sets the number of imaging ROI columns. The default value is the GetMaxImgCols().
[in] | cols | 1 to GetMaxImgCols() is the valid value range for normal imaging. For imaging the overscan columns maximum is GetMaxImgCols() + GetNumOverscanCols(). |
std::runtime_error |
void ApogeeCam::SetRoiNumRows | ( | uint16_t | rows | ) |
Sets the number of imaging ROI rows The default value is the GetMaxImgRows().
[in] | rows | number of rows, 1 to GetMaxImgRows() is the valid value range. |
std::runtime_error |
void ApogeeCam::SetRoiStartCol | ( | uint16_t | col | ) |
Sets the starting column for the imaging ROI. 0 is the default value.
[in] | col | 0 to GetMaxImgCols() -1 is the valid value range. |
std::runtime_error |
void ApogeeCam::SetRoiStartRow | ( | uint16_t | row | ) |
Sets the starting row for the imaging ROI. 0 is the default value.
[in] | row | 0 to GetMaxImgRows() -1 is the valid value range. |
std::runtime_error |
void ApogeeCam::SetSequenceDelay | ( | double | delay | ) |
Time delay between images of the sequence. Dependent on SetVariableSequenceDelay( bool variable ). The default value of this variable after initialization is 327us.
[in] | delay | The valid range is from 327us to 21.42s. |
std::runtime_error |
void ApogeeCam::SetShutterAmpCtrl | ( | bool | TurnOn | ) |
Enables/disables the CCD voltage while the shutter strobe is high. The default value of this variable after initialization is FALSE.
[in] | TurnOn | true disables the CCD voltage, false enables voltage |
std::runtime_error |
void ApogeeCam::SetShutterCloseDelay | ( | double | delay | ) |
Sets the amount of time between the close of the shutter and the beginning of the sensor readout. The default value of this variable after initialization is camera dependent. NOTE: This is a specialized property designed for unique experiments. Applications and users will not normally need to modify this variable from the default value.
[in] | delay |
std::runtime_error |
void ApogeeCam::SetShutterState | ( | Apg::ShutterState | state | ) |
Set the shutter state.
[in] | state | Desired shutter state |
std::runtime_error |
void ApogeeCam::SetShutterStrobePeriod | ( | double | period | ) |
Sets the period of the shutter strobe appearing on a pin at the experiment interface. The default value of this variable after initialization is 0.001s (1ms).
[in] | period | The minimum valid value is 45ns and maximum value is 2.6ms (40ns/bit resolution). |
std::runtime_error |
void ApogeeCam::SetShutterStrobePosition | ( | double | position | ) |
Sets the delay from the time the exposure begins to the time the rising edge of the shutter strobe period appears on a pin at the experiment interface. The default value of this variable after initialization is 0.001s (1ms).
[in] | position | The minimum valid value is 3.31us and the maximum value is 167ms (2.56us/bit resolution). |
std::runtime_error |
void ApogeeCam::SetTdiBinningRows | ( | uint16_t | bin | ) |
The row (vertical) binning of a TDI image. The default value for this variable after initialization is 1. Modifying this property also changes the value of the SetKineticsSectionHeight( uint16_t height ) property.
[in] | bin | The valid range for this variable is between 1 and the corresponding value of GetMaxBinRows(). |
std::runtime_error |
void ApogeeCam::SetTdiRate | ( | double | TdiRate | ) |
Rate between TDI rows. The default value for this variable after initialization is 0.100s. Modifying this property also changes the value of the SetKineticsShiftInterval( double interval ) property.
[in] | TdiRate | Range is from 5.12us to 336ms. |
std::runtime_error |
void ApogeeCam::SetTdiRows | ( | uint16_t | TdiRows | ) |
Total number of rows in the TDI image. The default value for this variable after initialization is 1. Modifying this property also changes the value of the SetKineticsSections( uint16_t sections ) property.
[in] | TdiRows | Range is between 1 and 65535. |
std::runtime_error |
void ApogeeCam::SetVariableSequenceDelay | ( | bool | variable | ) |
Tells the camera when it should apply the sequeuce delay during an image sequence. The default value of this variable after initialization is true.
[in] | variable | If true, the delay is applied between the end of last readout to beginning of next exposure. If false, delay is a constant time interval from the beginning of the last exposure to the beginning of the next exposure. |
std::runtime_error |
virtual void ApogeeCam::StartExposure | ( | double | Duration, | |
bool | IsLight | |||
) | [pure virtual] |
This method begins the imaging process. The type of exposure taken is depends on various state variables including the CameraMode and TriggerMode.
[in] | Duration | Length of the exposure(s), in seconds. The valid range for this parameter is GetMinExposureTime() to GetMaxExposureTime(). |
[in] | Determines | whether the exposure is a light or dark/bias frame. A light frame requires this parameter to be set to true, while a dark frame requires this parameter to be false. |
std::runtime_error |
virtual void ApogeeCam::StopExposure | ( | bool | Digitize | ) | [pure virtual] |
This method halts an in progress exposure. If this method is called and there is no exposure in progress a std::runtime_error exception is thrown.
[in] | Digitize | If set to true, then the application must call GetImage() to retrieve the image data and to put the camera in a good state for the next exposure. If set to false, then an application should not call GetImage(). |
std::runtime_error |
Implemented in Alta, and CamGen2Base.
void ApogeeCam::WriteReg | ( | uint16_t | reg, | |
uint16_t | value | |||
) |
[in] | reg | Register |
[in] | value | Value to write |
std::runtime_error |