FpgaManager
Software API Documentation
FpgaManager Class Reference

The FPGA Manager API More...

#include <FpgaManager.h>

Inheritance diagram for FpgaManager:
IFpgaManager

Public Member Functions

 FpgaManager (const types::ApiUrl &url)
 Constructor More...
 
 FpgaManager (const types::ApiUrl &url, config::Profile profile)
 Constructor More...
 
 ~FpgaManager ()
 Destructor More...
 
virtual const types::ApiUrlUrl () const override
 Getter for API URL More...
 
virtual config::ConfigSettings Config () const override
 Getter for Configuration More...
 
virtual types::ApiDetails Details () const override
 Details of the FPGA Manager libraries More...
 
virtual void Configure (const config::ConfigSettings &settings) override
 Updates the configuration with which all transport instances are configured from More...
 
virtual ISystemSystemApi () override
 Getter for SystemApi interface More...
 
virtual IMmAccessCreateMemoryMap (unsigned stream_idx) override
 Creates an interface for memory mapped access More...
 
virtual IStreamCreateStream (unsigned stream_idx, StreamType type, StreamDirection direction) override
 Creates an interface for stream access More...
 
virtual void Open () override
 Opens the FPGA Manager connection and creates all primed memory-maps and streams More...
 
- Public Member Functions inherited from IFpgaManager
virtual ~IFpgaManager ()=default
 Destructor More...
 

Detailed Description

The FPGA Manager API

Constructor & Destructor Documentation

◆ FpgaManager() [1/2]

FpgaManager ( const types::ApiUrl url)
explicit

Constructor

Parameters
urlURL of the FPGA Manager Slave to connect to

◆ FpgaManager() [2/2]

FpgaManager ( const types::ApiUrl url,
config::Profile  profile 
)

Constructor

Parameters
urlURL of the FPGA Manager Slave to connect to
profileConfiguration profile

◆ ~FpgaManager()

Destructor

Member Function Documentation

◆ Config()

virtual config::ConfigSettings Config ( ) const
overridevirtual

Getter for Configuration

Returns
ConfigSettings object

Implements IFpgaManager.

◆ Configure()

virtual void Configure ( const config::ConfigSettings settings)
overridevirtual

Updates the configuration with which all transport instances are configured from

Not allowed if the connection has already been opened

Parameters
settingsConfiguration

Implements IFpgaManager.

◆ CreateMemoryMap()

virtual IMmAccess& CreateMemoryMap ( unsigned  stream_idx)
overridevirtual

Creates an interface for memory mapped access

Not allowed if the connection has already been opened. Stream numbers must be globally unique. Connection must be opened before interface can be accessed.

Parameters
stream_idxStream the MM-Handler is attached to (must match FPGA FW implementation)
Returns
Memory mapped access interface

Implements IFpgaManager.

◆ CreateStream()

virtual IStream& CreateStream ( unsigned  stream_idx,
StreamType  type,
StreamDirection  direction 
)
overridevirtual

Creates an interface for stream access

Not allowed if the connection has already been opened. Stream numbers must be globally unique. Connection must be opened before interface can be accessed.

Parameters
stream_idxFPGA Manager stream number to use (must match FPGA FW implementation)
typeType of the stream
directionDirection of the stream
Returns
Stream API interface

Implements IFpgaManager.

◆ Details()

virtual types::ApiDetails Details ( ) const
overridevirtual

Details of the FPGA Manager libraries

Returns
ApiDetails object

Implements IFpgaManager.

◆ Open()

virtual void Open ( )
overridevirtual

Opens the FPGA Manager connection and creates all primed memory-maps and streams

Implements IFpgaManager.

◆ SystemApi()

virtual ISystem& SystemApi ( )
overridevirtual

Getter for SystemApi interface

Returns
ISystemApi interface

Implements IFpgaManager.

◆ Url()

virtual const types::ApiUrl& Url ( ) const
overridevirtual

Getter for API URL

Returns
ApiUrl object

Implements IFpgaManager.


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