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

Class that contains the camera io interfaces. More...

#include <CameraIo.h>

Inheritance diagram for CameraIo:
Inheritance graph
Collaboration diagram for CameraIo:
Collaboration graph

Public Member Functions

 CameraIo (CamModel::InterfaceType type)
 
virtual ~CameraIo ()
 
CamModel::InterfaceType GetInterfaceType () const
 
void ClearAllRegisters ()
 
uint16_t ReadMirrorReg (uint16_t reg) const
 
uint16_t ReadReg (uint16_t reg) const
 
void WriteReg (uint16_t reg, uint16_t val)
 
void WriteReg (const std::vector< std::pair< uint16_t, uint16_t > > &RegAndVal)
 
void ReadOrWriteReg (uint16_t reg, uint16_t val2Or)
 
void ReadAndWriteReg (uint16_t reg, uint16_t val2And)
 
void ReadMirrorOrWriteReg (uint16_t reg, uint16_t val2Or)
 
void ReadMirrorAndWriteReg (uint16_t reg, uint16_t val2And)
 
void GetUsbVendorInfo (uint16_t &VendorId, uint16_t &ProductId, uint16_t &DeviceId)
 
void SetupImgXfer (uint16_t Rows, uint16_t Cols, uint16_t NumOfImages, bool IsBulkSeq)
 
void CancelImgXfer ()
 
void GetImageData (std::vector< uint16_t > &data)
 
void GetStatus (CameraStatusRegs::BasicStatus &status)
 
void GetStatus (CameraStatusRegs::AdvStatus &status)
 
uint16_t GetFirmwareRev ()
 
void LoadHorizontalPattern (const CamCfg::APN_HPATTERN_FILE &Pattern, const uint16_t MaskingBit, const uint16_t RamReg, const uint16_t Binning)
 
void LoadVerticalPattern (const CamCfg::APN_VPATTERN_FILE &Pattern)
 
void Reset (bool Flush)
 
std::string GetUsbFirmwareVersion ()
 
std::string GetInfo ()
 
uint8_t ReadBufConReg (uint16_t reg) const
 
void WriteBufConReg (uint16_t reg, uint8_t val)
 
uint8_t ReadFx2Reg (uint16_t reg)
 
void WriteFx2Reg (uint16_t reg, uint8_t val)
 
std::string GetDriverVersion ()
 
bool IsError ()
 
std::string GetFirmwareHdr ()
 
std::string GetSerialNumber ()
 
void SetSerialNumber (const std::string &num)
 
virtual uint16_t GetId ()=0
 

Protected Member Functions

void WriteSRMD (uint16_t reg, const std::vector< uint16_t > &data)
 
void WriteMRMD (uint16_t reg, const std::vector< uint16_t > &data)
 
uint16_t GetIdFromReg ()
 

Protected Attributes

CamModel::InterfaceType m_type
 
std::shared_ptr< ICamIom_Interface
 
std::shared_ptr< CamRegMirrorm_RegMirror
 

Private Attributes

std::string m_fileName
 

Detailed Description

Class that contains the camera io interfaces.

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) 2010 Apogee Instruments, Inc.

Constructor & Destructor Documentation

◆ CameraIo()

CameraIo::CameraIo ( CamModel::InterfaceType  type)

◆ ~CameraIo()

CameraIo::~CameraIo ( )
virtual

Member Function Documentation

◆ CancelImgXfer()

void CameraIo::CancelImgXfer ( )

◆ ClearAllRegisters()

void CameraIo::ClearAllRegisters ( )

◆ GetDriverVersion()

std::string CameraIo::GetDriverVersion ( )

◆ GetFirmwareHdr()

std::string CameraIo::GetFirmwareHdr ( )

◆ GetFirmwareRev()

uint16_t CameraIo::GetFirmwareRev ( )

◆ GetId()

virtual uint16_t CameraIo::GetId ( )
pure virtual

Implemented in AscentBasedIo, AspenIo, and AltaIo.

◆ GetIdFromReg()

uint16_t CameraIo::GetIdFromReg ( )
protected

◆ GetImageData()

void CameraIo::GetImageData ( std::vector< uint16_t > &  data)

◆ GetInfo()

std::string CameraIo::GetInfo ( )

◆ GetInterfaceType()

CamModel::InterfaceType CameraIo::GetInterfaceType ( ) const
inline

◆ GetSerialNumber()

std::string CameraIo::GetSerialNumber ( )

◆ GetStatus() [1/2]

void CameraIo::GetStatus ( CameraStatusRegs::BasicStatus status)

◆ GetStatus() [2/2]

void CameraIo::GetStatus ( CameraStatusRegs::AdvStatus status)

◆ GetUsbFirmwareVersion()

std::string CameraIo::GetUsbFirmwareVersion ( )

◆ GetUsbVendorInfo()

void CameraIo::GetUsbVendorInfo ( uint16_t VendorId,
uint16_t ProductId,
uint16_t DeviceId 
)

◆ IsError()

bool CameraIo::IsError ( )

◆ LoadHorizontalPattern()

void CameraIo::LoadHorizontalPattern ( const CamCfg::APN_HPATTERN_FILE Pattern,
const uint16_t  MaskingBit,
const uint16_t  RamReg,
const uint16_t  Binning 
)

◆ LoadVerticalPattern()

void CameraIo::LoadVerticalPattern ( const CamCfg::APN_VPATTERN_FILE Pattern)

◆ ReadAndWriteReg()

void CameraIo::ReadAndWriteReg ( uint16_t  reg,
uint16_t  val2And 
)

◆ ReadBufConReg()

uint8_t CameraIo::ReadBufConReg ( uint16_t  reg) const

◆ ReadFx2Reg()

uint8_t CameraIo::ReadFx2Reg ( uint16_t  reg)

◆ ReadMirrorAndWriteReg()

void CameraIo::ReadMirrorAndWriteReg ( uint16_t  reg,
uint16_t  val2And 
)

◆ ReadMirrorOrWriteReg()

void CameraIo::ReadMirrorOrWriteReg ( uint16_t  reg,
uint16_t  val2Or 
)

◆ ReadMirrorReg()

uint16_t CameraIo::ReadMirrorReg ( uint16_t  reg) const

◆ ReadOrWriteReg()

void CameraIo::ReadOrWriteReg ( uint16_t  reg,
uint16_t  val2Or 
)

◆ ReadReg()

uint16_t CameraIo::ReadReg ( uint16_t  reg) const

◆ Reset()

void CameraIo::Reset ( bool  Flush)

◆ SetSerialNumber()

void CameraIo::SetSerialNumber ( const std::string &  num)

◆ SetupImgXfer()

void CameraIo::SetupImgXfer ( uint16_t  Rows,
uint16_t  Cols,
uint16_t  NumOfImages,
bool  IsBulkSeq 
)

◆ WriteBufConReg()

void CameraIo::WriteBufConReg ( uint16_t  reg,
uint8_t  val 
)

◆ WriteFx2Reg()

void CameraIo::WriteFx2Reg ( uint16_t  reg,
uint8_t  val 
)

◆ WriteMRMD()

void CameraIo::WriteMRMD ( uint16_t  reg,
const std::vector< uint16_t > &  data 
)
protected

◆ WriteReg() [1/2]

void CameraIo::WriteReg ( uint16_t  reg,
uint16_t  val 
)

◆ WriteReg() [2/2]

void CameraIo::WriteReg ( const std::vector< std::pair< uint16_t, uint16_t > > &  RegAndVal)

◆ WriteSRMD()

void CameraIo::WriteSRMD ( uint16_t  reg,
const std::vector< uint16_t > &  data 
)
protected

Member Data Documentation

◆ m_fileName

std::string CameraIo::m_fileName
private

◆ m_Interface

std::shared_ptr<ICamIo> CameraIo::m_Interface
protected

◆ m_RegMirror

std::shared_ptr<CamRegMirror> CameraIo::m_RegMirror
protected

◆ m_type

CamModel::InterfaceType CameraIo::m_type
protected

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