![]() |
Developer Application Interface (ARC API) v4.5.8
ARC, Inc. GenIV Application Interface
|
Namespaces | |
namespace | fits |
namespace | image |
Classes | |
struct | arcDev_t |
class | CArcAlertPacket |
class | CArcBase |
class | CArcBoardMap |
class | CArcCommandPacket |
class | CArcDebugStreamBuffer |
class | CArcDevice |
class | CArcDisplay |
class | CArcDLoadPacket |
class | CArcFitsFile |
class | CArcImage |
class | CArcImageAssembler |
class | CArcImagePacket |
class | CArcLog |
class | CArcPacket |
class | CArcPacketFactory |
class | CArcPCIeBase |
class | CArcStatusPacket |
class | CArcStringList |
class | CArcSystem |
class | CArcTimer |
class | CArcVersion |
struct | commonBuffer_t |
struct | imageAssemblerChannels_t |
struct | imageBuffer_t |
struct | imageDataHeader_t |
struct | imagePacketHeader_t |
struct | packetHeader_t |
struct | throwArcGen4OutOfRange |
struct | throwFormat_t |
Concepts | |
concept | uint32Type |
Typedefs | |
using | pStringList_t = std::unique_ptr< arc::gen4::CArcStringList > |
using | pSysState_t = std::shared_ptr< sysState_t > |
using | pImageBuffer_t = std::shared_ptr< arc::gen4::imageBuffer_t > |
using | commonBufferList_t = std::array< std::unique_ptr< arc::gen4::commonBuffer_t >, iCommonBufferListCount > |
using | pCommonBufferList_t = std::unique_ptr< commonBufferList_t > |
using | pStatusPacket_t = std::unique_ptr< arc::gen4::CArcStatusPacket > |
using | exposeListener_t = std::function< void(float)> |
using | readListener_t = std::function< void(std::uint32_t, float)> |
using | alertHandler_t = std::function< void(const std::string &)> |
** Convenience ( compact ) definition for command log handler More... | |
using | fileProgressListener_t = std::function< void(const std::uint32_t, const std::uint32_t)> |
using | savePacketsTuple_t = std::tuple< bool, const std::string, arc::gen4::packetFileType_e > |
using | pImageAssembler_t = std::shared_ptr< arc::gen4::CArcImageAssembler > |
using | dataSection_t = std::pair< imageDataHeader_t *, std::uint16_t * > |
typedef std::queue< std::string >::size_type | qsize_t |
using | pLogger_t = std::weak_ptr< arc::gen4::CArcLog > |
using | arcDevHandle_t = HANDLE |
using | versionUpdateData_t = std::pair< float, std::int32_t > |
Enumerations | |
enum class | cmds_e : const std::uint32_t { DONE = _u32( 0x444F4E45 ) , EROR = _u32( 0x45524F52 ) , REDO = _u32( 0x5245444F ) , BUSY = _u32( 0x42555359 ) , IVPF = _u32( 0x49565046 ) , TOUT = _u32( 0x544F5554 ) , ROUT = _u32( 0x524F5554 ) , STOP = _u32( 0x53544F50 ) , CRDY = _u32( 0x43524459 ) , TDL = _u32( 0x0054444C ) , GCC = _u32( 0x00474343 ) , GCA = _u32( 0x00474341 ) , GCVA = _u32( 0x47435641 ) , GSS = _u32( 0x00475353 ) , GBMP = _u32( 0x47424D50 ) , GAMP = _u32( 0x47414D50 ) , DIM = _u32( 0x0044494D ) , SEX = _u32( 0x00534558 ) , RET = _u32( 0x00524554 ) , PEX = _u32( 0x00504558 ) , CET = _u32( 0x00434554 ) , REXM = _u32( 0x5245584D ) , EXM = _u32( 0x0045584D ) , SYN = _u32( 0x0053594E ) , GPXC = _u32( 0x47505843 ) , AVC = _u32( 0x00415643 ) , DVC = _u32( 0x00445643 ) , EVC = _u32( 0x00455643 ) , GVPC = _u32( 0x47565043 ) , AMC = _u32( 0x00414D43 ) , SSA = _u32( 0x00535341 ) , EBTL = _u32( 0x4542544C ) , RDBT = _u32( 0x52444254 ) , RDT = _u32( 0x00524454 ) , RDTC = _u32( 0x52445443 ) , EPCL = _u32( 0x4550434C ) , RPSC = _u32( 0x52505343 ) , RFM = _u32( 0x0052464D ) , WFM = _u32( 0x0057464D ) , EFM = _u32( 0x0045464D ) , LEDS = _u32( 0x4C454453 ) , RTSG = _u32( 0x52545347 ) , EDBL = _u32( 0x4544424C ) , RWDC = _u32( 0x52574443 ) , RRV = _u32( 0x00525256 ) , GSSM = _u32( 0x4753534D ) , BRI = _u32( 0x00425249 ) , RWTR = _u32( 0x52575452 ) , WTD = _u32( 0x00575444 ) , RWWG = _u32( 0x52575747 ) , RVR = _u32( 0x00525652 ) , WVD = _u32( 0x00575644 ) , SHUT = _u32( 0x53485554 ) , IIA = _u32( 0x00494941 ) , CIB = _u32( 0x00434942 ) } |
enum class | IOCtrlCode_e : std::uint32_t { READ_BAR = 0x01 , READ_BAR64 , WRITE_BAR , WRITE_BAR64 , READ_CFG_8 , READ_CFG_16 , READ_CFG_32 , READ_CFG_64 , WRITE_CFG_8 , WRITE_CFG_16 , WRITE_CFG_32 , MEM_MAP , MEM_UNMAP , COMMONBUFFER_PA , COMMONBUFFER_SIZE , COMMONBUFFER_RING_BUFFERS } |
enum class | errorCodes_e : std::uint32_t { eNoError = 0 , eInvalidParameterCount , eInvalidParameter , eRangeError , eTimeOut , eExecutionError , eCommandNotFound , eInvalidBoardNumber , eInvalidDimenForColsPerChan , eErrorCodeCount } |
enum class | flashMemoryId_e : std::uint32_t { FLASH_MEMORY_FIRMWARE_BLOCK_ID = 0 , FLASH_MEMORY_MAC_ADDR_BLOCK_ID , FLASH_MEMORY_NETWORK_BLOCK_ID , FLASH_MEMORY_ID_BLOCK_ID , FLASH_MEMORY_USER_BLOCK_ID , FLASH_MEMORY_CHIP_ID } |
enum class | synImgSource_e : std::uint32_t { eNone = 0 , eARC420 , eARC440_GRADIENT , eARC440_NOISE } |
enum class | processPriority_e { RealTime , High , AboveNormal , Normal , Other } |
enum class | packetFileType_e : std::uint32_t { text , binary } |
Functions | |
template<typename... Args> | |
void | throwArcGen4Error (const throwFormat_t<> tFormat, Args &&... args) |
template<typename... Args> | |
void | throwArcGen4InvalidArgument (const throwFormat_t<> tFormat, Args &&... args) |
template<typename... Args> | |
void | throwArcGen4LengthError (throwFormat_t<> tFormat, Args &&... args) |
GEN4_CARCDEVICE_API const std::string | sysStateToString (pSysState_t pSysState) |
std::ostream & | operator<< (std::ostream &tStream, const arc::gen4::CArcImagePacket &rPacket) |
Variables | |
constexpr auto | ARC440_INVALID_CHANNEL_ADDRESS = _u32( 0x00000099 ) |
constexpr std::uint32_t | BAR = 2 |
constexpr std::uint32_t | DEVICE_CLEAR_SEND_RECV_REG = 0x2F0 |
constexpr std::uint32_t | DEVICE_CLEAR_SEND_RECV = 1 |
constexpr std::uint32_t | DEVICE_PIXEL_COUNTER_REG = 0x40 |
constexpr std::uint32_t | DEVICE_RESET_PIXEL_COUNTER_REG = 0x220 |
constexpr std::uint32_t | DEVICE_RESET_PIXEL_COUNTER = 1 |
constexpr std::uint32_t | DEVICE_BUFFER_0_BYTES_RECVD_REG = 0x320 |
constexpr std::uint32_t | DEVICE_BUFFER_0_STATUS_REG = 0x340 |
constexpr std::uint32_t | DEVICE_BUFFER_1_BYTES_RECVD_REG = 0x330 |
constexpr std::uint32_t | DEVICE_BUFFER_1_STATUS_REG = 0x350 |
constexpr std::uint32_t | DEVICE_BUFFER_STATUS_DIRTY_MASK = 1 |
constexpr std::uint32_t | DEVICE_BUFFER_STATUS_CLEAN_MASK = 1 |
constexpr std::uint32_t | DEVICE_BUFFER_STATUS_COMPLETE_MASK = 2 |
constexpr std::uint32_t | DEVICE_BUFFER_STATUS_OVERFLOW_MASK = 4 |
constexpr std::uint32_t | DEVICE_BUFFER_STATUS_CLEAR = 7 |
constexpr std::uint32_t | DEVICE_STATUS_REG = 0x100 |
constexpr std::uint32_t | DEVICE_STATUS_ALERT_MASK = 0x2 |
constexpr std::uint32_t | DEVICE_STATUS_IMAGE_ADDRESS_ERROR_MASK = 0x80 |
constexpr std::uint32_t | DEVICE_ALERT_PACKET_REG = 0x2000 |
constexpr std::uint32_t | CLEAR_IMAGE_ADDRESS_ERROR = 4 |
const std::array< const std::string, static_cast< size_t >(errorCodes_e::eErrorCodeCount)> | sErrorCodeDetails |
constexpr auto | iCommonBufferListCount = 2 |
constexpr auto | ARC_CTRL_ID = 33460 |
constexpr auto | MAP_FAILED = ( uint8_t* )0 |
constexpr auto | ARC_MAX_PATH = _MAX_PATH |
using arc::gen4::pStringList_t = typedef std::unique_ptr<arc::gen4::CArcStringList> |
Convenience ( compact ) definition for common buffer list pointer
Definition at line 177 of file CArcStringList.h.
using arc::gen4::pSysState_t = typedef std::shared_ptr<sysState_t> |
Convenience ( compact ) definition for a shared pointer to the system state type
Definition at line 28 of file ArcSysState.h.
using arc::gen4::pImageBuffer_t = typedef std::shared_ptr<arc::gen4::imageBuffer_t> |
Convenience ( compact ) definition for image buffer type pointer
Definition at line 95 of file CArcDevice.h.
using arc::gen4::commonBufferList_t = typedef std::array<std::unique_ptr<arc::gen4::commonBuffer_t>, iCommonBufferListCount> |
Convenience ( compact ) definition for common buffer list
Definition at line 123 of file CArcDevice.h.
using arc::gen4::pCommonBufferList_t = typedef std::unique_ptr<commonBufferList_t> |
Convenience ( compact ) definition for common buffer list pointer
Definition at line 127 of file CArcDevice.h.
using arc::gen4::pStatusPacket_t = typedef std::unique_ptr<arc::gen4::CArcStatusPacket> |
Convenience ( compact ) definition for status packet pointer
Definition at line 136 of file CArcDevice.h.
using arc::gen4::exposeListener_t = typedef std::function<void( float )> |
Convenience ( compact ) definition for expose listener
firstParam | - The current elapsed exposure time in seconds |
Definition at line 141 of file CArcDevice.h.
using arc::gen4::readListener_t = typedef std::function<void( std::uint32_t, float )> |
Convenience ( compact ) definition for readout listener
firstParam | - The current pixel count |
secondParam | - The current read time in seconds |
Definition at line 148 of file CArcDevice.h.
using arc::gen4::alertHandler_t = typedef std::function<void( const std::string& )> |
** Convenience ( compact ) definition for command log handler
Convenience ( compact ) definition for alert handler
firstParam | - Alert message |
Definition at line 160 of file CArcDevice.h.
using arc::gen4::fileProgressListener_t = typedef std::function<void( const std::uint32_t, const std::uint32_t )> |
Convenience ( compact ) definition for optional alert function Convenience ( compact ) definition for file progress listener
firstParam | - The number of bytes read |
secondParam | - The total number of bytes expected |
Definition at line 174 of file CArcDevice.h.
using arc::gen4::savePacketsTuple_t = typedef std::tuple<bool, const std::string, arc::gen4::packetFileType_e> |
Save packets tuple types
firstParam | - Set to true to enable saving image packets, false to disable. |
secondParam | - The filename for the saved packet data. May be empty string ("") if previously set and only want to enable or disable the packet saving. Non-empty value will update the current filename. (default: "") |
thirdParam | - The data file format, text or binary, as defined by arc::gen4::packetFileType_e. Packets are only revoverable from binary files. (default: text) |
Definition at line 54 of file CArcImageAssembler.h.
using arc::gen4::pImageAssembler_t = typedef std::shared_ptr<arc::gen4::CArcImageAssembler> |
Convenience ( compact ) definition for image assembler pointer
Definition at line 181 of file CArcImageAssembler.h.
using arc::gen4::dataSection_t = typedef std::pair<imageDataHeader_t*, std::uint16_t*> |
Convenience ( compact ) definition for image packet data section.
param1 | - Image data header pointer. |
param2 | - Image pixel data pointer. |
Definition at line 54 of file CArcImagePacket.h.
typedef std::queue<std::string>::size_type arc::gen4::qsize_t |
using arc::gen4::pLogger_t = typedef std::weak_ptr<arc::gen4::CArcLog> |
using arc::gen4::arcDevHandle_t = typedef HANDLE |
System dependent device handle
Definition at line 53 of file CArcSystem.h.
using arc::gen4::versionUpdateData_t = typedef std::pair<float, std::int32_t> |
Version update data type.
firstParam | - Major version number. Example: 4.5 |
secondParam | - Minor version number. Example: 2 |
Definition at line 32 of file CArcVersion.h.
|
strong |
Definition at line 39 of file ArcCommandDefs.h.
|
strong |
ARC-460 device I/O control command codes
Definition at line 88 of file ArcDeviceIOControl.h.
|
strong |
Definition at line 51 of file ArcErrorDefs.h.
|
strong |
Definition at line 39 of file ArcFlashMemoryDefs.h.
|
strong |
Definition at line 40 of file ArcSyntheticDefs.h.
|
strong |
Definition at line 193 of file CArcDevice.h.
|
strong |
Enumerator | |
---|---|
text | Saves the packets as text using the CArcPacket::toLogString() method. Packets cannot be recovered. |
binary | Saves the packets as binary objects that can be restored to image packets. |
Definition at line 40 of file CArcImageAssembler.h.
void arc::gen4::throwArcGen4Error | ( | const throwFormat_t<> | tFormat, |
Args &&... | args | ||
) |
Throws a std::runtime_error with the specified message. The line number and function name are automatically appended to the message.
tFormat | - The string formattng and source location of the call. |
args | - The list of format arguments. |
std::runtime_error |
Definition at line 106 of file CArcBase.h.
void arc::gen4::throwArcGen4InvalidArgument | ( | const throwFormat_t<> | tFormat, |
Args &&... | args | ||
) |
Throws a std::invalid_argument with the specified message. The line number and function name are automatically appended to the message.
tFormat | - The string formattng and source location of the call. |
args | - The list of format arguments. |
std::invalid_argument |
Definition at line 138 of file CArcBase.h.
void arc::gen4::throwArcGen4LengthError | ( | throwFormat_t<> | tFormat, |
Args &&... | args | ||
) |
Throws a std::length_error. The line number and function name are automatically appended to a fixed message.
tFormat | - The string formattng and source location of the call. |
args | - The list of format arguments. |
std::length_error |
Definition at line 201 of file CArcBase.h.
GEN4_CARCDEVICE_API const std::string arc::gen4::sysStateToString | ( | pSysState_t | pSysState | ) |
Prints the current system state values to a string.
pSysState | - A pointer to the system state |
std::ios_base::failure |
std::ostream & arc::gen4::operator<< | ( | std::ostream & | tStream, |
const arc::gen4::CArcImagePacket & | rPacket | ||
) |
Output arc::gen4::CArcImagePacket::toLogString() to the specified stream.
tStream | - The output stream to place the output of toLogString() method. |
|
constexpr |
Invalid ARC-440 channel address
Definition at line 127 of file ArcCommandDefs.h.
|
constexpr |
ARC-460 PCIe base address register
Definition at line 28 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe clear send/recv buffer register
Definition at line 30 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe clear send/recv buffer
Definition at line 31 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe pixel count register
Definition at line 33 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe pixel count reset register
Definition at line 34 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe pixel count reset
Definition at line 35 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe common buffer 0 bytes available to read register
Definition at line 37 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe common buffer 0 status register
bit 0 - New data available if set to 1. Host clears, sets to 1, after the data has been read. (default = 0)
bit 1 - Set to 1 if this is that last buffer to contain image data. (default = 0)
bit 2 - Set to 1 if an overlap error occurred. The data wasn't read before the buffer was overwritten. (default = 0)
bits 31:3 - Unused
Definition at line 45 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe common buffer 1 bytes available to read register
Definition at line 47 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe common buffer 1 status register
bit 0 - New data available if set to 1. Host clears, sets to 1, after the data has been read. (default = 0)
bit 1 - Set to 1 if this is that last buffer to contain image data. (default = 0)
bit 2 - Set to 1 if an overlap error occurred. The data wasn't read before the buffer was overwritten. (default = 0)
bits 31:3 - Unused
Definition at line 55 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe common buffer status register dirty mask. If dirty, data is available.
Definition at line 57 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe common buffer status register clear dirty mask.
Definition at line 58 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe common buffer status register image complete mask.
Definition at line 59 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe common buffer status register buffer overflow mask.
Definition at line 60 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe common buffer status register clear all status bits.
Definition at line 61 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe status register
bit 0 - Set to 1 if reply (status packet) buffer contains old data (default = 1)
bit 1 - Set to 1 if an alert message is available (default = 0)
bit 2 - Set to 1 if the command buffer is available for writing (default = 1)
bit 7 - Set to 1 if the image buffer address is beyond the end addres of either common buffer (default = 0)
bit 8 - Set to 1 if a packet received form the controller timing board contains an incorrect ID (default = 0)
bit 9 - Set to 0 if fiber link 0 PLL is locked (default = 0)
bit 11 - Set to 1 if an unexpected packet is received from the controller timing board (default = 0)
bit 22:21 - PCIe generation. 1 = Gen1, 2 = Gen2, 3 = Gen3 (default = 1)
Definition at line 73 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe status register alert message mask
Definition at line 75 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe status register image buffer address error mask
Definition at line 76 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe alert packet data register
Definition at line 78 of file ArcDeviceIOControl.h.
|
constexpr |
ARC-460 PCIe status register clear any image buffer address error
Definition at line 80 of file ArcDeviceIOControl.h.
|
extern |
Error code string definitions. Can be used with error handling
|
constexpr |
The number of buffers that make up the common ring buffer
Definition at line 119 of file CArcDevice.h.
|
constexpr |
ARC designator used as part of each PCIe device ioctl command
Definition at line 60 of file CArcSystem.h.
|
constexpr |
Error code for memory map failure
Definition at line 61 of file CArcSystem.h.
|
constexpr |
Maximum path size, in bytes
Definition at line 62 of file CArcSystem.h.