TwiceAsNice  2019-02-18
Public Member Functions | Protected Member Functions | List of all members
ICamIo Class Referenceabstract

interface class for all camera io More...

#include <ICamIo.h>

Inheritance diagram for ICamIo:
Inheritance graph
Collaboration diagram for ICamIo:
Collaboration graph

Public Member Functions

virtual ~ICamIo ()
 
virtual uint16_t GetFirmwareRev ()=0
 
virtual void SetupImgXfer (uint16_t Rows, uint16_t Cols, uint16_t NumOfImages, bool IsBulkSeq)=0
 
virtual void CancelImgXfer ()=0
 
virtual void GetImageData (std::vector< uint16_t > &data)=0
 
virtual uint16_t ReadReg (uint16_t reg) const =0
 
virtual void WriteReg (uint16_t reg, uint16_t val)=0
 
virtual void WriteSRMD (uint16_t reg, const std::vector< uint16_t > &data)=0
 
virtual void WriteMRMD (uint16_t reg, const std::vector< uint16_t > &data)=0
 
virtual void GetStatus (CameraStatusRegs::BasicStatus &status)=0
 
virtual void GetStatus (CameraStatusRegs::AdvStatus &status)=0
 
virtual std::string GetInfo ()=0
 
virtual std::string GetDriverVersion ()=0
 
virtual bool IsError ()=0
 

Protected Member Functions

 ICamIo ()
 

Detailed Description

interface class for all camera io

Copyright(c) 2009 Apogee Instruments, Inc.

Constructor & Destructor Documentation

◆ ~ICamIo()

ICamIo::~ICamIo ( )
virtual

◆ ICamIo()

ICamIo::ICamIo ( )
protected

Member Function Documentation

◆ CancelImgXfer()

virtual void ICamIo::CancelImgXfer ( )
pure virtual

Cancel the pending image transfer.

Implemented in CamUsbIo, AltaEthernetIo, and AspenEthernetIo.

◆ GetDriverVersion()

virtual std::string ICamIo::GetDriverVersion ( )
pure virtual

Implemented in CamUsbIo, AspenEthernetIo, and AltaEthernetIo.

◆ GetFirmwareRev()

virtual uint16_t ICamIo::GetFirmwareRev ( )
pure virtual

Implemented in AspenEthernetIo, AltaEthernetIo, and CamUsbIo.

◆ GetImageData()

virtual void ICamIo::GetImageData ( std::vector< uint16_t > &  data)
pure virtual

Moves the data from the camera to the host PC. Called at different times depending on the cameras acquistion mode

Parameters
[in]NumberOfPixelsTotal number of pixels to transfer from the camera to host
Returns
ImageData Image from the camera

Implemented in CamUsbIo, AltaEthernetIo, and AspenEthernetIo.

◆ GetInfo()

virtual std::string ICamIo::GetInfo ( )
pure virtual

Implemented in AspenEthernetIo, AltaEthernetIo, and CamUsbIo.

◆ GetStatus() [1/2]

virtual void ICamIo::GetStatus ( CameraStatusRegs::BasicStatus status)
pure virtual

Fetches the camera's status. This function should be used on rev 15 firmware or lower

Parameters
[out]statusBasic status structure

Implemented in CamUsbIo, AltaEthernetIo, and AspenEthernetIo.

◆ GetStatus() [2/2]

virtual void ICamIo::GetStatus ( CameraStatusRegs::AdvStatus status)
pure virtual

Fetches the camera's status. This function should be used on rev 16 firmware and higher

Parameters
[out]statusAdvanced status structure

Implemented in CamUsbIo, AltaEthernetIo, and AspenEthernetIo.

◆ IsError()

virtual bool ICamIo::IsError ( )
pure virtual

Implemented in AltaEthernetIo, AspenEthernetIo, and CamUsbIo.

◆ ReadReg()

virtual uint16_t ICamIo::ReadReg ( uint16_t  reg) const
pure virtual

Reads camera control registers

Parameters
[in]regRegister to read.

Implemented in CamUsbIo, AspenEthernetIo, and AltaEthernetIo.

◆ SetupImgXfer()

virtual void ICamIo::SetupImgXfer ( uint16_t  Rows,
uint16_t  Cols,
uint16_t  NumOfImages,
bool  IsBulkSeq 
)
pure virtual

Prime the IO interface for an upcoming image transfer.

Parameters
[in]RowsImage height in pixels
[in]ColsImage width in pixels
[in]NumOfImagesNumber of images in the set

Implemented in CamUsbIo, AltaEthernetIo, and AspenEthernetIo.

◆ WriteMRMD()

virtual void ICamIo::WriteMRMD ( uint16_t  reg,
const std::vector< uint16_t > &  data 
)
pure virtual

Writes data to a Multiple Request Multiple Data (MRMD) controller on the camera

Parameters
[in]regRegister to write to.
[out]dataData vector

Implemented in AspenEthernetIo, CamUsbIo, and AltaEthernetIo.

◆ WriteReg()

virtual void ICamIo::WriteReg ( uint16_t  reg,
uint16_t  val 
)
pure virtual

Writes data to camera control registers

Parameters
[in]regRegister to write to.
[out]valData value in the register

Implemented in CamUsbIo, AspenEthernetIo, and AltaEthernetIo.

◆ WriteSRMD()

virtual void ICamIo::WriteSRMD ( uint16_t  reg,
const std::vector< uint16_t > &  data 
)
pure virtual

Writes data to a Single Request Multiple Data (SRMD) controller on the camera

Parameters
[in]regRegister to write to.
[out]dataData vector

Implemented in AspenEthernetIo, CamUsbIo, and AltaEthernetIo.


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