]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EVE/EveDet/AliEveTPCLoader.h
From Massimo: remove usage of AliITSgeom, use AliITSgeomTGeo instead.
[u/mrichter/AliRoot.git] / EVE / EveDet / AliEveTPCLoader.h
CommitLineData
d810d0de 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 *
51346b82 7 * full copyright notice. *
d810d0de 8 **************************************************************************/
e9a38ea3 9
10#ifndef ALIEVE_TPCLoader_H
11#define ALIEVE_TPCLoader_H
12
84aff7a4 13#include <TEveElement.h>
0b28fd57 14#include <vector>
e9a38ea3 15
16class AliRawReaderRoot;
17
e9a38ea3 18
d810d0de 19class AliEveTPCData;
20class AliEveTPCSector2D;
21class AliEveTPCSector3D;
e9a38ea3 22
d810d0de 23class AliEveTPCLoader : public TEveElementList
e9a38ea3 24{
d810d0de 25 friend class AliEveTPCLoaderEditor;
e9a38ea3 26
d810d0de 27 AliEveTPCLoader(const AliEveTPCLoader&); // Not implemented
28 AliEveTPCLoader& operator=(const AliEveTPCLoader&); // Not implemented
265ecb21 29
e9a38ea3 30protected:
a97abca8 31 TString fFile; // File holding raw-data.
32 Int_t fEvent; // Current event.
33 Bool_t fDoubleSR; // Set to true for double sampling-rate.
e9a38ea3 34
a97abca8 35 TString fTPCEquipementMap; // Equipement-map file-name, if set passed to raw-reader.
36 AliRawReaderRoot *fReader; // Raw-data reader.
37 AliEveTPCData *fData; // TPC data container.
e9a38ea3 38
a97abca8 39 std::vector<AliEveTPCSector2D*> fSec2Ds; // 2D sector representations.
40 std::vector<AliEveTPCSector3D*> fSec3Ds; // 3D sector representations.
e9a38ea3 41
a97abca8 42 Bool_t fSetInitSectorParams; // If true, initial parameters of 2D and 3D sectors are set from values below.
43 Int_t fInitMinTime; // Min time for display.
44 Int_t fInitMaxTime; // Max time for display.
45 Int_t fInitThreshold; // Threshold.
46 Int_t fInitMaxVal; // Maximum-signal value (all signals above mapped to saturation color).
e7c8d6ca 47
e9a38ea3 48public:
d810d0de 49 AliEveTPCLoader(const Text_t* n="AliEveTPCLoader", const Text_t* t=0);
50 virtual ~AliEveTPCLoader();
e9a38ea3 51
84aff7a4 52 virtual void RemoveElementLocal(TEveElement* el);
32e219c2 53 virtual void RemoveElementsLocal();
e9a38ea3 54
55 void SetFile(const Text_t* f) { fFile = f; }
8f50aad8 56 void SetDoubleSR(Bool_t d) { fDoubleSR = d; }
e9a38ea3 57
47bd7081 58 const Text_t* GetTPCEquipementMap() const { return fTPCEquipementMap; }
59 void SetTPCEquipementMap(const Text_t* em) { fTPCEquipementMap = em; }
b1e0b894 60 AliRawReaderRoot* GetReader() const { return fReader; }
61 void SetReader(AliRawReaderRoot* reader) { fReader = reader; }
d810d0de 62 AliEveTPCData* GetData() const { return fData; }
63 void SetData(AliEveTPCData* d);
e9a38ea3 64
65 void OpenFile();
66 void LoadEvent();
67 void NextEvent(Bool_t rewindOnEnd=kTRUE);
68 void GotoEvent(Int_t event);
d810d0de 69 static void* LoopEvent(AliEveTPCLoader* loader);
e9a38ea3 70
42c8253f 71 void UpdateSectors(Bool_t dropNonPresent=kFALSE);
c59e16e8 72 void ReloadSectors();
e9a38ea3 73 void CreateSectors3D();
74 void DeleteSectors3D();
75
b1e0b894 76 void SetInitParams(Int_t mint, Int_t maxt, Int_t thr, Int_t maxval=128);
e7c8d6ca 77
a97abca8 78 ClassDef(AliEveTPCLoader, 1); // Front-end for stand-alone inspection of TPC raw-data.
d810d0de 79}; // endclass AliEveTPCLoader
e9a38ea3 80
81#endif