]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TRD/AliTRDReconstructor.h
Apply pT cuts only to correlation part of analysis. Add weights for MC runs with...
[u/mrichter/AliRoot.git] / TRD / AliTRDReconstructor.h
index ea0298dfc750c32b4e9590622cb23d375c41733f..ed87d3fe959673c147092f6b175538366c7ae80f 100644 (file)
 #include "AliTRDpidUtil.h"
 #include "AliTRDrecoParam.h"
 #include "AliTRDdigitsParam.h"
+#include "AliESDTrdTrigger.h"
 
 class TClonesArray;
 class TTreeSRedirector;
 class AliRawReader;
 class AliTRDclusterizer;
+class AliTRDonlineTrackMatching;
 class AliTRDReconstructor: public AliReconstructor 
 {
 public:
@@ -48,8 +50,9 @@ public:
 
   virtual void        FillESD(AliRawReader *, TTree *clusterTree, AliESDEvent *esd) const { FillESD((TTree * )NULL, clusterTree, esd);                    }
   virtual void        FillESD(TTree *digitsTree, TTree *clusterTree, AliESDEvent *esd) const;
-  static TClonesArray* GetClusters()             {return fgClusters;}
-  static TClonesArray* GetTracklets()            { return fgTracklets;}
+  static TClonesArray* GetClusters();
+  static TClonesArray* GetTracklets(const char *trkltype = "");
+  static TClonesArray* GetTracks();
   static Int_t        GetNTimeBins()             { return fgNTimeBins;}
   Int_t               GetNdEdxSlices() const     { return (Int_t)AliTRDpidUtil::GetNdEdxSlices(GetPIDMethod());}
   AliTRDpidUtil::ETRDPIDMethod       GetPIDMethod() const       { return GetRecoParam()->IsPIDNeuralNetwork() ? AliTRDpidUtil::kNN : AliTRDpidUtil::kLQ;}
@@ -68,20 +71,25 @@ public:
   Bool_t              IsHLT() const              { return fSteerParam&kHLT;}
   Bool_t              IsSeeding() const          { return fSteerParam&kSeeding;}
   Bool_t              IsProcessingTracklets() const { return fSteerParam&kProcTracklets;}
-  Bool_t              IsDebugStreaming() const   { return fSteerParam&kDebug;}
+  Bool_t              IsDebugStreaming() const   { return (fSteerParam&kDebug || AliTRDReconstructor::GetStreamLevel()>0);}
   Bool_t              UseClusterRadialCorrection() const { return fSteerParam&kClRadialCorr;}
 
   static void         Options(UInt_t steer=0);
   virtual void        Reconstruct(AliRawReader *rawReader, TTree *clusterTree) const;
   virtual void        Reconstruct(TTree *digitsTree, TTree *clusterTree) const;
 
-  static void         SetClusters(TClonesArray *clusters)  { fgClusters = clusters;} 
-  static void         SetTracklets(TClonesArray *tracklets) { fgTracklets = tracklets;}
+ static void         SetClusters(TClonesArray *clusters)  { fgClusters = clusters;}
+ static void         SetTracklets(TClonesArray *tracklets) { fgTracklets = tracklets;}
+ static void         SetTracks(TClonesArray *tracks) { fgTracks = tracks;}
   void               SetOption(Option_t *opt);
+  static Int_t GetStreamLevel()               { return fgStreamLevel;}
+  static void  SetStreamLevel(Int_t level) { fgStreamLevel = level;}
 
 private:
   AliTRDReconstructor(const AliTRDReconstructor &r); //Not implemented
   AliTRDReconstructor& operator = (const AliTRDReconstructor&); //Not implemented
+  void                ResetContainers() const;
+  static Int_t               fgStreamLevel; // flag for streaming      - for TRD reconstruction
 
   static Char_t const *fgSteerNames[kNsteer];//! steering names
   static Char_t const *fgSteerFlags[kNsteer];//! steering flags
@@ -100,10 +108,13 @@ private:
  
   static TClonesArray *fgClusters;    //  list of clusters for local reconstructor
   static TClonesArray *fgTracklets;   //  list of online tracklets for local reconstructor
+  static TClonesArray *fgTracks;      //  list of GTU tracks for local reconstructor
   static Int_t         fgNTimeBins;   //  number of time bins as given by the clusterizer
   AliTRDclusterizer   *fClusterizer;  //! instance of TRD clusterizer
+  static AliTRDonlineTrackMatching fgOnlineTrackMatcher; // track matcher between on-line and off-line track
+  static AliESDTrdTrigger fgTriggerFlags; //  L1 trigger flags
 
-  ClassDef(AliTRDReconstructor, 4)    //  Class for the TRD reconstruction
+  ClassDef(AliTRDReconstructor, 5)    //  Class for the TRD reconstruction
 
 };