|
pflib v3.9.0-rc3-11-g2537d8f
Pretty Fine HGCROC Interaction Library
|
representing an HcalBackplane More...
#include <HcalBackplane.h>
Classes | |
| struct | ECONConnection |
| The I2C interface and object for a ECON board. More... | |
| struct | ROCConnection |
| The I2C interfaces and objects for a HGCROC board. More... | |
Public Member Functions | |
| 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 ROC & | roc (int which) override |
| Get a ROC interface for the given HGCROC board. | |
| virtual ECON & | econ (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 GPIO & | gpio () |
| Get the GPIO object for debugging purposes. | |
| virtual Elinks & | elinks ()=0 |
| get the Elinks object | |
| virtual DAQ & | daq ()=0 |
| get the DAQ object | |
Public Member Functions inherited from pflib::Target | |
| virtual void | hardResetROCs () |
| Generate a hard reset to all the HGCROC boards. | |
| virtual void | hardResetECONs () |
| generate a hard reset to all the ECON boards | |
| virtual uint32_t | getFirmwareVersion () |
| Get the firmware version. | |
| virtual void | softResetROC (int which=-1) |
| Generate a soft reset to a specific HGCROC board, -1 for all. | |
| virtual void | softResetECON (int which=-1) |
| Generate a soft reset to a specific ECON board, -1 for all. | |
| virtual FastControl & | fc ()=0 |
| get the FastControl object | |
| std::vector< std::string > | i2c_bus_names () |
| names of different I2C busses we could talk to | |
| I2C & | get_i2c_bus (const std::string &name) |
| get an I2C bus by name | |
| std::vector< std::string > | opto_link_names () const |
| names of different Optical Links we could talk to | |
| OptoLink & | get_opto_link (const std::string &name) const |
| get an OptoLink by name | |
| virtual void | setup_run (int irun, DaqFormat format, int contrib_id=-1) |
| virtual std::vector< uint32_t > | read_event ()=0 |
| virtual bool | has_event () |
Protected Member Functions | |
| void | add_roc (int iroc, uint8_t roc_baseaddr, const std::string &roc_type_version, std::shared_ptr< I2C > roc_i2c, std::shared_ptr< I2C > bias_i2c, std::shared_ptr< I2C > board_i2c) |
| Add a ROC to the set of ROCs. | |
| void | add_econ (int iecon, uint8_t econ_baseaddr, const std::string &econ_type, std::shared_ptr< I2C > econ_i2c) |
| Add a ECON to the set of ECONs. | |
Protected Attributes | |
| int | nhgcroc_ |
| Number of HGCROC boards in this system. | |
| int | necon_ |
| Number of ECON boards in this system. | |
| std::unique_ptr< GPIO > | gpio_ |
| The GPIO interface. | |
| std::map< int, ROCConnection > | roc_connections_ |
| std::map< int, ECONConnection > | econ_connections_ |
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")} |
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... | |
representing an HcalBackplane
|
pure virtual |
get the DAQ object
Implements pflib::Target.
Implemented in pflib::HcalBackplaneBW, pflib::HcalBackplaneZCU, and pflib::HcalFiberless.
|
overridevirtual |
get a ECON interface for the given econ board
Reimplemented from pflib::Target.
|
overridevirtual |
get a list of the econ IDs we have set up
Reimplemented from pflib::Target.
|
pure virtual |
get the Elinks object
Implements pflib::Target.
Implemented in pflib::HcalBackplaneBW, pflib::HcalBackplaneZCU, and pflib::HcalFiberless.
|
overridevirtual |
do we have an econ with this id?
Reimplemented from pflib::Target.
|
overridevirtual |
do we have a roc with this id?
Reimplemented from pflib::Target.
|
inlineoverridevirtual |
number of econds
Reimplemented from pflib::Target.
|
inlineoverridevirtual |
number of boards
Reimplemented from pflib::Target.
|
overridevirtual |
Get a ROC interface for the given HGCROC board.
Reimplemented from pflib::Target.
|
overridevirtual |
get a list of the IDs we have set up
Reimplemented from pflib::Target.