allpix::SequentialModule

A Module that always ensure to execute events in the order of event numbers. It implements buffering out of the box so interested modules can directly use it.

#include <Module.hpp>

Inherits from allpix::Module

Inherited by allpix::CorryvreckanWriterModule, allpix::DatabaseWriterModule, allpix::DepositionGeant4Module, allpix::DepositionReaderModule, allpix::LCIOWriterModule, allpix::RCEWriterModule, allpix::ROOTObjectWriterModule, allpix::TextWriterModule

Public Functions

Name
SequentialModule(Configuration & config)
SequentialModule(Configuration & config, std::shared_ptr< Detector > detector)

Protected Functions

Name
void waive_sequence_requirement(bool waive =true)
Release strict sequence processing requirement.

Friends

Name
class Event
class ModuleManager
class Messenger

Additional inherited members

Public Functions inherited from allpix::Module

Name
Module(const Module & ) =delete
Copying a module is not allowed.
Module & operator=(const Module & ) =delete
Copying a module is not allowed.
Module(Module && ) =delete
Disallow move behaviour (not possible with references)
Module & operator=(Module && ) =delete
Disallow move behaviour (not possible with references)
Module(Configuration & config)
Base constructor for unique modules.
Module(Configuration & config, std::shared_ptr< Detector > detector)
Base constructor for detector modules.
virtual ~Module()
Essential virtual destructor.
std::shared_ptr< Detector > getDetector() const
Get the detector linked to this module.
std::string getUniqueName() const
Get the unique name of this module.
std::string createOutputFile(const std::string & pathname, const std::string & extension ="", bool global =false, bool delete_file =false)
Create and return an absolute path to be used for output from a relative path.
TDirectory * getROOTDirectory() const
Get ROOT directory which should be used to output histograms et cetera.
ConfigManager * getConfigManager() const
Get the config manager object to allow to read the global and other module configurations.
bool multithreadingEnabled() const
Returns if multithreading of this module is enabled.
virtual void initializeThread()
Initialize the module for each thread after the global initialization.
virtual void initialize()
Initialize the module before the event sequence.
virtual void run(Event * event)
Execute the function of the module for every event.
virtual void finalizeThread()
Finalize the module after the event sequence for each thread.
virtual void finalize()
Finalize the module after the event sequence.

Protected Functions inherited from allpix::Module

Name
void allow_multithreading()
Enable multithreading for this module.
Configuration & get_configuration()
Get the module configuration for internal use.

Protected Attributes inherited from allpix::Module

Name
Configuration & config_

Friends inherited from allpix::Module

Name
class LocalMessenger

Public Functions Documentation

function SequentialModule

inline explicit SequentialModule(
    Configuration & config
)

function SequentialModule

inline explicit SequentialModule(
    Configuration & config,
    std::shared_ptr< Detector > detector
)

Protected Functions Documentation

function waive_sequence_requirement

void waive_sequence_requirement(
    bool waive =true
)

Release strict sequence processing requirement.

Friends

friend Event

friend class Event(
    Event 
);

friend ModuleManager

friend class ModuleManager(
    ModuleManager 
);

friend Messenger

friend class Messenger(
    Messenger 
);

Updated on 2024-12-13 at 08:31:36 +0000