DUNE-DAQ
DUNE Trigger and Data Acquisition software
Loading...
Searching...
No Matches
tpglibs::AbstractProcessor< T > Class Template Referenceabstract

Abstract signal processor. More...

#include <AbstractProcessor.hpp>

Public Types

using signal_type_t = T
 Signal type to process on. General __m256i.
 

Public Member Functions

virtual ~AbstractProcessor ()=default
 
virtual void configure (const nlohmann::json &config, const int16_t *plane_numbers)=0
 Pure virtual function that will configure the processor using plane numbers.
 
void set_next_processor (std::shared_ptr< AbstractProcessor< T > > next_processor)
 Setter for next processor.
 
virtual T process (const T &signal)
 Simple signal pass-through.
 

Private Attributes

std::shared_ptr< AbstractProcessor< T > > m_next_processor
 Points to next processor in the chain.
 

Detailed Description

template<class T>
class tpglibs::AbstractProcessor< T >

Abstract signal processor.

Configurable signal processor for TPG.

Definition at line 23 of file AbstractProcessor.hpp.

Member Typedef Documentation

◆ signal_type_t

template<class T >
using tpglibs::AbstractProcessor< T >::signal_type_t = T

Signal type to process on. General __m256i.

Definition at line 29 of file AbstractProcessor.hpp.

Constructor & Destructor Documentation

◆ ~AbstractProcessor()

template<class T >
virtual tpglibs::AbstractProcessor< T >::~AbstractProcessor ( )
virtualdefault

Member Function Documentation

◆ configure()

template<class T >
virtual void tpglibs::AbstractProcessor< T >::configure ( const nlohmann::json & config,
const int16_t * plane_numbers )
pure virtual

◆ process()

template<class T >
virtual T tpglibs::AbstractProcessor< T >::process ( const T & signal)
inlinevirtual

◆ set_next_processor()

template<class T >
void tpglibs::AbstractProcessor< T >::set_next_processor ( std::shared_ptr< AbstractProcessor< T > > next_processor)
inline

Setter for next processor.

Definition at line 37 of file AbstractProcessor.hpp.

37 {
38 m_next_processor = next_processor;
39 }

Member Data Documentation

◆ m_next_processor

template<class T >
std::shared_ptr<AbstractProcessor<T> > tpglibs::AbstractProcessor< T >::m_next_processor
private

Points to next processor in the chain.

Definition at line 25 of file AbstractProcessor.hpp.


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