pflib v3.9.0-rc3-11-g2537d8f
Pretty Fine HGCROC Interaction Library
Loading...
Searching...
No Matches
pflib::OptoLink Class Referenceabstract

Represents an interface to the optical links (GTX, GTH, GTY) and the upper levels of the encoder/decoder blocks. More...

#include <OptoLink.h>

Inheritance diagram for pflib::OptoLink:
[legend]
Collaboration diagram for pflib::OptoLink:
[legend]

Public Member Functions

virtual int ilink ()=0
 which optical link does this represent?
 
virtual bool is_bidirectional ()
 is this link bidirectional (e.g. a DAQ lpGBT)
 
virtual void reset_link ()=0
 reset a given optical link, may have side-effects
 
virtual void run_linktrick ()
 
virtual bool get_rx_polarity ()=0
 
virtual bool get_tx_polarity ()=0
 
virtual void set_rx_polarity (bool polarity)=0
 
virtual void set_tx_polarity (bool polarity)=0
 
virtual std::map< std::string, uint32_t > opto_status ()=0
 
virtual std::map< std::string, uint32_t > opto_rates ()=0
 
virtual lpGBT_ConfigTransportlpgbt_transport ()=0
 
lpGBTlpgbt ()
 
virtual int get_elink_tx_mode (int elink)=0
 there are four TX elinks configured in the coder block, this is needed for testing purposes only
 
virtual void set_elink_tx_mode (int elink, int mode)=0
 
virtual void capture_ec (int mode, std::vector< uint8_t > &tx, std::vector< uint8_t > &rx)=0
 
virtual void capture_ic (int mode, std::vector< uint8_t > &tx, std::vector< uint8_t > &rx)=0
 

Private Attributes

std::unique_ptr< lpGBTlpgbt_
 

Detailed Description

Represents an interface to the optical links (GTX, GTH, GTY) and the upper levels of the encoder/decoder blocks.

Member Function Documentation

◆ get_elink_tx_mode()

virtual int pflib::OptoLink::get_elink_tx_mode ( int elink)
pure virtual

there are four TX elinks configured in the coder block, this is needed for testing purposes only

Implemented in pflib::bittware::BWOptoLink, and pflib::zcu::ZCUOptoLink.

◆ ilink()

virtual int pflib::OptoLink::ilink ( )
pure virtual

which optical link does this represent?

Implemented in pflib::bittware::BWOptoLink, and pflib::zcu::ZCUOptoLink.

◆ is_bidirectional()

virtual bool pflib::OptoLink::is_bidirectional ( )
inlinevirtual

is this link bidirectional (e.g. a DAQ lpGBT)

Reimplemented in pflib::bittware::BWOptoLink, and pflib::zcu::ZCUOptoLink.

◆ reset_link()

virtual void pflib::OptoLink::reset_link ( )
pure virtual

reset a given optical link, may have side-effects

Implemented in pflib::bittware::BWOptoLink, and pflib::zcu::ZCUOptoLink.


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