μHAL
sys_id::Core Class Reference
Inheritance diagram for sys_id::Core:
Collaboration diagram for sys_id::Core:

Public Member Functions

 Core (struct pcie_bars &)
 
void print (FILE *, bool) const override
 
- Public Member Functions inherited from RegisterDecoder
void get_data (bool=false)
 
void binary_dump (FILE *) const
 
virtual void print (FILE *, bool) const
 
template<class T >
get_general_data (const char *name) const
 
template<class T >
get_channel_data (const char *name, unsigned channel_index) const
 
decoders::data_type get_generic_data (const char *, decoders::data_key::second_type=std::nullopt) const
 
void write_general (const char *name, decoders::data_type value, void *dest)
 
void write_channel (const char *name, unsigned pos, decoders::data_type value, void *dest)
 
- Public Member Functions inherited from RegisterDecoderBase
void check_devinfo_is_set () const
 
virtual void set_devinfo (const struct sdb_device_info &)
 

Public Attributes

distortion_levels setpoint_distortion
 
distortion_levels posx_distortion
 
distortion_levels posy_distortion
 
- Public Attributes inherited from RegisterDecoder
std::optional< unsigned > channel
 
- Public Attributes inherited from RegisterDecoderBase
const device_match_fn match_devinfo_lambda
 

Private Member Functions

void decode () override
 
void read_monitors () override
 
void decode_monitors () override
 

Private Attributes

std::unique_ptr< struct wb_fofb_sys_id_regs > regs_storage
 
struct wb_fofb_sys_id_regs & regs
 

Additional Inherited Members

- Protected Member Functions inherited from RegisterDecoder
 RegisterDecoder (struct pcie_bars &, const struct sdb_device_info &, std::unordered_map< std::string_view, Printer >)
 
void add_general (const char *, int32_t)
 
void add_general_double (const char *, double)
 
void add_channel (const char *, unsigned, int32_t)
 
void add_channel_double (const char *, unsigned, double)
 
RegisterField rf_get_bit (uint32_t &, uint32_t)
 
RegisterField rf_extract_value (uint32_t &, uint32_t, bool=false)
 
RegisterField rf_whole_register (uint32_t &value, bool is_signed=false)
 
RegisterField rf_fixed2float (RegisterField, unsigned)
 
void add_general (const char *name, RegisterField rf)
 
void add_channel (const char *name, unsigned pos, RegisterField rf)
 
virtual void read_monitors ()
 
virtual void decode ()=0
 
virtual void decode_monitors ()
 
- Protected Member Functions inherited from RegisterDecoderBase
void set_read_dest (auto &dest)
 
 RegisterDecoderBase (struct pcie_bars &, const struct sdb_device_info &)
 
virtual void read ()
 
- Protected Attributes inherited from RegisterDecoder
std::optional< unsigned > number_of_channels
 
std::unordered_map< std::string_view, Printerprinters
 
- Protected Attributes inherited from RegisterDecoderBase
size_t read_size
 
void * read_dest
 
struct pcie_barsbars
 
struct sdb_device_info devinfo
 
size_t addr
 

Member Function Documentation

◆ decode()

void sys_id::Core::decode ( )
overrideprivatevirtual

Decode registers into actual values. Implemented by subclasses

Implements RegisterDecoder.

◆ decode_monitors()

void sys_id::Core::decode_monitors ( )
overrideprivatevirtual

This simply calls decode(), but can be specified by subclasses to decode only changing values

Reimplemented from RegisterDecoder.

◆ print()

void sys_id::Core::print ( FILE *  f,
bool  verbose 
) const
overridevirtual

Reimplemented from RegisterDecoder.

◆ read_monitors()

void sys_id::Core::read_monitors ( )
overrideprivatevirtual

This simply calls read(), but can be specified by subclasses to read only changing values from BAR4 into RegisterDecoderBase::read_dest

Reimplemented from RegisterDecoder.


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