RMM API 2.0.0
Loading...
Searching...
No Matches
FrontEndInterface Class Referenceabstract

Interface for interacting with the frontends, providing methods for reading and writing user registers and fields. More...

#include <FrontEndInterface.h>

Inheritance diagram for FrontEndInterface:

Public Member Functions

virtual RMMResult userRegRead (const std::string &name)=0
 Reads data from a FEN register.
 
virtual RMMResult userRegRead (uint32_t addr)=0
 Reads data from a FEN register.
 
virtual RMMResult userRegWrite (const std::string &name, uint32_t data)=0
 Writes data to a FEN register.
 
virtual RMMResult userRegWrite (uint32_t addr, uint32_t data)=0
 Writes data to a FEN register.
 
virtual RMMResult userFieldRead (const std::string &reg, int bit_begin, int bit_width)=0
 Reads a specific field from a FEN register.
 
virtual RMMResult userFieldRead (uint32_t addr, int bit_begin, int bit_width)=0
 Reads a specific field from a FEN register.
 
virtual RMMResult userFieldWrite (const std::string &reg, int bit_begin, int bit_width, uint32_t data)=0
 Writes data to a specific field of a FEN register.
 
virtual RMMResult userFieldWrite (uint32_t addr, int bit_begin, int bit_width, uint32_t data)=0
 Writes data to a specific field of a FEN register.
 
virtual void configFE ()=0
 Configures the frontend.
 

Detailed Description

Interface for interacting with the frontends, providing methods for reading and writing user registers and fields.

This interface defines methods for reading and writing registers and fields in a frontend system. Derived classes must implement these methods to interface with the frontends.

Member Function Documentation

◆ configFE()

virtual void FrontEndInterface::configFE ( )
pure virtual

Configures the frontend.

Derived classes should implement this method to configure the frontend. The configuration may involve setting up registers, initializing hardware, or other actions needed to properly configure the frontend for use.

◆ userFieldRead() [1/2]

virtual RMMResult FrontEndInterface::userFieldRead ( const std::string & reg,
int bit_begin,
int bit_width )
pure virtual

Reads a specific field from a FEN register.

Derived classes should implement this method to read a specific field (range of bits) from a register.

Parameters
[in]regThe name of the register to read from.
[in]bit_beginThe index of the lowest bit in the register that is part of the field.
[in]bit_widthThe width of the field in bits.
Returns
RMMResult The value of the field and the status of the operation.

Implemented in FrontEndBase.

◆ userFieldRead() [2/2]

virtual RMMResult FrontEndInterface::userFieldRead ( uint32_t addr,
int bit_begin,
int bit_width )
pure virtual

Reads a specific field from a FEN register.

Derived classes should implement this method to read a specific field (range of bits) from a register.

Parameters
[in]addrThe addr of the register to read from.
[in]bit_beginThe index of the lowest bit in the register that is part of the field.
[in]bit_widthThe width of the field in bits.
Returns
RMMResult The value of the field and the status of the operation.

Implemented in FrontEndBase.

◆ userFieldWrite() [1/2]

virtual RMMResult FrontEndInterface::userFieldWrite ( const std::string & reg,
int bit_begin,
int bit_width,
uint32_t data )
pure virtual

Writes data to a specific field of a FEN register.

Derived classes should implement this method to write data to a specific field (range of bits) in a register.

Parameters
[in]regThe name of the register to write to.
[in]bit_beginThe index of the lowest bit in the register that is part of the field.
[in]bit_widthThe width of the field in bits.
[in]dataThe data to write to the field.
Returns
RMMResult The final value of the field and the status of the operation.

Implemented in FrontEndBase.

◆ userFieldWrite() [2/2]

virtual RMMResult FrontEndInterface::userFieldWrite ( uint32_t addr,
int bit_begin,
int bit_width,
uint32_t data )
pure virtual

Writes data to a specific field of a FEN register.

Derived classes should implement this method to write data to a specific field (range of bits) in a register.

Parameters
[in]addrThe addr of the register to write to.
[in]bit_beginThe index of the lowest bit in the register that is part of the field.
[in]bit_widthThe width of the field in bits.
[in]dataThe data to write to the field.
Returns
RMMResult The final value of the field and the status of the operation.

Implemented in FrontEndBase.

◆ userRegRead() [1/2]

virtual RMMResult FrontEndInterface::userRegRead ( const std::string & name)
pure virtual

Reads data from a FEN register.

Derived classes should implement this method to read data from the specified register in the frontend node.

Parameters
[in]nameThe name of the FEN register to read data from.
Returns
RMMResult The data read and the status of the operation.

Implemented in FrontEndBase.

◆ userRegRead() [2/2]

virtual RMMResult FrontEndInterface::userRegRead ( uint32_t addr)
pure virtual

Reads data from a FEN register.

Derived classes should implement this method to read data from the specified register in the frontend node.

Parameters
[in]addrThe addr of the FEN register to read data from.
Returns
RMMResult The data read and the status of the operation.

Implemented in FrontEndBase.

◆ userRegWrite() [1/2]

virtual RMMResult FrontEndInterface::userRegWrite ( const std::string & name,
uint32_t data )
pure virtual

Writes data to a FEN register.

Derived classes should implement this method to write data to the specified register in the frontend node.

Parameters
[in]nameThe name of the FEN register to write data to.
[in]dataThe data to write to the register.
Returns
RMMResult The data recorded in the register after the write operation and the status of the operation.

Implemented in FrontEndBase.

◆ userRegWrite() [2/2]

virtual RMMResult FrontEndInterface::userRegWrite ( uint32_t addr,
uint32_t data )
pure virtual

Writes data to a FEN register.

Derived classes should implement this method to write data to the specified register in the frontend node.

Parameters
[in]addrThe addr of the FEN register to write data to.
[in]dataThe data to write to the register.
Returns
RMMResult The data recorded in the register after the write operation and the status of the operation.

Implemented in FrontEndBase.


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