|
Jpp 19.3.0-rc.1
the software that should make you happy
|
Thread pool for event-by-event reconstruction. More...
#include <JMultiThreadedReconstruction.hh>
Classes | |
| struct | output_type |
| Output data type. More... | |
| struct | queue_type_t |
| Auxiliary data structure to maintain time order of events for writing. More... | |
Public Types | |
| typedef JFit_t::input_type | input_type |
| typedef JLANG::JObjectOutput< JEvt > | writer_type |
Public Member Functions | |
| JMultiThreadedReconstruction (const JFit_t &fit, writer_type &writer, const size_t ns, const size_t backlog=std::numeric_limits< size_t >::max()) | |
| Constructor. | |
| ~JMultiThreadedReconstruction () | |
| Destructor. | |
| void | enqueue (input_type &data) |
| Add data in queue. | |
Private Types | |
| typedef std::priority_queue< output_type, std::vector< output_type > > | queue_type |
| Type definition of output queue. | |
Private Attributes | |
| JRECONSTRUCTION::JMultiThreadedReconstruction::queue_type_t | output |
| writer_type & | writer |
| std::vector< std::thread > | workers |
| std::queue< input_type > | input |
| std::mutex | in |
| std::mutex | out |
| std::condition_variable | cv |
| std::condition_variable | cw |
| bool | stop |
| size_t | backlog |
Thread pool for event-by-event reconstruction.
Definition at line 32 of file JMultiThreadedReconstruction.hh.
| JFit_t::input_type JRECONSTRUCTION::JMultiThreadedReconstruction< JFit_t >::input_type |
Definition at line 35 of file JMultiThreadedReconstruction.hh.
| JLANG::JObjectOutput<JEvt> JRECONSTRUCTION::JMultiThreadedReconstruction< JFit_t >::writer_type |
Definition at line 36 of file JMultiThreadedReconstruction.hh.
|
private |
Type definition of output queue.
Definition at line 216 of file JMultiThreadedReconstruction.hh.
|
inline |
Constructor.
| fit | fit |
| writer | writer |
| ns | number of threads |
| backlog | backlog |
Definition at line 47 of file JMultiThreadedReconstruction.hh.
|
inline |
Destructor.
Definition at line 104 of file JMultiThreadedReconstruction.hh.
|
inline |
Add data in queue.
| data | data |
Definition at line 136 of file JMultiThreadedReconstruction.hh.
|
private |
|
private |
Definition at line 284 of file JMultiThreadedReconstruction.hh.
|
private |
Definition at line 285 of file JMultiThreadedReconstruction.hh.
|
private |
Definition at line 286 of file JMultiThreadedReconstruction.hh.
|
private |
Definition at line 287 of file JMultiThreadedReconstruction.hh.
|
private |
Definition at line 288 of file JMultiThreadedReconstruction.hh.
|
private |
Definition at line 289 of file JMultiThreadedReconstruction.hh.
|
private |
Definition at line 290 of file JMultiThreadedReconstruction.hh.
|
private |
Definition at line 291 of file JMultiThreadedReconstruction.hh.
|
private |
Definition at line 292 of file JMultiThreadedReconstruction.hh.