Jpp
master_rocky-37-gf0c5bc59d
the software that should make you happy
|
Default CLB simulation. More...
#include <JCLBDefaultSimulator.hh>
Classes | |
class | JStateMachine |
Auxiliary class to mimic hit ordering effects due to state machine inside CLB. More... | |
class | JTDC |
Implementation of non-linearity of TDC. More... | |
Public Types | |
typedef JDAQHit::JPMT_t | JPMT_t |
typedef JDAQHit::JTDC_t | JTDC_t |
typedef JDAQHit::JTOT_t | JTOT_t |
Public Member Functions | |
JCLBDefaultSimulator (const JDAQHit::JTDC_t Tmax=0) | |
Constructor. More... | |
JDAQFrameStatus | getDAQFrameStatus (const JModuleIdentifier &id) const |
Get DAQ frame status of given module. More... | |
virtual void | processData (const JModuleIdentifier &id, const JCLBInput &input, JDAQSuperFrame &output) const override |
Process data. More... | |
virtual int | getUDPNumberOfReceivedPackets (const JModuleIdentifier &id) const |
Get number of received UDP packets. More... | |
virtual int | getUDPMaximalSequenceNumber (const JModuleIdentifier &id) const |
Get maximal sequence number of UDP packet. More... | |
virtual bool | hasUDPTrailer (const JModuleIdentifier &id) const |
Get UDP trailer status. More... | |
virtual bool | getHighRateVeto (const JPMTIdentifier &id) const |
Get high-rate veto of given PMT. More... | |
Static Public Member Functions | |
static double | getMinimalToT () |
Get minimal pulse length of time-over-threshold measurement. More... | |
Static Public Attributes | |
static const struct JDETECTOR::JCLBDefaultSimulatorInterface::compare | compare |
Private Attributes | |
JLANG::JSinglePointer< JTDC > | TDC |
JLANG::JSinglePointer< JStateMachine > | state_machine |
std::vector< JDAQHit > | buffer |
Default CLB simulation.
This class provides for the implementation of the conversion of a time-over-threshold pulse to a hit.
A hit consists of:
The time stamping and pulse length determination is done by a TDC which is integrated inside the FPGA. The observed non-linearity of the TDC is implemented in this class.
Although the hits from the same PMT are striclty time sorted, hits from different PMTs could be reordered due to the occupancy of the buffers inside the FPGA. This reordering is also implemented in the this class.
Definition at line 134 of file JCLBDefaultSimulator.hh.
|
inherited |
Definition at line 60 of file JCLBDefaultSimulatorInterface.hh.
|
inherited |
Definition at line 61 of file JCLBDefaultSimulatorInterface.hh.
|
inherited |
Definition at line 62 of file JCLBDefaultSimulatorInterface.hh.
|
inline |
Constructor.
Tmax | maximal time difference for swap [ns] |
Definition at line 223 of file JCLBDefaultSimulator.hh.
|
inlineinherited |
Get DAQ frame status of given module.
id | module identifier |
Definition at line 142 of file JCLBDefaultSimulatorInterface.hh.
|
inlineoverridevirtualinherited |
Process data.
id | module identifier |
input | PMT data |
output | CLB data |
Implements JDETECTOR::JCLBSimulator.
Definition at line 166 of file JCLBDefaultSimulatorInterface.hh.
|
inlinevirtualinherited |
Get number of received UDP packets.
id | module identifier |
Reimplemented in JTRIGGER::JCLBRunByRunSimulator.
Definition at line 271 of file JCLBDefaultSimulatorInterface.hh.
|
inlinevirtualinherited |
Get maximal sequence number of UDP packet.
id | module identifier |
Reimplemented in JTRIGGER::JCLBRunByRunSimulator.
Definition at line 283 of file JCLBDefaultSimulatorInterface.hh.
|
inlinevirtualinherited |
Get UDP trailer status.
id | module identifier |
Reimplemented in JTRIGGER::JCLBRunByRunSimulator.
Definition at line 295 of file JCLBDefaultSimulatorInterface.hh.
|
inlinevirtualinherited |
Get high-rate veto of given PMT.
id | PMT identifier |
Reimplemented in JTRIGGER::JCLBRunByRunSimulator.
Definition at line 307 of file JCLBDefaultSimulatorInterface.hh.
|
inlinestaticinherited |
Get minimal pulse length of time-over-threshold measurement.
Definition at line 318 of file JCLBDefaultSimulatorInterface.hh.
|
staticinherited |
|
privateinherited |
Definition at line 356 of file JCLBDefaultSimulatorInterface.hh.
|
privateinherited |
Definition at line 357 of file JCLBDefaultSimulatorInterface.hh.
|
mutableprivateinherited |
Definition at line 358 of file JCLBDefaultSimulatorInterface.hh.