BrFfsTrackingModule
class description - source file - inheritance tree
private:
BrLine3D BackTrackIncidence(BrDetectorTrack* track)
BrVector3D BackTrackToT1(BrDetectorTrack* track, Double_t P)
BrLine3D FrontTrackIncidence(BrDetectorTrack* track, Double_t P)
void SetMagnetFields()
void TrackToVertex(BrDataTable*, BrBbVertex*)
public:
BrFfsTrackingModule BrFfsTrackingModule()
BrFfsTrackingModule BrFfsTrackingModule(const Char_t*, const Char_t*)
BrFfsTrackingModule BrFfsTrackingModule(BrFfsTrackingModule&)
virtual void ~BrFfsTrackingModule()
virtual void Begin()
static TClass* Class()
virtual void DefineHistograms()
virtual void Event(BrEventNode*, BrEventNode*)
virtual void Finish()
BrModuleMatchTrack* GetCombineModule()
BrMagnetVolume* GetD1Volume() const
virtual void Init()
virtual TClass* IsA() const
void SetNtuple(Bool_t n = kFALSE)
void SetUseDb(Bool_t usedDb = kTRUE)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
private:
BrModuleMatchTrack* fCombineModule Module combining front/back track.
BrDetectorVolume* fFrontVolume Pointer to front volume
BrDetectorVolume* fBackVolume Pointer to back detector volume
BrDetectorVolume* fH1Volume Pointer to H1 detector volume
BrDetectorParamsTof* fH1Params Pointer to H1 parameters
BrMagnetVolume* fMagnetVolume Pointer to magnet D2volume
BrMagnetVolume* fD1Volume Pointer to magnet D1 volume
TClonesArray* fTracksFrontBack Container of matched tracks
Bool_t fUseDb Indicator for picking Magnetfield from Db
TH1F* fSwimStatus swim back status through D1
TH1F* fPathLength track length (cm)
TH1F* fPartialLength track length from D1 to H1 (cm)
TH1F* fTargetX track projection X on plane Z = 0
TH1F* fTargetY track projection Y on plane Z = 0
TH2F* fFIncAng angle of incidence of front track on H1 (degree)
TH2F* fBIncAng angle of incidence of back track on H1 (degree)
TH2F* fAngCorr correlation between both angles
TH2F* fH1CorrX correlation between back and front tracks X on H1
TH2F* fH1CorrY correlation between back and front tracks Y on H1
TH1F* fH1ProjX same but difference
TH1F* fH1ProjY same but difference
TH1F* fH1Slat pointed slat on H1
TH2F* fT1CorrX correlation between back and front tracks X in T1
TH2F* fT1CorrY correlation between back and front tracks Y on H1
TH1F* fT1DiffX same but difference
TH1F* fT1DiffY same but difference
TH1F* fMomentum track momentum
TH2F* fTrkXY track projection on BB vertex plane
TH1F* fTrkX track projection X on BB vertex plane
TH1F* fTrkY same in Y
TH2F* fCloseXY track closest Y vs X to beam line
TH1F* fCloseX track closest X to beam line
TH1F* fCloseY track closest Y to beam line
TH1F* fCloseZ track closest Z to beam line
TH2F* fCloseCorr correlation between bb vtx and track closest Z
TH1F* fCloseDiff same but difference
TH1F* fNTracksAll all tracks, whatever status
TH1F* fNTracks number of tracks, status = 1 (after ghostbusting)
TH1F* fStatus ghostbusting status
TH1F* fTheta
TH1F* fPhi
TNtuple* fTrackInfo correlation between all variables
Bool_t fNtuple switch on/off ntuple
BrFfsTrackingModule()
// default constructor DO NOT USE
BrFfsTrackingModule(const Char_t* Name, const Char_t* Title)
: BrModule(Name, Title)
------------------------------------
Normal constructor.
This Name & title is informational.
------------------------------------
~BrFfsTrackingModule()
// default destructor
void Init()
-----------------------------------------
Initialze the matching module and setup
local information for volumes
-----------------------------------------
void SetMagnetFields()
----------------------------------------------------
get field information from database
update info each time a field is needed (event loop)
----------------------------------------------------
void DefineHistograms()
-----------------------------------------------------------
define histograms for modules owned by this 'super module'
-----------------------------------------------------------
void Begin()
make sure we get the right field in for each run
void Event(BrEventNode* inNode, BrEventNode* outNode)
-------------------------------------------------------------
Normal Event member function for FFS tracking
Result: BrDataTable "FfsTracks" added to outputnode.
The elements of this table are BrFfsTrack.
The module has the following steps
a) combine Front Backs tracks
b) Track combined tracks back to nominal vertex
c) Add tracks to outNode
-------------------------------------------------------------
void Finish()
Finish entry method
Call combine module finish for statistics.
void TrackToVertex(BrDataTable* ffstab, BrBbVertex* primVtx)
-------------------------------------------
Track back to vertex (here BB vertex)
-------------------------------------------
BrLine3D BackTrackIncidence(BrDetectorTrack* track)
----------------------------------------------------------
calculate projection on H1 plane and returns track line
with this proj. as the origin
----------------------------------------------------------
BrVector3D BackTrackToT1(BrDetectorTrack* track,
Double_t P)
----------------------------------------------------------
calculate projection on H1 plane and returns track line
with this proj. as the origin
----------------------------------------------------------
BrLine3D FrontTrackIncidence(BrDetectorTrack* track,
Double_t P)
----------------------------------------------------------
calculate projection on H1 plane and returns track line
with this proj. as the origin
----------------------------------------------------------
Inline Functions
BrModuleMatchTrack* GetCombineModule()
BrMagnetVolume* GetD1Volume() const
void SetNtuple(Bool_t n = kFALSE)
void SetUseDb(Bool_t usedDb = kTRUE)
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
BrFfsTrackingModule BrFfsTrackingModule(BrFfsTrackingModule&)
|