FlxCard
Loading...
Searching...
No Matches
Configuration

Functions

void FlxCard::configure (std::string filename, bool do_links=true, bool do_registers=true)
 
void FlxCard::readConfiguration (std::string filename)
 
void FlxCard::readConfiguration ()
 
u_int FlxCard::number_of_elinks_tohost (int dma_index=-1)
 
u_int FlxCard::number_of_elinks_toflx ()
 
u_int FlxCard::number_of_elinks_fromhost ()
 
std::vector< flxcard::elink_descr_t > FlxCard::elinks_tohost (int dma_index=-1)
 
std::vector< flxcard::elink_descr_t > FlxCard::elinks_toflx ()
 
std::vector< flxcard::elink_descr_t > FlxCard::elinks_fromhost ()
 
std::vector< flxcard::elink_descr_t > FlxCard::elinks_toflx_broadcast ()
 
std::vector< flxcard::elink_descr_t > FlxCard::elinks_fromhost_broadcast ()
 
u_int FlxCard::number_of_dma_tohost ()
 
bool FlxCard::uses_dma_index_mask ()
 
void FlxCard::set_hdlc_instant_timeout (bool b)
 
bool FlxCard::hdlc_instant_timeout ()
 
unsigned int FlxCard::link_mode ()
 
bool FlxCard::is_elink_enabled (u_int channel, u_int egroup, u_int epath, bool is_to_flx)
 
unsigned int FlxCard::tohost_elink_dmaid (u_int channel, u_int egroup, u_int epath)
 
unsigned int FlxCard::tohost_elink_dmaid (uint16_t elinknr)
 
bool FlxCard::has_tohost_elink_streams (u_int channel, u_int egroup, u_int epath)
 
uint8_t FlxCard::detector_id ()
 
uint16_t FlxCard::connector_id (uint16_t channel)
 

Detailed Description

Functions pertaining to configuration of an FLX device and its (e-)links

Function Documentation

◆ configure()

void FlxCard::configure ( std::string filename,
bool do_links = true,
bool do_registers = true )

Reads a FELIX device (e-)link configuration -plus additional register settings, if any- from a .yelc configuration file, stores it in a member structure, and writes the configuration to this FELIX device (or optionally, not, and/or optionally skipping any register settings present in the file).

◆ readConfiguration() [1/2]

void FlxCard::readConfiguration ( std::string filename)

Reads a FELIX device (e-)link configuration -plus additional register settings, if any- from a .yelc file, and stores it in a member structure.

◆ readConfiguration() [2/2]

void FlxCard::readConfiguration ( )

Reads a FELIX device (e-)link configuration from this FELIX device and stores it in a member structure. Leaves any stored additional register settings untouched.

◆ number_of_elinks_tohost()

u_int FlxCard::number_of_elinks_tohost ( int dma_index = -1)

Returns the number of enabled ToHost e-link numbers of this FELIX device, optionally only those assigned to the given DMA index.

◆ number_of_elinks_toflx()

u_int FlxCard::number_of_elinks_toflx ( )

Returns the number of enabled FromHost e-link numbers of this FELIX device, including TTC-type e-links.

◆ elinks_tohost()

std::vector< flxcard::elink_descr_t > FlxCard::elinks_tohost ( int dma_index = -1)

Returns a list of the enabled ToHost e-link numbers of this FELIX device, optionally only those assigned to the given DMA index.

◆ elinks_toflx()

std::vector< flxcard::elink_descr_t > FlxCard::elinks_toflx ( )

Returns a list of the enabled FromHost e-link numbers of this FELIX device, not including TTC-type e-links.

◆ number_of_dma_tohost()

u_int FlxCard::number_of_dma_tohost ( )
inline

Returns the number of ToHost DMA descriptors of this FELIX device.

◆ uses_dma_index_mask()

bool FlxCard::uses_dma_index_mask ( )
inline

Returns true if this FELIX device uses a DMA index bitmask for its e-links, rather than a single DMA index number.

◆ link_mode()

unsigned int FlxCard::link_mode ( )

Returns the link mode, defined in LinkConfig.h

◆ is_elink_enabled()

bool FlxCard::is_elink_enabled ( u_int channel,
u_int egroup,
u_int epath,
bool is_to_flx )

Returns true if the e-link is enabled.

◆ tohost_elink_dmaid() [1/2]

unsigned int FlxCard::tohost_elink_dmaid ( u_int channel,
u_int egroup,
u_int epath )

Returns the DMA id assigned to the given e-link

◆ tohost_elink_dmaid() [2/2]

unsigned int FlxCard::tohost_elink_dmaid ( uint16_t elinknr)

Returns the DMA id assigned to the given e-link

◆ has_tohost_elink_streams()

bool FlxCard::has_tohost_elink_streams ( u_int channel,
u_int egroup,
u_int epath )

Returns true if the e-link is enabled.

◆ detector_id()

uint8_t FlxCard::detector_id ( )
Returns
the detector id set up in the register map.

Returns -1 if the VALID bit is not set.

◆ connector_id()

uint16_t FlxCard::connector_id ( uint16_t channel)
Returns
the connector id set up in the register map.

Returns the connector number from 0 to 3 if the register is not set

Parameters
channelthe channel number to resolve the connector ID in case of an FLX-155 card with more than 24 links.