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.