pflib v3.9.4-7-gb2e7f4f
Pretty Fine HGCROC Interaction Library
Loading...
Searching...
No Matches
pflib::HcalBackplaneZCU Class Reference
Inheritance diagram for pflib::HcalBackplaneZCU:
[legend]
Collaboration diagram for pflib::HcalBackplaneZCU:
[legend]

Public Member Functions

 HcalBackplaneZCU (int itarget, uint8_t board_mask)
 
virtual void softResetROC (int which) override
 Generate a soft reset to a specific HGCROC board, -1 for all.
 
virtual void softResetECON (int which=-1) override
 Generate a soft reset to a specific ECON board, -1 for all.
 
virtual void hardResetROCs () override
 Generate a hard reset to all the HGCROC boards.
 
virtual void hardResetECONs () override
 generate a hard reset to all the ECON boards
 
virtual Elinkselinks () override
 get the Elinks object
 
virtual DAQdaq () override
 get the DAQ object
 
virtual FastControlfc () override
 get the FastControl object
 
virtual void setup_run (int irun, Target::DaqFormat format, int contrib_id)
 
virtual std::vector< uint32_t > read_event () override
 
- Public Member Functions inherited from pflib::HcalBackplane
virtual ~HcalBackplane ()=default
 virtual destructor since we'll be holding this as a Target
 
void init (lpGBT &daq_lpgbt, lpGBT &trig_lpgbt, int hgcroc_boards)
 Common initialization for slow control given lpGBT objects and a mask for which HGCROC boards are connected.
 
virtual int nrocs () override
 number of boards
 
virtual int necons () override
 number of econds
 
virtual bool have_roc (int iroc) const override
 do we have a roc with this id?
 
virtual bool have_econ (int iecon) const override
 do we have an econ with this id?
 
virtual std::vector< int > roc_ids () const override
 get a list of the IDs we have set up
 
virtual std::vector< int > econ_ids () const override
 get a list of the econ IDs we have set up
 
virtual ROCroc (int which) override
 Get a ROC interface for the given HGCROC board.
 
virtual ECONecon (int which) override
 get a ECON interface for the given econ board
 
Bias bias (int which)
 Get an I2C interface for the given HGCROC board's bias bus

 
virtual GPIOgpio ()
 Get the GPIO object for debugging purposes.
 
const std::vector< std::pair< int, int > > & getRocErxMapping () override
 Get the ROC to eRx mapping.
 
- Public Member Functions inherited from pflib::Target
virtual uint32_t getFirmwareVersion ()
 Get the firmware version.
 
std::vector< std::stringi2c_bus_names ()
 names of different I2C busses we could talk to
 
I2Cget_i2c_bus (const std::string &name)
 get an I2C bus by name
 
std::vector< std::stringopto_link_names () const
 names of different Optical Links we could talk to
 
OptoLinkget_opto_link (const std::string &name) const
 get an OptoLink by name
 
virtual bool has_event ()
 

Private Attributes

std::unique_ptr< lpGBTdaq_lpgbt_
 
std::unique_ptr< lpGBTtrig_lpgbt_
 
std::unique_ptr< pflib::zcu::OptoElinksZCUelinks_
 
std::unique_ptr< pflib::zcu::ZCU_Capturedaq_
 
std::shared_ptr< pflib::FastControlfc_
 
Target::DaqFormat format_
 
int contrib_id_
 

Additional Inherited Members

- Public Types inherited from pflib::Target
enum class  DaqFormat { SIMPLEROC = 1 , ECOND_NO_ZS = 2 , ECOND_SW_HEADERS = 3 }
 types of daq formats that we can do More...
 
- Protected Attributes inherited from pflib::HcalBackplane
int nhgcroc_
 Number of HGCROC boards in this system.
 
int necon_
 Number of ECON boards in this system.
 
std::unique_ptr< GPIOgpio_
 The GPIO interface.
 
std::array< std::unique_ptr< HGCROCBoard >, 4 > rocs_
 the backplane can hold up to 4 HGCROC boards
 
std::array< std::unique_ptr< ECON >, 3 > econs_
 the ECONs on the ECON Mezzanine on this backplane
 
- Protected Attributes inherited from pflib::Target
std::map< std::string, std::shared_ptr< I2C > > i2c_
 
std::map< std::string, std::shared_ptr< OptoLink > > opto_
 
logging::logger the_log_ {logging::get("Target")}
 
std::vector< std::pair< int, int > > roc_to_erx_map_
 

Member Function Documentation

◆ daq()

virtual DAQ & pflib::HcalBackplaneZCU::daq ( )
inlineoverridevirtual

get the DAQ object

Implements pflib::HcalBackplane.

◆ elinks()

virtual Elinks & pflib::HcalBackplaneZCU::elinks ( )
inlineoverridevirtual

get the Elinks object

Implements pflib::HcalBackplane.

◆ fc()

virtual FastControl & pflib::HcalBackplaneZCU::fc ( )
inlineoverridevirtual

get the FastControl object

Implements pflib::Target.

◆ hardResetECONs()

virtual void pflib::HcalBackplaneZCU::hardResetECONs ( )
inlineoverridevirtual

generate a hard reset to all the ECON boards

Reimplemented from pflib::Target.

◆ hardResetROCs()

virtual void pflib::HcalBackplaneZCU::hardResetROCs ( )
inlineoverridevirtual

Generate a hard reset to all the HGCROC boards.

Reimplemented from pflib::Target.

◆ read_event()

virtual std::vector< uint32_t > pflib::HcalBackplaneZCU::read_event ( )
inlineoverridevirtual

Implements pflib::Target.

◆ setup_run()

virtual void pflib::HcalBackplaneZCU::setup_run ( int irun,
Target::DaqFormat format,
int contrib_id )
inlinevirtual

Reimplemented from pflib::Target.

◆ softResetECON()

virtual void pflib::HcalBackplaneZCU::softResetECON ( int which = -1)
inlineoverridevirtual

Generate a soft reset to a specific ECON board, -1 for all.

Reimplemented from pflib::Target.

◆ softResetROC()

virtual void pflib::HcalBackplaneZCU::softResetROC ( int which)
inlineoverridevirtual

Generate a soft reset to a specific HGCROC board, -1 for all.

Reimplemented from pflib::Target.


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