new class AliMUONLoader
authormartinez <martinez@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 28 Aug 2003 11:58:08 +0000 (11:58 +0000)
committermartinez <martinez@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 28 Aug 2003 11:58:08 +0000 (11:58 +0000)
MUON/AliMUON.cxx
MUON/AliMUON.h
MUON/AliMUONLoader.cxx [new file with mode: 0644]
MUON/AliMUONLoader.h [new file with mode: 0644]
MUON/MUONLinkDef.h
MUON/libMUON.pkg

index 63e9994..a0cb78f 100644 (file)
@@ -49,6 +49,7 @@
 #include "AliHeader.h"
 #include "AliHitMap.h"
 #include "AliLoader.h"
+#include "AliMUONLoader.h"
 #include "AliMUON.h"
 #include "AliMUONChamberTrigger.h"
 #include "AliMUONClusterFinderVS.h"
@@ -755,7 +756,22 @@ void AliMUON::SDigits2Digits()
     fLoader->TreeD()->Reset();
 }
 
-//___________________________________________
+
+//__________________________________________________________________________
+AliLoader* AliMUON::MakeLoader(const char* topfoldername)
+{ 
+//builds standard getter (AliLoader type)
+//if detector wants to use castomized getter, it must overload this method
+
+ if (GetDebug())
+   Info("MakeLoader",
+        "Creating standard getter for detector %s. Top folder is %s.",
+         GetName(),topfoldername);
+     
+ fLoader = new AliMUONLoader(GetName(),topfoldername);
+ return fLoader;
+}
+//__________________________________________________________________________
 // To be removed
 void AliMUON::MakePadHits(Float_t xhit,Float_t yhit, Float_t zhit,
                          Float_t eloss, Float_t tof,  Int_t idvol)
index 2d8c25b..c2c32cf 100644 (file)
@@ -12,6 +12,7 @@
 ////////////////////////////////////////////////
 #include "AliDetector.h"
 
+class AliLoader;
 class AliMUONChamber;
 class AliMUONLocalTrigger;
 class AliMUONGlobalTrigger;
@@ -58,13 +59,16 @@ class AliMUON : public  AliDetector {
     TClonesArray  *PadHits() {return fPadHits;}
     TClonesArray  *LocalTrigger() {return fLocalTrigger;}
     TClonesArray  *GlobalTrigger() {return fGlobalTrigger;}
-    virtual void   MakeBranch(Option_t *opt=" ");
-    virtual void   MakeBranchInTreeD(TTree *treeD, const char *file=0);
-    void           SetTreeAddress();
-    virtual void   ResetHits();
-    virtual void   ResetDigits();
-    virtual void   ResetTrigger();
-    virtual void   ResetRawClusters();
+
+    virtual AliLoader* MakeLoader(const char* topfoldername); //builds standard getter (AliLoader type)
+
+    virtual void       MakeBranch(Option_t *opt=" ");
+    virtual void       MakeBranchInTreeD(TTree *treeD, const char *file=0);
+    void               SetTreeAddress();
+    virtual void       ResetHits();
+    virtual void       ResetDigits();
+    virtual void       ResetTrigger();
+    virtual void       ResetRawClusters();
     // Cluster Finding
     virtual void   Digits2Reco();
     virtual void   FindClusters();
diff --git a/MUON/AliMUONLoader.cxx b/MUON/AliMUONLoader.cxx
new file mode 100644 (file)
index 0000000..2e6ad04
--- /dev/null
@@ -0,0 +1,39 @@
+
+
+//Root includes
+
+//AliRoot includes
+#include "AliMUONLoader.h"
+
+ClassImp(AliMUONLoader)
+//___________________________________________________________________
+
+/*****************************************************************************/ 
+AliMUONLoader::AliMUONLoader():AliLoader()
+{
+//default constructor
+
+}
+/******************************************************************/
+
+AliMUONLoader::AliMUONLoader(const Char_t* detname,const Char_t* eventfoldername):AliLoader(detname,eventfoldername)
+{
+    
+}
+/*****************************************************************************/ 
+
+AliMUONLoader::AliMUONLoader(const Char_t * detname,TFolder* eventfolder):AliLoader(detname,eventfolder)
+{
+//constructor
+  
+}
+/*****************************************************************************/ 
+
+AliMUONLoader::~AliMUONLoader()
+{
+//detructor
+}
+/*****************************************************************************/ 
+
diff --git a/MUON/AliMUONLoader.h b/MUON/AliMUONLoader.h
new file mode 100644 (file)
index 0000000..245f633
--- /dev/null
@@ -0,0 +1,38 @@
+#ifndef ALIMUONLOADER_H
+#define ALIMUONLOADER_H
+
+#include "AliLoader.h"
+#include "AliDataLoader.h"
+
+//__________________________________________________________________
+/////////////////////////////////////////////////////////////////////
+//                                                                 //
+//  class AliMUONLoader                                            //
+//                                                                 //
+/////////////////////////////////////////////////////////////////////
+
+class AliMUONLoader : public AliLoader {
+ public:
+    AliMUONLoader();
+    AliMUONLoader(const Char_t *detname,const Char_t *eventfoldername); //contructor with name of the top folder of the tree
+    AliMUONLoader(const Char_t *detname,TFolder* eventfolder);
+
+    virtual ~AliMUONLoader();
+   
+ private:
+    //descendant classes should
+    //use protected interface methods to access these folders
+
+    /**********************************************/
+    /***********     P U B L I C     **************/
+    /*********       S T A T I C       ************/
+    /*********         METHODS         ************/
+    /*********     They are used by    ************/
+    /*********** AliRunLoader as well**************/
+    /**********************************************/
+ public:
+    ClassDef(AliMUONLoader,1)
+ };
+
+#endif
index 6ba0618..380b7a4 100644 (file)
@@ -5,7 +5,7 @@
 #pragma link C++ class  AliMUON+;
 #pragma link C++ class  AliMUONv0+;
 #pragma link C++ class  AliMUONv1+;
-#pragma link C++ class  AliMUONv3+;
+#pragma link C++ class  AliMUONLoader+;
 #pragma link C++ class  AliMUONHit+;
 #pragma link C++ class  AliMUONPadHit+;
 #pragma link C++ class  AliMUONDigit+;
index 452ce97..47e9942 100644 (file)
@@ -9,7 +9,7 @@ SRCS         = AliMUONChamber.cxx AliMUONChamberTrigger.cxx \
               AliMUONSegmentationTrigger.cxx  AliMUONResponseTrigger.cxx\
                AliMUONResponseTriggerV1.cxx\
               AliMUONSegmentationTriggerX.cxx AliMUONSegmentationTriggerY.cxx \
-               AliMUONSegmentationV1.cxx AliMUON.cxx AliMUONv0.cxx AliMUONv1.cxx AliMUONv3.cxx \
+               AliMUONSegmentationV1.cxx AliMUON.cxx AliMUONv0.cxx AliMUONv1.cxx \
                AliMUONDisplay.cxx AliMUONPoints.cxx \
                AliMUONClusterFinderVS.cxx \
                AliMUONHitMapA1.cxx \
@@ -28,7 +28,8 @@ SRCS         = AliMUONChamber.cxx AliMUONChamberTrigger.cxx \
               AliMUONSegmentationSlat.cxx AliMUONSegmentationSlatN.cxx \
               AliMUONRecoEvent.cxx AliMUONRecoDisplay.cxx \
                AliMUONMerger.cxx AliMUONFactory.cxx AliMUONDigitizer.cxx AliMUONDigitizerv1.cxx \
-               AliMUONTrackK.cxx AliMUONClusterFinderAZ.cxx AliMUONPixel.cxx
+               AliMUONTrackK.cxx AliMUONClusterFinderAZ.cxx AliMUONPixel.cxx \
+               AliMUONLoader.cxx
 
 SRCS     += AliMUONv2.cxx AliMUONSt1Segmentation.cxx AliMUONSt1Response.cxx \
            AliMUONSt1ElectronicElement.cxx AliMUONSt1SpecialMotif.cxx \