]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EVE/Alieve/ITSScaledModule.h
Remove EVE/Reve/ sub-module.
[u/mrichter/AliRoot.git] / EVE / Alieve / ITSScaledModule.h
CommitLineData
3b868b75 1// $Header$
2
3#ifndef ALIEVE_ITSScaledModule_H
4#define ALIEVE_ITSScaledModule_H
5
84aff7a4 6#include <TEveUtil.h>
3b868b75 7#include <Alieve/ITSModule.h>
8
9#include <TQObject.h>
10
11namespace Alieve {
12
13/**************************************************************************/
14// DigitScaleInfo
15/**************************************************************************/
16
84aff7a4 17class DigitScaleInfo : public TQObject, public TEveRefBackPtr
3b868b75 18{
19public:
20 enum StatType_e { ST_Occup, ST_Average, ST_Rms };
3b868b75 21
32e219c2 22 // Bool_t fAutoUpdatePalette;
3b868b75 23private:
24 DigitScaleInfo(const DigitScaleInfo&); // Not implemented
25 DigitScaleInfo& operator=(const DigitScaleInfo&); // Not implemented
26
32e219c2 27protected:
28 Int_t fScale;
29 Int_t fStatType;
30
31 Bool_t fSyncPalette;
32
3b868b75 33public:
34 DigitScaleInfo();
35 virtual ~DigitScaleInfo(){}
36
03dfc4a7 37 Int_t GetScale() { return fScale; }
32e219c2 38 void ScaleChanged(Int_t s);
3b868b75 39
03dfc4a7 40 Int_t GetStatType() { return fStatType; }
32e219c2 41 void StatTypeChanged(Int_t t);
42
43 Bool_t GetSyncPalette(){return fSyncPalette;}
44 void SetSyncPalette(Bool_t x){fSyncPalette = x;}
3b868b75 45
46 ClassDef(DigitScaleInfo, 1);
47};
48
49/**************************************************************************/
50// ScaledDigit
51/**************************************************************************/
52
53class ScaledDigit : public TObject
54{
55public:
56 Int_t N;
57 Float_t sum;
58 Float_t sqr_sum;
59 Int_t min_i,min_j;
60 Int_t max_i,max_j;
61
62 ScaledDigit();
63 ScaledDigit(Int_t di, Int_t dj);
64
65 virtual void Dump() const;
66};
67
68/**************************************************************************/
69// ITSScaledModule
70/**************************************************************************/
71
72class ITSScaledModule : public ITSModule
73{
74 friend class ITSSDSubEditor;
75private:
76 map<Int_t, ScaledDigit> fDigitsMap;
77
78 ITSScaledModule(const ITSScaledModule&); // Not implemented
79 ITSScaledModule& operator=(const ITSScaledModule&); // Not implemented
80
81protected:
82 Int_t fNx; // per module
83 Int_t fNz;
84
85 Int_t fNCx; // per cell
86 Int_t fNCz;
87
03dfc4a7 88 DigitScaleInfo* fScaleInfo;
89
3b868b75 90public:
03dfc4a7 91 ITSScaledModule(Int_t gid, ITSDigitsInfo* info, DigitScaleInfo* si );
3b868b75 92 virtual ~ITSScaledModule();
93
32e219c2 94 virtual void DigitSelected(Int_t idx);
3b868b75 95
96 virtual void LoadQuads();
97 void SetQuadValues();
98
32e219c2 99 void SyncPalette();
100
101 void GetScaleData(Int_t& cnx, Int_t& cnz, Int_t& total);
03dfc4a7 102 DigitScaleInfo* GetScaleInfo(){ return fScaleInfo; }
3b868b75 103
104 ClassDef(ITSScaledModule, 1);
105}; // endclass ITSScaledModule
106
107}
108
109#endif