|
pflib v3.12.0-1-g716e801
Pretty Fine HGCROC Interaction Library
|
Trigger path management interface. More...
#include <TRIG.h>
Public Member Functions | |
| virtual void | reset () |
| Reset the internals. | |
| virtual int | n_elinks () const =0 |
| How many elinks are there? | |
| virtual void | setup_alignment_capture (int delay)=0 |
| Set up the alignment capture function. | |
| virtual int | get_alignment_capture ()=0 |
| Get the alignment capture function. | |
| virtual std::vector< uint32_t > | read_capture_buffer (int ilink)=0 |
| Read the capture block for the given elink. | |
| virtual void | set_bx_delay (int ilink, int delay)=0 |
| Set the BX delay for the given elink. | |
| virtual int | get_bx_delay (int ilink)=0 |
| Get the BX delay for the given elink. | |
| void | set_l1a_per_ror (int l1a_per_ror) |
| int | get_l1a_per_ror () const |
| virtual void | setup_daq (int pipeline, int econ_id, int samples_per_l1a, int presamples)=0 |
| Setup the data collection of raw trigger data path. | |
| virtual void | get_daq_setup (int &pipeline, int &econ_id, int &samples_per_l1a, int &presamples)=0 |
| get the data collection setup | |
| virtual bool | is_sample_available ()=0 |
| Is there a sample available? | |
| virtual std::vector< uint32_t > | read_sample ()=0 |
| Read the next sample of raw trigger path data. | |
| std::vector< uint32_t > | read_event () |
| Read l1a_per_ror() number of samples and concatenate them into the same buffer. | |
| virtual void | setup_algo (const std::vector< uint32_t > ¶meters)=0 |
| configure the trigger algorithm | |
| virtual std::vector< uint32_t > | get_algo_setup ()=0 |
| get the trigger algorithm configuration | |
| virtual bool | is_algo_output_available ()=0 |
| Is there trigger algorithm output data? | |
| virtual std::vector< uint32_t > | read_algo_output_sample ()=0 |
| read the next sample of the output of the trigger algorithm | |
| std::vector< uint32_t > | read_algo_output () |
| read l1a_per_ror() number of samples of the algo output and concatenate them into the same buffer | |
| virtual bool | get_enable_single_shot ()=0 |
| virtual int | get_self_trigger_count ()=0 |
| virtual void | enable_single_shot (bool enable=true)=0 |
| virtual bool | single_shot_fired ()=0 |
| virtual void | reset_single_shot ()=0 |
Private Attributes | |
| int | l1a_per_ror_ {0} |
Trigger path management interface.
In full-detector configuration, the trigger path is handled mostly-independently from PFLIB. However, for teststand and debugging, the trigger path may be integrated into the same FPGA as the DAQ, motivating this software block.
|
pure virtual |
get the trigger algorithm configuration
Implemented in pflib::zcu::ZCUtrig.
|
pure virtual |
Get the alignment capture function.
Implemented in pflib::zcu::ZCUtrig.
|
pure virtual |
Get the BX delay for the given elink.
Implemented in pflib::zcu::ZCUtrig.
|
pure virtual |
get the data collection setup
Implemented in pflib::zcu::ZCUtrig.
|
pure virtual |
Is there trigger algorithm output data?
Implemented in pflib::zcu::ZCUtrig.
|
pure virtual |
Is there a sample available?
Implemented in pflib::zcu::ZCUtrig.
|
pure virtual |
How many elinks are there?
Implemented in pflib::zcu::ZCUtrig.
|
pure virtual |
read the next sample of the output of the trigger algorithm
Implemented in pflib::zcu::ZCUtrig.
|
pure virtual |
Read the capture block for the given elink.
Implemented in pflib::zcu::ZCUtrig.
|
pure virtual |
Read the next sample of raw trigger path data.
Implemented in pflib::zcu::ZCUtrig.
|
inlinevirtual |
Reset the internals.
Reimplemented in pflib::zcu::ZCUtrig.
|
pure virtual |
Set the BX delay for the given elink.
Implemented in pflib::zcu::ZCUtrig.
| void pflib::TRIG::set_l1a_per_ror | ( | int | l1a_per_ror | ) |
| [in] | l1a_per_ror | number of L1A sent per ReadOut Request This setting should be copied in from tgt->daq().samples_per_ror(). |
|
pure virtual |
configure the trigger algorithm
The implementation defines which indices correspond to which parameters since it depends on the target and firmware that is in use.
Implemented in pflib::zcu::ZCUtrig.
|
pure virtual |
Set up the alignment capture function.
Implemented in pflib::zcu::ZCUtrig.
|
pure virtual |
Setup the data collection of raw trigger data path.
| [in] | pipeline | how far back in time (in BX) we should start the capture |
| [in] | econ_id | id number for ECON-T we are capturing from |
| [in] | samples_per_l1a | how many samples to caputre per L1A |
| [in] | presamples | number of samples before the BX of interest (i.e. index of sample of interest) |
Implemented in pflib::zcu::ZCUtrig.