Belle II Software  release-08-01-10
TRGCDCTrackSegmentFinder Class Reference

a class of TrackSegmentFinder in TRGCDC More...

#include <TrackSegmentFinder.h>

Inheritance diagram for TRGCDCTrackSegmentFinder:
Collaboration diagram for TRGCDCTrackSegmentFinder:

Public Types

enum  boardType {
  innerType = 0 ,
  outerType = 1 ,
  unknown = 999
}
 enum of boardType of TrackSegmentFinder
 

Public Member Functions

 TRGCDCTrackSegmentFinder (const TRGCDC &, bool makeRootFile, bool logicLUTFlag)
 Constructor.
 
 TRGCDCTrackSegmentFinder (const TRGCDC &, const std::string &name, boardType type, const TRGClock &systemClock, const TRGClock &dataClock, const TRGClock &userClockInput, const TRGClock &userClockOutput, const std::vector< TRGCDCSegment * > &tsSL)
 Constructor.
 
 ~TRGCDCTrackSegmentFinder ()
 Destructor.
 
void doit (std::vector< TRGCDCSegment * > &tss, const bool trackSegmentClockSimulation, std::vector< TRGCDCSegmentHit * > &segmentHits, std::vector< TRGCDCSegmentHit * > *segmentHitsSL)
 Member functions of doing TSF.
 
void terminate (void)
 terminate
 
void saveTSInformation (std::vector< TRGCDCSegment * > &tss)
 save the TS info
 
void saveTSFResults (std::vector< TRGCDCSegmentHit * > *segmentHitsSL)
 save result of TSF
 
void saveNNTSInformation (std::vector< TRGCDCSegment * > &tss)
 Saves NNTS information. Only when ts is hit.
 
vector< TRGSignalVector * > findTSHit (TRGSignalVector *eachInput, int)
 Use LUT for find TSHit. More...
 
TRGSignalVectorpackerOuterTracker (vector< TRGSignalVector * > &, vector< int > &, const unsigned)
 Packing output for tracker.
 
TRGSignalVectorpackerOuterEvt (vector< TRGSignalVector * >, vector< int >, int)
 Packing output for evtTime & Low pT.
 
boardType type (void) const
 board type of TSF
 
TRGSignalBundleoutputE (void)
 signal bundle of outputE
 
TRGSignalBundleoutputT (void)
 signal bundle of outputT
 
void push_back (const TRGCDCMerger *)
 push back the Mergers of this TSF
 
void simulateBoard (void)
 firmware simulation.
 
void simulate (void)
 Firmware simulation. yi.
 
void simulate2 (void)
 Firmware simulation. Unified version of inner and outer : yi.
 
void hitMapInner (void)
 Creates the hit maps for the inner.
 
void hitMapOuter (void)
 Creates the hit maps for the outer.
 
void inputInner (const unsigned id, const unsigned nTSF, TRGSignalVector *s)
 Creates input signals to TSF for the inner.
 
void inputOuter (const unsigned id, const unsigned nTSF, TRGSignalVector *s)
 Creates input signals to TSF for the outer.
 
vector< TRGSignalVector * > simulateInner (const TRGSignalVector &in, unsigned id)
 Simulate TSF response for the inner.
 
vector< TRGSignalVector * > simulateOuter (TRGSignalVector *in, unsigned id)
 Simulate TSF response for the inner. More...
 
vector< TRGSignalVector * > simulateTSFOld (TRGSignalVector *in, unsigned id)
 Simulate TSF response (unified version) More...
 
vector< TRGSignalVector * > simulateTSF (TRGSignalVector *in, unsigned id)
 Simulate TSF response (unified version, 2016/07/12) More...
 
vector< TRGSignalVector * > simulateTSF2 (TRGSignalVector *in, unsigned id)
 Simulate TSF response (unified version, state machine)
 
TRGSignalVectorpackerForTracker (vector< TRGSignalVector * > &, vector< int > &, const unsigned)
 Output packer for tracker.
 
TRGSignalVectorpackerForETF (vector< TRGSignalVector * > &, vector< int > &, const unsigned)
 Output packer for ETF.
 
double mkint (TRGState)
 tranformatoin into integer
 
vector< bool > mkbool (int, int)
 tranformatoin into bool
 
const std::string & name (void) const
 returns name.
 
const TRGClockclockSystem (void) const
 returns system clock.
 
const TRGClockclockData (void) const
 returns data clock.
 
const TRGClockclockUserInput (void) const
 returns Aurora user clock for input.
 
const TRGClockclockUserOutput (void) const
 returns Aurora user clock for output.
 
unsigned nInput (void) const
 returns input channels.
 
const TRGChannelinput (unsigned i) const
 returns input channel i.
 
unsigned nOutput (void) const
 returns output channels.
 
TRGChanneloutput (unsigned i) const
 returns output channel i.
 
void dump (const std::string &message="", const std::string &pre="") const
 dumps contents. More...
 
void appendInput (const TRGChannel *)
 appends an input Aurora channel.
 
void appendOutput (TRGChannel *)
 appends an output Aurora channel.
 

Static Public Member Functions

static std::string version (void)
 return version
 

Public Attributes

const TRGCDC_cdc
 Members.
 
bool m_logicLUTFlag
 0 is Logic. 1 is LUT.
 
std::string m_rootTSFFilename
 ROOT file name string.
 
TFile * m_fileTSF
 ROOT file.
 
TTree * m_treeInputTSF = nullptr
 ROOT TTree for input.
 
TClonesArray * m_hitPatternInformation = nullptr
 Stores hitpattern information.
 
TTree * m_treeOutputTSF = nullptr
 ROOT TTree for output.
 
TClonesArray * m_particleEfficiency = nullptr
 [Efficiency, Pt, # MC TS] Efficiency = -1 means that # MC TS is 0.
 
TClonesArray * m_tsInformation = nullptr
 [SuperLayer Id, Wire Id, Priority Timing]
 
TTree * m_treeNNTSF = nullptr
 ROOT Tree for NNTSF.
 
TClonesArray * m_nnPatternInformation = nullptr
 [superlayer id, lrDriftTime, timeWire0, timeWire1, ..., ...]
 
bool m_makeRootFile = false
 make ROOT file or not
 
elements
 STL member.
 

Private Member Functions

void simulateInner (void)
 Firmware simulation for the outers. yi.
 
void simulateOuter (void)
 Firmware simulation for the outers. yi.
 
void priorityTiming (unsigned tsfID, const unsigned nTSF, TRGSignalVector &s, const TRGSignal &center, const TRGSignal &right, const TRGSignal &left) const
 Make TRGSignals for the priority timing bits.
 
void fastestTimingInner (unsigned tsfID, const unsigned nTSF, TRGSignalVector &s) const
 Make TRGSignals for the fastest timing bits.
 
void fastestTimingOuter (unsigned tsfID, const unsigned nTSF, TRGSignalVector &s) const
 Make TRGSignals for the fastest timing bits.
 

Static Private Member Functions

static void addID (TRGSignalVector &s, unsigned id)
 Add TSF ID to timing signal vector for the output.
 

Private Attributes

boardType _type
 Unit type.
 
TRGSignalBundle_tosbE
 Input signal bundle. More...
 
TRGSignalBundle_tosbT
 Output signal bundle.
 
std::vector< TCSegment * > _tsSL
 list of TSF
 
std::vector< TRGSignalVector * > _tsfIn
 TSF input storage.
 
std::vector< TRGSignalVector * > _tsfOut
 TSF response storeage.
 
std::vector< TRGSignalVector * > _toBeDeleted
 One time info. to be deleted in next event;.
 
std::vector< TRGSignal * > _hitMap [5]
 Internal data of wire hit map.
 
std::vector< TRGSignal * > _priMap
 Internal data of the priority hit timing.
 
std::vector< TRGSignal * > _fasMap
 Internal data of the fastest hit timing.
 
std::vector< TRGSignal * > _secMap
 Internal data of the priority cell hit position flag.
 
std::vector< TRGSignal * > _edg0Map
 Internal data of the edge timing information.
 
std::vector< TRGSignal * > _edg1Map
 Internal data of the edge timing information.
 
std::vector< TRGSignal * > _edg2Map
 Internal data of the edge timing information.
 
std::vector< TRGSignal * > _edg3Map
 Internal data of the edge timing information.
 
std::vector< TRGSignal * > _edg4Map
 Internal data of the edge timing information.
 
const std::string _name
 Name of a board.
 
const TRGClock_clockSystem
 System clock.
 
const TRGClock_clockData
 Data clock.
 
const TRGClock_clockUserInput
 User clock.
 
const TRGClock_clockUserOutput
 User clock.
 
std::vector< const TRGChannel * > _inputChannels
 Input Aurora channel.
 
std::vector< TRGChannel * > _outputChannels
 Output Aurora channel.
 

Detailed Description

a class of TrackSegmentFinder in TRGCDC

Definition at line 40 of file TrackSegmentFinder.h.

Member Data Documentation

◆ _tosbE

TRGSignalBundle* _tosbE
private

Input signal bundle.

Output signal bundle.

Definition at line 255 of file TrackSegmentFinder.h.


The documentation for this class was generated from the following files: