Orion
high-rate readout
Public Types | Public Member Functions | List of all members
itk::Register< IRegMem, ICommander > Class Template Referenceabstract

Interface definition for register. More...

#include <register.hpp>

Public Types

using RegMem = IRegMem
 
using Commander = ICommander
 
using reg_t = RegMem::reg_t
 

Public Member Functions

virtual ~Register ()=default
 Default destructor.
 
virtual reg_t get (const RegMem &regmem) const =0
 Get register value from the memory. More...
 
virtual void set (RegMem &regmem, reg_t value) const =0
 Set register value into the memory. More...
 
virtual void read (RegMem &regmem, Commander &cmdr) const =0
 Write command sequence to read register value from the chip. Does not send commands over e-link. More...
 
virtual void write (RegMem &regmem, Commander &cmdr, reg_t value) const =0
 Set register value in memory and write commands sequence to modify register value in chip to cmdr buffer, does not send commands over e-link. More...
 
virtual uint16_t get_addr () const =0
 Properties. More...
 
virtual std::string get_name () const =0
 Get register name. More...
 
virtual std::string get_desc () const =0
 Get register description. More...
 

Detailed Description

template<typename IRegMem, typename ICommander>
class itk::Register< IRegMem, ICommander >

Interface definition for register.

Template Parameters
T- type of register value (uint8_t, uint16_t, uint32_t).
IRegMem- Register memory interface associated with this Register.
ICommander- Commander interface associated with this Register.

Member Function Documentation

◆ get()

template<typename IRegMem , typename ICommander >
virtual reg_t itk::Register< IRegMem, ICommander >::get ( const RegMem &  regmem) const
pure virtual

Get register value from the memory.

Parameters
regmem- reference to the register memory object.
Returns
register value.

◆ get_addr()

template<typename IRegMem , typename ICommander >
virtual uint16_t itk::Register< IRegMem, ICommander >::get_addr ( ) const
pure virtual

Properties.

Get register address.

Returns
address of the register.

◆ get_desc()

template<typename IRegMem , typename ICommander >
virtual std::string itk::Register< IRegMem, ICommander >::get_desc ( ) const
pure virtual

Get register description.

Returns
description of the register.

◆ get_name()

template<typename IRegMem , typename ICommander >
virtual std::string itk::Register< IRegMem, ICommander >::get_name ( ) const
pure virtual

Get register name.

Returns
name of the register.

◆ read()

template<typename IRegMem , typename ICommander >
virtual void itk::Register< IRegMem, ICommander >::read ( RegMem &  regmem,
Commander &  cmdr 
) const
pure virtual

Write command sequence to read register value from the chip. Does not send commands over e-link.

Parameters
regmem- reference to the register memory object.
cmdr- reference to the commander object.

◆ set()

template<typename IRegMem , typename ICommander >
virtual void itk::Register< IRegMem, ICommander >::set ( RegMem &  regmem,
reg_t  value 
) const
pure virtual

Set register value into the memory.

Parameters
regmem- reference to the register memory object.
value- register value.

◆ write()

template<typename IRegMem , typename ICommander >
virtual void itk::Register< IRegMem, ICommander >::write ( RegMem &  regmem,
Commander &  cmdr,
reg_t  value 
) const
pure virtual

Set register value in memory and write commands sequence to modify register value in chip to cmdr buffer, does not send commands over e-link.

Parameters
regmem- reference to the register memory object.
cmdr- reference to the commander object.
value- register value.

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