Ascent Class Reference

Implementation of the ascent camera. More...

#include <Ascent.h>

Inheritance diagram for Ascent:
CamGen2Base ApogeeCam

List of all members.

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 ()

Detailed Description

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.


Member Enumeration Documentation

Enumerator:
FW_UNKNOWN_TYPE 
CFW25_6R 
CFW31_8R 

Member Function Documentation

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.

Exceptions:
std::runtime_error 

Implements ApogeeCam.

void Ascent::FilterWheelClose (  ) 

Closes the connection to the Ascent filter wheel

Exceptions:
std::runtime_error 
void Ascent::FilterWheelOpen ( Ascent::FilterWheelType  type  ) 

Opens a connection to the Ascent filter wheel

Parameters:
[in] type Filter wheel type attached to the Ascent camera
Exceptions:
std::runtime_error 
bool Ascent::GetDualReadout (  ) 
Returns:
true if dual readout is on, false if it is off (single readout mode)
Apg::FanMode Ascent::GetFanMode (  )  [virtual]

Retruns current fan mode. Ascents always return Apg::FanMode_Off.

Exceptions:
std::runtime_error 

Implements ApogeeCam.

uint16_t Ascent::GetFilterWheelMaxPositions (  ) 

Returns The maximum number of filter wheel position

Exceptions:
std::runtime_error 
std::string Ascent::GetFilterWheelName (  ) 

Returns Current filter wheel name

Exceptions:
std::runtime_error 
uint16_t Ascent::GetFilterWheelPos (  ) 

Returns the current filter wheel position.

Exceptions:
std::runtime_error 
ApogeeFilterWheel::Status Ascent::GetFilterWheelStatus (  ) 

Returns the current status of the filter wheel

Exceptions:
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.

Exceptions:
std::runtime_error 

Implements ApogeeCam.

void Ascent::Init (  )  [virtual]

Method for initializing the Apogee camera system. Must be called once before image acquisition.

Exceptions:
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.

Parameters:
[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.
Exceptions:
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

Parameters:
[in] TurnOn true to activate, false to deactivate (single readout mode)
Exceptions:
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.

Parameters:
[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.
Exceptions:
std::runtime_error 

Implements ApogeeCam.

void Ascent::SetFilterWheelPos ( uint16_t  pos  ) 

Sets the filter position to the input value

Parameters:
[in] pos Desired position. Valid range is 0 to GetFilterWheelMaxPositions() - 1.
Exceptions:
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.

Parameters:
[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.
Exceptions:
std::runtime_error 

Implements ApogeeCam.


The documentation for this class was generated from the following file:

Generated on 25 Aug 2014 for libapogee by  doxygen 1.6.1