]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EVE/EveDet/AliEveTPCLoader.h
Temporary fix to avoid xrootd thrashing
[u/mrichter/AliRoot.git] / EVE / EveDet / AliEveTPCLoader.h
1 // $Id$
2 // Main authors: Matevz Tadel & Alja Mrak-Tadel: 2006, 2007
3
4 /**************************************************************************
5  * Copyright(c) 1998-2008, ALICE Experiment at CERN, all rights reserved. *
6  * See http://aliceinfo.cern.ch/Offline/AliRoot/License.html for          *
7  * full copyright notice.                                                 *
8  **************************************************************************/
9
10 #ifndef ALIEVE_TPCLoader_H
11 #define ALIEVE_TPCLoader_H
12
13 #include <TEveElement.h>
14 #include <vector>
15
16 class AliRawReaderRoot;
17
18
19 class AliEveTPCData;
20 class AliEveTPCSector2D;
21 class AliEveTPCSector3D;
22
23 class AliEveTPCLoader : public TEveElementList
24 {
25   friend class AliEveTPCLoaderEditor;
26
27   AliEveTPCLoader(const AliEveTPCLoader&);            // Not implemented
28   AliEveTPCLoader& operator=(const AliEveTPCLoader&); // Not implemented
29
30 protected:
31   TString           fFile;
32   Int_t             fEvent;
33   Bool_t            fDoubleSR;
34
35   TString           fTPCEquipementMap;
36   AliRawReaderRoot* fReader;
37   AliEveTPCData*          fData;
38
39   std::vector<AliEveTPCSector2D*> fSec2Ds;
40   std::vector<AliEveTPCSector3D*> fSec3Ds;
41
42   Bool_t   fSetInitSectorParams;
43   Int_t    fInitMinTime;
44   Int_t    fInitMaxTime;
45   Int_t    fInitThreshold;
46   Int_t    fInitMaxVal;
47
48 public:
49   AliEveTPCLoader(const Text_t* n="AliEveTPCLoader", const Text_t* t=0);
50   virtual ~AliEveTPCLoader();
51
52   virtual void RemoveElementLocal(TEveElement* el);
53   virtual void RemoveElementsLocal();
54
55   void SetFile(const Text_t* f) { fFile = f; }
56   void SetDoubleSR(Bool_t d)    { fDoubleSR = d; }
57
58   const Text_t* GetTPCEquipementMap() const  { return fTPCEquipementMap; }
59   void SetTPCEquipementMap(const Text_t* em) { fTPCEquipementMap = em; }
60   AliRawReaderRoot* GetReader()        const { return fReader; }
61   void SetReader(AliRawReaderRoot* reader)   { fReader = reader; }
62   AliEveTPCData* GetData() const { return fData; }
63   void     SetData(AliEveTPCData* d);
64
65   void OpenFile();
66   void LoadEvent();
67   void NextEvent(Bool_t rewindOnEnd=kTRUE);
68   void GotoEvent(Int_t event);
69   static void* LoopEvent(AliEveTPCLoader* loader);
70
71   void UpdateSectors(Bool_t dropNonPresent=kFALSE);
72   void ReloadSectors();
73   void CreateSectors3D();
74   void DeleteSectors3D();
75
76   void SetInitParams(Int_t mint, Int_t maxt, Int_t thr, Int_t maxval=128);
77
78   ClassDef(AliEveTPCLoader, 1);
79 }; // endclass AliEveTPCLoader
80
81 #endif