Class Reference for E1039 Core & Analysis Software
UtilTrigger Namespace Reference

Classes

class  TrigRoad
 
class  TrigRoads
 
class  TrigRoadset
 Class to handle the trigger roadset. More...
 

Functions

int Hodo2Road (const int h1, const int h2, const int h3, const int h4, const int tb)
 Convert a set of hodo IDs to a roadset ID. More...
 
void Road2Hodo (const int road, int &h1, int &h2, int &h3, int &h4, int &tb)
 Convert a roadset ID to a set of hodo IDs. More...
 
int FlipRoadLeftRight (const int road)
 Flip the given road ID in the left-right direction. More...
 
int FlipRoadTopBottom (const int road)
 Flip the given road ID in the top-bottom direction. More...
 
int ExtractRoadID (const SQHitVector *vec)
 Find a unique road in the given list of SQHits. More...
 
void FindFiredRoads (const SQHitVector *vec, const TrigRoadset *rs, const bool in_time, std::vector< int > *pos_top, std::vector< int > *pos_bot, std::vector< int > *neg_top, std::vector< int > *neg_bot)
 Find all fired roads enabled in rs, by taking all hit combinations from vec. More...
 

Function Documentation

◆ ExtractRoadID()

int UtilTrigger::ExtractRoadID ( const SQHitVector vec)

Find a unique road in the given list of SQHits.

This function returns a road ID if the given list contains exactly one hit every top plane (i.e. H1T, H2T, H3T & H4T) or every bottom plane. It returns '0' if any plan has no hit or multiple hit. The given list can contain any extra Y-hodoscope, chamber or prop tube hit, which is just ignored.

Definition at line 62 of file UtilTrigger.cc.

References SQHitVector::begin(), SQHitVector::end(), SQHit::get_detector_id(), SQHit::get_element_id(), GeomSvc::getDetectorName(), Hodo2Road(), and GeomSvc::instance().

Referenced by SubsysRecoSignal::process_event().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ FindFiredRoads()

void UtilTrigger::FindFiredRoads ( const SQHitVector vec,
const TrigRoadset rs,
const bool  in_time,
std::vector< int > *  pos_top,
std::vector< int > *  pos_bot,
std::vector< int > *  neg_top,
std::vector< int > *  neg_bot 
)

Find all fired roads enabled in rs, by taking all hit combinations from vec.

SQHitVector* vec = ...;
const TrigRoadset* rs = ...;
const bool in_time = true;
std::vector<int> fired_roads_PT;
std::vector<int> fired_roads_PB;
std::vector<int> fired_roads_NT;
std::vector<int> fired_roads_NB;
UtilTrigger::FindFiredRoads(vec, rs, in_time, fired_roads_PT, fired_roads_PB, fired_roads_NT, fired_roads_NB);
if (fired_roads_PT.size() > 0) { ... }
An SQ interface class to hold a list of SQHit objects.
Definition: SQHitVector.h:32
Definition: rs_Reader.h:9
void FindFiredRoads(const SQHitVector *vec, const TrigRoadset *rs, const bool in_time, std::vector< int > *pos_top, std::vector< int > *pos_bot, std::vector< int > *neg_top, std::vector< int > *neg_bot)
Find all fired roads enabled in rs, by taking all hit combinations from vec.
Definition: UtilTrigger.cc:101

Definition at line 101 of file UtilTrigger.cc.

References UtilSQHit::FindFirstHits(), UtilSQHit::FindHits(), and Hodo2Road().

+ Here is the call graph for this function:

◆ FlipRoadLeftRight()

int UtilTrigger::FlipRoadLeftRight ( const int  road)

Flip the given road ID in the left-right direction.

Definition at line 36 of file UtilTrigger.cc.

References Hodo2Road(), and Road2Hodo().

+ Here is the call graph for this function:

◆ FlipRoadTopBottom()

int UtilTrigger::FlipRoadTopBottom ( const int  road)

Flip the given road ID in the top-bottom direction.

Definition at line 48 of file UtilTrigger.cc.

References Hodo2Road(), and Road2Hodo().

+ Here is the call graph for this function:

◆ Hodo2Road()

int UtilTrigger::Hodo2Road ( const int  h1,
const int  h2,
const int  h3,
const int  h4,
const int  tb 
)

Convert a set of hodo IDs to a roadset ID.

Note that the max hodo IDs are 23 (H1), 16 (H2), 16 (H3) and 16 (H4).

Definition at line 13 of file UtilTrigger.cc.

Referenced by ExtractRoadID(), AnaBG::FindAllRoads(), FindFiredRoads(), UtilTrack::FindMatchedRoads(), GenRoadset::FlipRoadLeftRight(), FlipRoadLeftRight(), GenRoadset::FlipRoadTopBottom(), and FlipRoadTopBottom().

+ Here is the caller graph for this function:

◆ Road2Hodo()

void UtilTrigger::Road2Hodo ( const int  road,
int &  h1,
int &  h2,
int &  h3,
int &  h4,
int &  tb 
)

Convert a roadset ID to a set of hodo IDs.

Definition at line 21 of file UtilTrigger.cc.

Referenced by DrawRoadset::DrawOneSet(), GenRoadset::FlipRoadLeftRight(), FlipRoadLeftRight(), GenRoadset::FlipRoadTopBottom(), and FlipRoadTopBottom().

+ Here is the caller graph for this function: