* matrix and a chi2 for the vertex are given. *
* *
*****************************************************************************/
-
-#include "AliKalmanTrack.h"
#include "AliITSVertexer.h"
-#include "AliESD.h"
#include <TObjArray.h>
class TTree;
class AliESDVertex;
+class AliVertex;
+class AliESD;
+class AliITStrackV2;
class AliITSVertexerTracks : public AliITSVertexer {
public:
// default constructor
- AliITSVertexerTracks();
+ AliITSVertexerTracks();
// standard constructor
AliITSVertexerTracks(TFile *inFile,TFile *outFile,
- Double_t field=0.4,Int_t fEv=0,Int_t lEv=0,
+ Int_t fEv=0,Int_t lEv=0,
Double_t xStart=0.,Double_t yStart=0.);
// alternative constructor
- AliITSVertexerTracks(Double_t field, TString fn,
- Double_t xStart=0,Double_t yStart=0);
+ AliITSVertexerTracks(TString fn,Double_t xStart=0,Double_t yStart=0);
// destructor
- ~AliITSVertexerTracks();
+ virtual ~AliITSVertexerTracks();
// return vertex from the set of tracks in the tree
AliESDVertex* VertexOnTheFly(TTree &trkTree);
+ AliVertex* VertexForSelectedTracks(AliESD *esdEvent,Int_t nofCand, Int_t *trkPos, Int_t opt);
// computes the vertex for the current event
- virtual AliESDVertex* FindVertexForCurrentEvent(Int_t evnumb);
+ virtual AliESDVertex* FindPrimaryVertexForCurrentEvent(Int_t evnumb);
+ virtual AliESDVertex* FindVertexForCurrentEvent(Int_t evnumb){
+ Warning(" FindVertexForCurrentEvent","Deprecated method use FindPrimaryVertexForCurrentEvent instead");
+ return FindPrimaryVertexForCurrentEvent(evnumb);
+ }
// computes the vertex for the current event using the ESD
- AliESDVertex* FindVertexForCurrentEvent(AliESD *esdEvent);
+ AliESDVertex* FindPrimaryVertexForCurrentEvent(AliESD *esdEvent);
+ AliESDVertex* FindVertexForCurrentEvent(AliESD *esdEvent){
+ Warning(" FindVertexForCurrentEvent","Deprecated method use FindPrimaryVertexForCurrentEvent instead");
+ return FindPrimaryVertexForCurrentEvent(esdEvent);
+ }
// computes the vertex for each event and stores it on file
virtual void FindVertices();
// computes the vertex for each event and stores it in the ESD
void FindVerticesESD();
+
+
virtual void PrintStatus() const;
- void SetField(Double_t field) const
- { AliKalmanTrack::SetConvConst(100./0.299792458/field); return; }
void SetMinTracks(Int_t n=2) { fMinTracks = n; return; }
void SetSkipTracks(Int_t n,Int_t *skipped);
void SetVtxStart(Double_t x=0,Double_t y=0)
{ fNominalPos[0]=x; fNominalPos[1]=y; return; }
private:
+ // copy constructor (NO copy allowed: the constructor is protected
+ // to avoid misuse)
+ AliITSVertexerTracks(const AliITSVertexerTracks& vtxr);
+ // assignment operator (NO assignment allowed)
+ AliITSVertexerTracks& operator=(const AliITSVertexerTracks& /* vtxr */);
TFile *fInFile; // input file (with tracks)
TFile *fOutFile; // output file for vertices
- Double_t fInitPos[3]; // vertex position after vertex finder
Double_t fNominalPos[2]; // initial knowledge on vertex position
Int_t fMinTracks; // minimum number of tracks
Double_t fMaxChi2PerTrack; // maximum contribition to the chi2
Bool_t CheckField() const;
void ComputeMaxChi2PerTrack(Int_t nTracks);
Int_t PrepareTracks(TTree &trkTree);
+ Int_t PrepareTracks(AliESD* esdEvent,Int_t NofCand, Int_t *TrkPos);
+ Double_t Prepare(AliITStrackV2* itstrack);
void TooFewTracks();
- void VertexFinder();
+ // void VertexFinder(Int_t OptUseWeights=0);
void VertexFitter();
- ClassDef(AliITSVertexerTracks,1) // 3D Vertexing with ITS tracks
+ ClassDef(AliITSVertexerTracks,3) // 3D Vertexing with ITS tracks
};
#endif