![]() |
ATLAS Offline Software
|
#include <EFInterfaceEmulator.h>
Public Member Functions | |
| EFInterfaceEmulator (const boost::property_tree::ptree &args) | |
| virtual void | open () override |
| Opens the Session. | |
| virtual void | close () override |
| Closes the Session. | |
| virtual std::future< std::unique_ptr< uint32_t[]> > | getNext () override |
| Returns a pointer to the next Event object to be processed. | |
| virtual std::future< void > | accept (uint64_t l0id, std::unique_ptr< uint32_t[]> hltr) override |
| Marks the event as accepted by the High-Level Trigger. | |
| virtual std::future< void > | reject (uint64_t l0id) override |
| Marks the event as rejected by the High-Level Trigger. | |
| virtual | ~EFInterfaceEmulator () |
Private Member Functions | |
| void | inputThreadCallback () |
| Compression level of built event. | |
| void | outputThreadCallback () |
| The method executed by the output handling thread. | |
Private Attributes | |
| std::string | m_name |
| std::unique_ptr< FileReaderWriter > | m_file_rw |
| eformat::Compression | m_comp |
| unsigned int | m_compLevel |
| Compression type of built event. | |
| std::unique_ptr< HLT::LoopThread > | m_inputThread |
| Input handling thread (triggers reading new events) | |
| std::unique_ptr< HLT::LoopThread > | m_outputThread |
| Output handling thread (triggers post-processing of finished events) | |
| std::queue< std::promise< std::unique_ptr< uint32_t[]> > > | m_inputQueue |
| queue of promises for getNext() calls | |
| std::mutex | m_iQMutex |
| queue mutex | |
| std::queue< std::pair< uint64_t, std::unique_ptr< uint32_t[]> > > | m_outputQueue |
| queue of promises for accept() calls | |
| std::mutex | m_oQMutex |
| queue mutex | |
| std::unordered_map< uint64_t, std::vector< std::unique_ptr< uint32_t[]> > > | m_events |
| Map of events read from the input (stores duplicates per L1ID) | |
| std::mutex | m_mMutex |
| Map mutex. | |
| std::mutex | m_RWMutex |
| ReadWrite mutex for the file reader/writer. | |
Definition at line 39 of file EFInterfaceEmulator.h.
| EFInterfaceEmulator::EFInterfaceEmulator | ( | const boost::property_tree::ptree & | args | ) |
Definition at line 15 of file EFInterfaceEmulator.cxx.
|
virtual |
Definition at line 96 of file EFInterfaceEmulator.cxx.
|
overridevirtual |
Marks the event as accepted by the High-Level Trigger.
Definition at line 70 of file EFInterfaceEmulator.cxx.
|
overridevirtual |
Closes the Session.
Definition at line 43 of file EFInterfaceEmulator.cxx.
|
overridevirtual |
Returns a pointer to the next Event object to be processed.
Definition at line 57 of file EFInterfaceEmulator.cxx.
|
private |
Compression level of built event.
The method executed by the input handling thread
Definition at line 98 of file EFInterfaceEmulator.cxx.
|
overridevirtual |
Opens the Session.
Definition at line 33 of file EFInterfaceEmulator.cxx.
|
private |
The method executed by the output handling thread.
Definition at line 149 of file EFInterfaceEmulator.cxx.
|
overridevirtual |
Marks the event as rejected by the High-Level Trigger.
Definition at line 84 of file EFInterfaceEmulator.cxx.
|
private |
Definition at line 72 of file EFInterfaceEmulator.h.
|
private |
Compression type of built event.
Definition at line 73 of file EFInterfaceEmulator.h.
|
private |
Map of events read from the input (stores duplicates per L1ID)
Definition at line 96 of file EFInterfaceEmulator.h.
|
private |
Definition at line 71 of file EFInterfaceEmulator.h.
|
private |
queue of promises for getNext() calls
Definition at line 86 of file EFInterfaceEmulator.h.
|
private |
Input handling thread (triggers reading new events)
Definition at line 81 of file EFInterfaceEmulator.h.
|
private |
queue mutex
Definition at line 88 of file EFInterfaceEmulator.h.
|
private |
Map mutex.
Definition at line 98 of file EFInterfaceEmulator.h.
|
private |
Definition at line 70 of file EFInterfaceEmulator.h.
|
private |
queue mutex
Definition at line 93 of file EFInterfaceEmulator.h.
|
private |
queue of promises for accept() calls
Definition at line 91 of file EFInterfaceEmulator.h.
|
private |
Output handling thread (triggers post-processing of finished events)
Definition at line 83 of file EFInterfaceEmulator.h.
|
private |
ReadWrite mutex for the file reader/writer.
Definition at line 101 of file EFInterfaceEmulator.h.