libapogee
3.0.3079
|
Implementation of the ascent camera. More...
#include <Ascent.h>
Classes | |
struct | FilterWheelInfo |
Public Types | |
enum | FilterWheelType { FW_UNKNOWN_TYPE = 0, CFW25_6R = 7, CFW31_8R = 8 } |
Public Member Functions | |
void | OpenConnection (const std::string &ioType, const std::string &DeviceAddr, const uint16_t FirmwareRev, const uint16_t Id) |
void | CloseConnection () |
void | FilterWheelOpen (Ascent::FilterWheelType type) |
void | FilterWheelClose () |
void | SetFilterWheelPos (uint16_t pos) |
uint16_t | GetFilterWheelPos () |
ApogeeFilterWheel::Status | GetFilterWheelStatus () |
Ascent::FilterWheelType | GetFilterWheelType () |
std::string | GetFilterWheelName () |
uint16_t | GetFilterWheelMaxPositions () |
void | StartExposure (double Duration, bool IsLight) |
int32_t | GetNumAdChannels () |
void | Init () |
bool | IsDualReadoutSupported () |
void | SetDualReadout (bool TurnOn) |
bool | GetDualReadout () |
Apg::FanMode | GetFanMode () |
void | SetFanMode (Apg::FanMode mode, bool PreCondCheck=true) |
Protected Member Functions | |
Ascent (const std::string &ioType, const std::string &DeviceAddr) | |
void | FixImgFromCamera (const std::vector< uint16_t > &data, std::vector< uint16_t > &out, int32_t rows, int32_t cols) |
void | CreateCamIo (const std::string &ioType, const std::string &DeviceAddr) |
void | ExposureAndGetImgRC (uint16_t &r, uint16_t &c) |
void | UpdateCamRegIfNeeded () |
void | SetIsInterlineBit () |
void | SetIsAscentBit () |
Implementation of the ascent camera.
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.
void Ascent::CloseConnection | ( | ) | [virtual] |
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 |
Implements ApogeeCam.
void Ascent::FilterWheelClose | ( | ) |
Closes the connection to the Ascent filter wheel
std::runtime_error |
void Ascent::FilterWheelOpen | ( | Ascent::FilterWheelType | type | ) |
bool Ascent::GetDualReadout | ( | ) |
Apg::FanMode Ascent::GetFanMode | ( | ) | [virtual] |
Retruns current fan mode. Ascents always return Apg::FanMode_Off.
std::runtime_error |
Implements ApogeeCam.
uint16_t Ascent::GetFilterWheelMaxPositions | ( | ) |
Returns The maximum number of filter wheel position
std::runtime_error |
std::string Ascent::GetFilterWheelName | ( | ) |
Returns Current filter wheel name
std::runtime_error |
uint16_t Ascent::GetFilterWheelPos | ( | ) |
Returns the current filter wheel position.
std::runtime_error |
Returns the current status of the filter wheel
std::runtime_error |
Ascent::FilterWheelType Ascent::GetFilterWheelType | ( | ) | [inline] |
Returns Current filter wheel type
int32_t Ascent::GetNumAdChannels | ( | ) | [virtual] |
Returns the number of channels on the camera's AD converters.
std::runtime_error |
Implements ApogeeCam.
void Ascent::Init | ( | ) | [virtual] |
Method for initializing the Apogee camera system. Must be called once before image acquisition.
std::runtime_error |
Implements ApogeeCam.
bool Ascent::IsDualReadoutSupported | ( | ) |
Returns true if dual readout is support on this camera model
void Ascent::OpenConnection | ( | const std::string & | ioType, |
const std::string & | DeviceAddr, | ||
const uint16_t | FirmwareRev, | ||
const uint16_t | Id | ||
) | [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 |
Implements ApogeeCam.
void Ascent::SetDualReadout | ( | bool | TurnOn | ) |
Toggles dual readout (data digitzation via 2 ADC's) mode for cameras that support this feature. This function will throw an exception if the calling program tries to activiate this feature on a camera that does not support this mode
[in] | TurnOn | true to activate, false to deactivate (single readout mode) |
std::runtime_error |
void Ascent::SetFanMode | ( | Apg::FanMode | mode, |
bool | PreCondCheck = true |
||
) | [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 |
Implements ApogeeCam.
void Ascent::SetFilterWheelPos | ( | uint16_t | pos | ) |
Sets the filter position to the input value
[in] | pos | Desired position. Valid range is 0 to GetFilterWheelMaxPositions() - 1. |
std::runtime_error |
void Ascent::StartExposure | ( | double | Duration, |
bool | IsLight | ||
) | [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 |
Implements ApogeeCam.