ChipTrackingTrgEngine1
| #include "ChipTrackingTrgEngine1.hh" |
ChipTrackingTrgEngine1
class description - source file - inheritance tree (.pdf)
class ChipTrackingTrgEngine1 : public TriggerEngine
| Inheritance Chart: | |||||||||||||||||||||||||
|
protected:
ChipTrackingTrgEngine1(string, ETriggerTypeIdentifier)
virtual void Clear()
virtual void Dump(Int_t)
virtual void FillEEvent(Int_t)
void FillRunPars()
public:
ChipTrackingTrgEngine1()
virtual ~ChipTrackingTrgEngine1()
static TClass* Class()
virtual const char* ClassName() const
virtual const char* ClassType() const
virtual TClass* IsA() const
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Simulate(MacroCellData*)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
Data Members
protected:
Bool_t fRelativeThreshold true if the threshold is relative to the mean value
Int_t fThreshold threshold on pixel hits in a gtu or value of n for relative thresholds
Int_t fMinTrackLength algorithm searches for tracks of length between
Int_t fMaxTrackLength fMinTrackLength and fMaxTriggerTrackLength
Int_t fMinTriggerTrackLength min trigger track length in a single chip
Int_t fMinTriggerTwoLength min trigger track length in two nearby chips
Int_t fMaxTwoLength max length for trigger in two nearby chips
Bool_t fAcceptHole true if we accept an hole in a track in a single chip
Bool_t fOnlyWithSignal if true processes only chip with signal
Int_t fPatternCounter
map<Int_t,vector<ChipTrackSegment> > fTrackSegments map for storing data
Class Description
Chip Tracking Trigger Engine 1
==============================
Tracking trigger built in front end chip.
The algorithm searches for sequences of pixels (over the threshold)
consequtive and adjacent. If the track length is over a threshold,
trigger occurs.
The algorithm searches also between track segments of two nearby chips:
if two track segments are consequtive in time and the total length is
over a threshold (different from the previous one), trigger occurs
Parameters:
fThresholdType: specify if the threshold on pixel hits in a gtu is absolute
or relative
Valid options:
- absolute: the value specified in fThreshold is the minimum number of hits
in a gtu to consider
- relative: trigger threshold depends by the mean value of the background
hits (B) in each pixel:
threshold = (B) + fThreshold*sqrt(B)
fThreshold: threshold on pixel hits in a gtu; if fThresholdType=relative the
true threshold used by trigger algorithm depends by the mean hits
of background in each pixel (see above)
fMinTrackLenght: min length of the valid tracks
fMaxTrackLength: max length of the valid tracks
fMinTriggerTrackLength: min track length to have a trigger (single chip)
fMinTriggerTwoLength: min total track length in 2 nearby chips
fMaxTwoLength: max track length allowed in 2 nearby chips
fAcceptHole [bool] : an hole in a single track segment is or not accepted
fOnlyWithSignal [bool] : processes or not only chips ith at least a signal
Special multiple configuration:
The alorithm counts the numebr of tracks of the various trigger lengths,
fill a specific trigger word and dump the numbers of the recognized tracks
ChipTrackingTrgEngine1() : TriggerEngine(string("ChipTrackingTrgEngine1"), kChipTrackingTrigger1 )
Constructor
~ChipTrackingTrgEngine1()
Destructor
ChipTrackingTrgEngine1( string s, ETriggerTypeIdentifier id ) : TriggerEngine(s, id)
Special constructor for child classes
void Clear()
Clear data containers
void Simulate( MacroCellData* pData)
Simulate chip tracking algorythm
void FillEEvent( Int_t cell_id )
Fill root event
void FillRunPars()
Fill run parameters
void Dump( Int_t cell_id )
Dump the number of tracks (triggered and total) for each chip
Inline Functions
const char* ClassType() const
const char* ClassName() const
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
