Go to the documentation of this file.
2 #ifndef L1GCTPROCESSOR_H_
3 #define L1GCTPROCESSOR_H_
44 inline void setBxRange(
const int firstBx,
const int numberOfBx) {
93 void reset(
const unsigned nBx) {
98 void store(
const T& thisBx,
const int bxNum) {
contents.at(bxNum) = thisBx; }
100 void store(
const std::vector<T>& thisBx,
const int bxNum) {
void setNextBx(const int bxnum)
clear input data buffers and process a new bunch crossing
virtual void resetPipelines()=0
void setVerbose()
control output messages
void setBxRange(const int firstBx, const int numberOfBx)
define the bunch crossing range to process
bool setupOk() const
Method to check the setup for this processor. Returns true by default.
void resize(const unsigned size)
std::vector< T > contents
void store(const std::vector< T > &thisBx, const int bxNum)
void reset()
complete reset of processor
void store(const T &thisBx, const int bxNum)
bool m_verbose
Flag to control output messages.
int bxMin() const
Support for multiple beam crossing operation.
int m_bx
Support for multiple beam crossing operation.
Pipeline(const unsigned size)
virtual void process()=0
process the data and set outputs
virtual void setupObjects()=0
Initialise inputs with null objects for the correct bunch crossing if required.
virtual void fetchInput()=0
set the input buffers
virtual ~L1GctProcessor()
ABC for a GCT trigger data processing unit.
void reset(const unsigned nBx)
virtual void resetProcessor()=0
Separate reset methods for the processor itself and any data stored in pipelines.