]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONESDInterface.h
- update track cuts
[u/mrichter/AliRoot.git] / MUON / AliMUONESDInterface.h
index e9e96107871fd835ad08fbbb59e87a079fb8e0ac..43d7024093e98af43413d26cb240a5c772c00f57 100644 (file)
@@ -25,6 +25,7 @@ class AliMUONVDigit;
 class AliMUONVDigitStore;
 class AliMUONLocalTrigger;
 class AliMUONTriggerTrack;
+class AliMUONVTriggerTrackStore;
 class AliMUONVTriggerStore;
 class AliMUONTrackParam;
 class AliMUONVTrackReconstructor;
@@ -63,6 +64,9 @@ public: // methods to play with internal objects
   Int_t GetNDigitsInCluster(UInt_t clusterId) const;
   Int_t GetNTriggers() const;
   
+  // Check that all digits have been stored for a given track
+  Bool_t DigitsStored(UInt_t trackId) const;
+  
   // Find internal MUON objects
   AliMUONTrack*        FindTrack(UInt_t trackId) const;
   AliMUONVCluster*     FindCluster(UInt_t clusterId) const;
@@ -100,8 +104,11 @@ public: // static methods
   // Create empty stores (use the version defined in this interface)
   static AliMUONVTrackStore* NewTrackStore();
   static AliMUONVClusterStore* NewClusterStore();
+  static AliMUONVCluster* NewCluster();
   static AliMUONVDigitStore* NewDigitStore();
+  static AliMUONVDigit* NewDigit();
   static AliMUONVTriggerStore* NewTriggerStore();
+  static AliMUONVTriggerTrackStore* NewTriggerTrackStore();
   
   // ESD track parameters --> MUON track parameters
   static void GetParamAtVertex(const AliESDMuonTrack& esdTrack, AliMUONTrackParam& trackParam);
@@ -122,11 +129,17 @@ public: // static methods
   static void ESDToMUON(const AliESDMuonPad& esdPad, AliMUONVDigit& digit);
   
   // MUON objects --> ESDMuon objects conversion
-  static void MUONToESD(const AliMUONTrack& track, AliESDMuonTrack& esdTrack, const Double_t vertex[3],
+  static void MUONToESD(const AliMUONTrack& track, AliESDEvent& esd, const Double_t vertex[3],
                        const AliMUONVDigitStore* digits = 0x0, const AliMUONLocalTrigger* locTrg = 0x0);
+  static void MUONToESD(const AliMUONTrack& track, AliESDMuonTrack& esdTrack, const Double_t vertex[3],
+                       const AliMUONLocalTrigger* locTrg = 0x0);
+  static void MUONToESD(const AliMUONLocalTrigger& locTrg, AliESDEvent& esd, UInt_t trackId,
+                       const AliMUONTriggerTrack* triggerTrack = 0x0);
   static void MUONToESD(const AliMUONLocalTrigger& locTrg, AliESDMuonTrack& esdTrack, UInt_t trackId,
                        const AliMUONTriggerTrack* triggerTrack = 0x0);
-  static void MUONToESD(const AliMUONVCluster& cluster, AliESDMuonCluster& esdCluster, const AliMUONVDigitStore* digits = 0x0);
+  static void MUONToESD(const AliMUONVCluster& cluster, AliESDEvent& esd, const AliMUONVDigitStore* digits = 0x0);
+  static void MUONToESD(const AliMUONVCluster& cluster, AliESDMuonCluster& esdCluster, Bool_t copyPadsId = kFALSE);
+  static void MUONToESD(const AliMUONVDigit& digit, AliESDEvent& esd);
   static void MUONToESD(const AliMUONVDigit& digit, AliESDMuonPad& esdPad);
   
   // Add ESD object into the corresponding MUON store
@@ -146,7 +159,6 @@ protected:
 private:
   
   void Reset();
-  AliMUONVCluster* FindClusterInTrack(const AliMUONTrack& track, UInt_t clusterId) const;
   
   
 private:
@@ -158,6 +170,7 @@ private:
   static TString fgClusterStoreName; ///< class name of the cluster store to use
   static TString fgDigitStoreName;   ///< class name of the digit store to use
   static TString fgTriggerStoreName; ///< class name of the trigger store to use
+  static TString fgTriggerTrackStoreName; ///< class name of the trigger track store to use
   
   // data containers
   AliMUONVTrackStore*   fTracks;   ///< track container