Universita' di GenovaINFN Sezione di Genova  
AIRWATCH / EUSO Genova

ChipTrackingTrgEngine1

#include "ChipTrackingTrgEngine1.hh"

ChipTrackingTrgEngine1


class description - source file - inheritance tree (.pdf)

class ChipTrackingTrgEngine1 : public TriggerEngine

Inheritance Chart:
EsafConfigurable
EsafMsgSource
<-
TriggerEngine
<-
ChipTrackingTrgEngine1
<-
ChipTrackingTrgEngine2
ChipTrackingTrgEngine3
ChipTrackingTrgEngine4

    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)
About Us | EUSO Official Website | Web pages created by Roberto Pesce and Alessandro Thea - Last Update Wed Nov 16 16:16:59 2005