TwiceAsNice  2019-02-18
Public Member Functions | Private Member Functions | Private Attributes | List of all members
GenOneLinuxUSB Class Reference

Usb interface for *nix systems. More...

#include <GenOneLinuxUSB.h>

Inheritance diagram for GenOneLinuxUSB:
Inheritance graph
Collaboration diagram for GenOneLinuxUSB:
Collaboration graph

Public Member Functions

 GenOneLinuxUSB (const uint16_t DeviceNum)
 
virtual ~GenOneLinuxUSB ()
 
uint16_t ReadReg (uint16_t FpgaReg)
 
void WriteReg (uint16_t FpgaReg, const uint16_t FpgaData)
 
void GetVendorInfo (uint16_t &VendorId, uint16_t &ProductId, uint16_t &DeviceId)
 
void SetupSingleImgXfer (uint16_t Rows, uint32_t Cols)
 
void SetupSequenceImgXfer (uint16_t Rows, uint16_t Cols, uint16_t NumOfImages)
 
void CancelImgXfer ()
 
void ReadImage (uint16_t *ImageData, const uint32_t InSizeInBytes, uint32_t &OutSizeInBytes)
 
void GetStatus (uint8_t *status, uint32_t NumBytes)
 
void UsbRequestIn (uint8_t RequestCode, uint16_t Index, uint16_t Value, uint8_t *ioBuf, uint32_t BufSzInBytes)
 
void UsbRequestOut (uint8_t RequestCode, uint16_t Index, uint16_t Value, const uint8_t *ioBuf, uint32_t BufSzInBytes)
 
void GetSerialNumber (int8_t *ioBuf, uint32_t BufSzInBytes)
 
void GetUsbFirmwareVersion (int8_t *ioBuf, uint32_t BufSzInBytes)
 
std::string GetDriverVersion ()
 
bool IsError ()
 
uint16_t GetDeviceNum ()
 
void UsbReqOutWithExtendedTimeout (uint8_t RequestCode, uint16_t Index, uint16_t Value, const uint8_t *ioBuf, uint32_t BufSzInBytes)
 
void ReadSerialPort (uint16_t PortId, uint8_t *ioBuf, uint16_t BufSzInBytes)
 
- Public Member Functions inherited from IUsb
virtual ~IUsb ()
 

Private Member Functions

bool OpenDeviceHandle (const uint16_t DeviceNum, std::string &err)
 
 GenOneLinuxUSB (const GenOneLinuxUSB &)
 
GenOneLinuxUSBoperator= (GenOneLinuxUSB &)
 

Private Attributes

libusb_context * m_Context
 
libusb_device_handlem_Device
 
libusb_device_descriptor m_DeviceDescriptor
 
const std::string m_fileName
 
bool m_ReadImgError
 
bool m_IoError
 
int32_t m_NumRegWriteRetries
 
uint16_t m_DeviceNum
 

Detailed Description

Usb interface for *nix systems.

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

◆ GenOneLinuxUSB() [1/2]

GenOneLinuxUSB::GenOneLinuxUSB ( const uint16_t  DeviceNum)

◆ ~GenOneLinuxUSB()

GenOneLinuxUSB::~GenOneLinuxUSB ( )
virtual

◆ GenOneLinuxUSB() [2/2]

GenOneLinuxUSB::GenOneLinuxUSB ( const GenOneLinuxUSB )
private

Member Function Documentation

◆ CancelImgXfer()

void GenOneLinuxUSB::CancelImgXfer ( )
virtual

Implements IUsb.

◆ GetDeviceNum()

uint16_t GenOneLinuxUSB::GetDeviceNum ( )
inlinevirtual

Implements IUsb.

◆ GetDriverVersion()

std::string GenOneLinuxUSB::GetDriverVersion ( )
virtual

Implements IUsb.

◆ GetSerialNumber()

void GenOneLinuxUSB::GetSerialNumber ( int8_t ioBuf,
uint32_t  BufSzInBytes 
)
virtual

Implements IUsb.

◆ GetStatus()

void GenOneLinuxUSB::GetStatus ( uint8_t status,
uint32_t  NumBytes 
)
virtual

Implements IUsb.

◆ GetUsbFirmwareVersion()

void GenOneLinuxUSB::GetUsbFirmwareVersion ( int8_t ioBuf,
uint32_t  BufSzInBytes 
)
virtual

Implements IUsb.

◆ GetVendorInfo()

void GenOneLinuxUSB::GetVendorInfo ( uint16_t VendorId,
uint16_t ProductId,
uint16_t DeviceId 
)
virtual

Implements IUsb.

◆ IsError()

bool GenOneLinuxUSB::IsError ( )
virtual

Implements IUsb.

◆ OpenDeviceHandle()

bool GenOneLinuxUSB::OpenDeviceHandle ( const uint16_t  DeviceNum,
std::string &  err 
)
private

◆ operator=()

GenOneLinuxUSB& GenOneLinuxUSB::operator= ( GenOneLinuxUSB )
private

◆ ReadImage()

void GenOneLinuxUSB::ReadImage ( uint16_t ImageData,
const uint32_t  InSizeInBytes,
uint32_t OutSizeInBytes 
)
virtual

Implements IUsb.

◆ ReadReg()

uint16_t GenOneLinuxUSB::ReadReg ( uint16_t  FpgaReg)
virtual

Implements IUsb.

◆ ReadSerialPort()

void GenOneLinuxUSB::ReadSerialPort ( uint16_t  PortId,
uint8_t ioBuf,
uint16_t  BufSzInBytes 
)
virtual

Implements IUsb.

◆ SetupSequenceImgXfer()

void GenOneLinuxUSB::SetupSequenceImgXfer ( uint16_t  Rows,
uint16_t  Cols,
uint16_t  NumOfImages 
)
virtual

Implements IUsb.

◆ SetupSingleImgXfer()

void GenOneLinuxUSB::SetupSingleImgXfer ( uint16_t  Rows,
uint32_t  Cols 
)
virtual

Implements IUsb.

◆ UsbReqOutWithExtendedTimeout()

void GenOneLinuxUSB::UsbReqOutWithExtendedTimeout ( uint8_t  RequestCode,
uint16_t  Index,
uint16_t  Value,
const uint8_t ioBuf,
uint32_t  BufSzInBytes 
)
virtual

Implements IUsb.

◆ UsbRequestIn()

void GenOneLinuxUSB::UsbRequestIn ( uint8_t  RequestCode,
uint16_t  Index,
uint16_t  Value,
uint8_t ioBuf,
uint32_t  BufSzInBytes 
)
virtual

Implements IUsb.

◆ UsbRequestOut()

void GenOneLinuxUSB::UsbRequestOut ( uint8_t  RequestCode,
uint16_t  Index,
uint16_t  Value,
const uint8_t ioBuf,
uint32_t  BufSzInBytes 
)
virtual

Implements IUsb.

◆ WriteReg()

void GenOneLinuxUSB::WriteReg ( uint16_t  FpgaReg,
const uint16_t  FpgaData 
)
virtual

Implements IUsb.

Member Data Documentation

◆ m_Context

libusb_context* GenOneLinuxUSB::m_Context
private

◆ m_Device

libusb_device_handle* GenOneLinuxUSB::m_Device
private

◆ m_DeviceDescriptor

libusb_device_descriptor GenOneLinuxUSB::m_DeviceDescriptor
private

◆ m_DeviceNum

uint16_t GenOneLinuxUSB::m_DeviceNum
private

◆ m_fileName

const std::string GenOneLinuxUSB::m_fileName
private

◆ m_IoError

bool GenOneLinuxUSB::m_IoError
private

◆ m_NumRegWriteRetries

int32_t GenOneLinuxUSB::m_NumRegWriteRetries
private

◆ m_ReadImgError

bool GenOneLinuxUSB::m_ReadImgError
private

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