![]() |
GRSISort "v4.0.0.5"
An extension of the ROOT analysis Framework
|
![]() |
The TFragmentMap calculates the charges of piled-up hits. In the newest GRIFFIN data (starting with tests in 2016), piled-up hits have 2*n-1 integrated charges reported, for the different integration areas.
Definition at line 28 of file TFragmentMap.h.
Public Member Functions | |
TFragmentMap (std::vector< std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TFragment > > > > &goodOutputQueue, std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TBadFragment > > > &badOutputQueue) | |
bool | Add (const std::shared_ptr< TFragment > &, const std::vector< Int_t > &, const std::vector< Short_t > &) |
Private Member Functions | |
void | DropFragments (std::pair< std::multimap< UInt_t, std::tuple< std::shared_ptr< TFragment >, std::vector< Int_t >, std::vector< Short_t > > >::iterator, std::multimap< UInt_t, std::tuple< std::shared_ptr< TFragment >, std::vector< Int_t >, std::vector< Short_t > > >::iterator > &range) |
void | Solve (std::vector< std::shared_ptr< TFragment > >, std::vector< Float_t >, std::vector< Long_t >, int situation=-1) |
Private Attributes | |
std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TBadFragment > > > & | fBadOutputQueue |
std::vector< std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TFragment > > > > & | fGoodOutputQueue |
std::multimap< UInt_t, std::tuple< std::shared_ptr< TFragment >, std::vector< Int_t >, std::vector< Short_t > > > | fMap |
Static Private Attributes | |
static bool | fDebug = false |
TFragmentMap::TFragmentMap | ( | std::vector< std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TFragment > > > > & | goodOutputQueue, |
std::shared_ptr< ThreadsafeQueue< std::shared_ptr< const TBadFragment > > > & | badOutputQueue ) |
Definition at line 7 of file TFragmentMap.cxx.
bool TFragmentMap::Add | ( | const std::shared_ptr< TFragment > & | frag, |
const std::vector< Int_t > & | charge, | ||
const std::vector< Short_t > & | integrationLength ) |
Definition at line 14 of file TFragmentMap.cxx.
References DropFragments(), fDebug, fGoodOutputQueue, fMap, hex(), and Solve().
Referenced by TGRSIDataParser::GriffinDataToFragment().
|
private |
put the fragments within the range of the two iterators into the bad output queue
Definition at line 453 of file TFragmentMap.cxx.
References fBadOutputQueue, fDebug, and fMap.
Referenced by Add().
|
private |
Solves minimization of charges for given integrated charges (charges) and integration lengths (kValues). Resulting charges are stored in the provided fragments with a k-value of 1. The situation parameter distinguishes between the two different ways 3 hits can pile up with each other: 3 - both later hits pile up with the first, any other value - the third hit only piles up with the second hit not the first one.
Definition at line 341 of file TFragmentMap.cxx.
References fDebug.
Referenced by Add().
|
private |
Definition at line 49 of file TFragmentMap.h.
Referenced by DropFragments().
|
staticprivate |
Definition at line 40 of file TFragmentMap.h.
Referenced by Add(), DropFragments(), and Solve().
|
private |
Definition at line 48 of file TFragmentMap.h.
Referenced by Add().
|
private |
Definition at line 47 of file TFragmentMap.h.
Referenced by Add(), and DropFragments().