NewIO Implementation
authorcheynis <cheynis@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 5 Aug 2003 15:46:52 +0000 (15:46 +0000)
committercheynis <cheynis@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 5 Aug 2003 15:46:52 +0000 (15:46 +0000)
VZERO/AliVZERO.cxx
VZERO/AliVZERO.h
VZERO/AliVZEROLoader.cxx [new file with mode: 0644]
VZERO/AliVZEROLoader.h [new file with mode: 0644]
VZERO/VZEROLinkDef.h
VZERO/libVZERO.pkg

index 223ddb4..840d97a 100755 (executable)
@@ -30,6 +30,7 @@
 
 #include "AliRun.h"
 #include "AliVZERO.h"
+#include "AliVZEROLoader.h"
 #include "AliVZEROdigit.h"
 #include "AliVZEROhit.h"
 
@@ -51,8 +52,6 @@ AliVZERO::AliVZERO(const char *name, const char *title)
    
   gAlice->AddHitList(fHits);
 
-//  fDigits       =  new TClonesArray("AliVZEROdigit",400) ; 
-
   fThickness    =  4.1;   // total thickness of the V0R box
   fThickness1   =  0.7;   // thickness of the thickest cell (2.5 in version 0)
   
@@ -143,3 +142,17 @@ void AliVZERO::SetMaxDestepAlu(Float_t p1)
 {
     fMaxDestepAlu = p1;
 }
+
+//___________________________________________
+AliLoader* AliVZERO::MakeLoader(const char* topfoldername)
+{ 
+  // builds VZEROgetter (AliLoader type)
+  // if detector wants to use customized getter, it must overload this method
+
+  Info("MakeLoader","Creating AliVZEROLoader. Top folder is %s.",topfoldername);
+  fLoader = new AliVZEROLoader(GetName(),topfoldername);
+  return fLoader;
+}
+
+
+
index 0a8424a..e7826d4 100755 (executable)
@@ -7,7 +7,9 @@
 //////////////////////////////////////////////////
 //  Manager and hits classes for set : VZERO    //
 //////////////////////////////////////////////////
+
+#include "AliRun.h"
+#include "AliLoader.h" 
 #include "AliDetector.h"
 #include "AliHit.h"
 #include "TNamed.h"
@@ -30,6 +32,7 @@ public:
   virtual Int_t  DistanceToPrimitive(Int_t px, Int_t py);
   virtual Int_t  IsVersion() const = 0;
   virtual void   Init();
+  virtual AliLoader* MakeLoader(const char* topfoldername);
   virtual void   MakeBranch(Option_t *option) =0;
 //  virtual void   MakeBranch(Option_t *option);
   virtual void   DrawModule() {};
diff --git a/VZERO/AliVZEROLoader.cxx b/VZERO/AliVZEROLoader.cxx
new file mode 100644 (file)
index 0000000..74487e7
--- /dev/null
@@ -0,0 +1,23 @@
+#include "AliVZEROLoader.h"
+
+const TString AliVZEROLoader::fgkDefaultHitsFileName      = "VZERO.Hits.root";
+const TString AliVZEROLoader::fgkDefaultDigitsFileName    = "VZERO.Digits.root";
+
+ClassImp(AliVZEROLoader)
+AliVZEROLoader::AliVZEROLoader()
+ {
+ }
+/*****************************************************************************/ 
+AliVZEROLoader::AliVZEROLoader(const Char_t *name,const Char_t *topfoldername)
+ :AliLoader(name,topfoldername)
+{
+  if (GetDebug()) 
+   Info("AliVZEROLoader"," name = %s; topfolder = %s",name,topfoldername);
+}
+/*****************************************************************************/ 
+
+AliVZEROLoader::AliVZEROLoader(const Char_t *name,TFolder *topfolder)
+ :AliLoader(name,topfolder)
+ {
+ }
+
diff --git a/VZERO/AliVZEROLoader.h b/VZERO/AliVZEROLoader.h
new file mode 100644 (file)
index 0000000..3f923a1
--- /dev/null
@@ -0,0 +1,31 @@
+#ifndef ALIVZEROGETTER_H
+#define ALIVZEROGETTER_H
+
+//base class for loaders 
+//loader is common for reading data for all detectors
+//Each detector has a loader data member
+//loader is accessible via folder structure as well
+
+#include <AliLoader.h>
+
+class AliVZEROLoader: public AliLoader
+ {
+   public:
+    AliVZEROLoader();
+    AliVZEROLoader(const Char_t *name,const Char_t *topfoldername);
+    AliVZEROLoader(const Char_t *name,TFolder *topfolder);
+    
+    virtual ~AliVZEROLoader(){};//-----------------
+
+   protected:
+
+
+   private:
+    static const TString fgkDefaultHitsFileName;
+    static const TString fgkDefaultDigitsFileName;
+
+   public:
+     ClassDef(AliVZEROLoader,1)
+ };
+#endif
index 49921ed..35d059a 100755 (executable)
@@ -11,5 +11,6 @@
 #pragma link C++ class  AliVZEROv2+;
 #pragma link C++ class  AliVZEROhit+;
 #pragma link C++ class  AliVZEROdigit+;
+#pragma link C++ class  AliVZEROLoader+;
 
 #endif
index e90643f..f2c360e 100644 (file)
@@ -1,12 +1,14 @@
 SRCS= \
+AliVZEROLoader.cxx \
 AliVZERO.cxx \
 AliVZEROv0.cxx \
 AliVZEROv2.cxx \
 AliVZEROhit.cxx \
 AliVZEROdigit.cxx
 
-HDRS= $(SRCS:.cxx=.h)
+HDRS:= $(SRCS:.cxx=.h)
 
-DHDR=VZEROLinkDef.h
+DHDR:=VZEROLinkDef.h
+
+EINCLUDE:= $(ALICE)/geant3/TGeant3 STRUCT STEER CONTAINERS
 
-EINCLUDE:= $(ALICE)/geant3/TGeant3 STRUCT STEER