#ifndef AliEveITSScaledModule_H
#define AliEveITSScaledModule_H
#include <TEveUtil.h>
#include <AliEveITSModule.h>
#include <TQObject.h>
class AliEveDigitScaleInfo : public TQObject, public TEveRefBackPtr
{
public:
enum StatType_e { kSTOccup, kSTAverage, kSTRms };
AliEveDigitScaleInfo();
virtual ~AliEveDigitScaleInfo() {}
Int_t GetScale() const { return fScale; }
void ScaleChanged(Int_t s);
Int_t GetStatType() const { return fStatType; }
void StatTypeChanged(Int_t t);
Bool_t GetSyncPalette() const { return fSyncPalette; }
void SetSyncPalette(Bool_t x) { fSyncPalette = x; }
protected:
Int_t fScale;
Int_t fStatType;
Bool_t fSyncPalette;
private:
AliEveDigitScaleInfo(const AliEveDigitScaleInfo&);
AliEveDigitScaleInfo& operator=(const AliEveDigitScaleInfo&);
ClassDef(AliEveDigitScaleInfo, 0);
};
class AliEveITSScaledModule : public AliEveITSModule
{
friend class ITSSDSubEditor;
public:
AliEveITSScaledModule(Int_t gid, AliEveITSDigitsInfo* info, AliEveDigitScaleInfo* si );
virtual ~AliEveITSScaledModule();
virtual void DigitSelected(Int_t idx);
virtual void LoadQuads();
void SetQuadValues();
void SyncPalette();
void GetScaleData(Int_t& cnx, Int_t& cnz, Int_t& total) const;
AliEveDigitScaleInfo* GetScaleInfo() { return fScaleInfo; }
struct ScaledDigit_t : public TObject
{
public:
Int_t fN;
Float_t fSum;
Float_t fSqrSum;
Int_t fMinI, fMinJ;
Int_t fMaxI, fMaxJ;
ScaledDigit_t();
ScaledDigit_t(Int_t di, Int_t dj);
void Dump() const;
};
protected:
Int_t fNx;
Int_t fNz;
Int_t fNCx;
Int_t fNCz;
AliEveDigitScaleInfo* fScaleInfo;
private:
std::map<Int_t, ScaledDigit_t> fDigitsMap;
AliEveITSScaledModule(const AliEveITSScaledModule&);
AliEveITSScaledModule& operator=(const AliEveITSScaledModule&);
ClassDef(AliEveITSScaledModule, 0);
};
#endif
AliEveITSScaledModule.h:1 AliEveITSScaledModule.h:2 AliEveITSScaledModule.h:3 AliEveITSScaledModule.h:4 AliEveITSScaledModule.h:5 AliEveITSScaledModule.h:6 AliEveITSScaledModule.h:7 AliEveITSScaledModule.h:8 AliEveITSScaledModule.h:9 AliEveITSScaledModule.h:10 AliEveITSScaledModule.h:11 AliEveITSScaledModule.h:12 AliEveITSScaledModule.h:13 AliEveITSScaledModule.h:14 AliEveITSScaledModule.h:15 AliEveITSScaledModule.h:16 AliEveITSScaledModule.h:17 AliEveITSScaledModule.h:18 AliEveITSScaledModule.h:19 AliEveITSScaledModule.h:20 AliEveITSScaledModule.h:21 AliEveITSScaledModule.h:22 AliEveITSScaledModule.h:23 AliEveITSScaledModule.h:24 AliEveITSScaledModule.h:25 AliEveITSScaledModule.h:26 AliEveITSScaledModule.h:27 AliEveITSScaledModule.h:28 AliEveITSScaledModule.h:29 AliEveITSScaledModule.h:30 AliEveITSScaledModule.h:31 AliEveITSScaledModule.h:32 AliEveITSScaledModule.h:33 AliEveITSScaledModule.h:34 AliEveITSScaledModule.h:35 AliEveITSScaledModule.h:36 AliEveITSScaledModule.h:37 AliEveITSScaledModule.h:38 AliEveITSScaledModule.h:39 AliEveITSScaledModule.h:40 AliEveITSScaledModule.h:41 AliEveITSScaledModule.h:42 AliEveITSScaledModule.h:43 AliEveITSScaledModule.h:44 AliEveITSScaledModule.h:45 AliEveITSScaledModule.h:46 AliEveITSScaledModule.h:47 AliEveITSScaledModule.h:48 AliEveITSScaledModule.h:49 AliEveITSScaledModule.h:50 AliEveITSScaledModule.h:51 AliEveITSScaledModule.h:52 AliEveITSScaledModule.h:53 AliEveITSScaledModule.h:54 AliEveITSScaledModule.h:55 AliEveITSScaledModule.h:56 AliEveITSScaledModule.h:57 AliEveITSScaledModule.h:58 AliEveITSScaledModule.h:59 AliEveITSScaledModule.h:60 AliEveITSScaledModule.h:61 AliEveITSScaledModule.h:62 AliEveITSScaledModule.h:63 AliEveITSScaledModule.h:64 AliEveITSScaledModule.h:65 AliEveITSScaledModule.h:66 AliEveITSScaledModule.h:67 AliEveITSScaledModule.h:68 AliEveITSScaledModule.h:69 AliEveITSScaledModule.h:70 AliEveITSScaledModule.h:71 AliEveITSScaledModule.h:72 AliEveITSScaledModule.h:73 AliEveITSScaledModule.h:74 AliEveITSScaledModule.h:75 AliEveITSScaledModule.h:76 AliEveITSScaledModule.h:77 AliEveITSScaledModule.h:78 AliEveITSScaledModule.h:79 AliEveITSScaledModule.h:80 AliEveITSScaledModule.h:81 AliEveITSScaledModule.h:82 AliEveITSScaledModule.h:83 AliEveITSScaledModule.h:84 AliEveITSScaledModule.h:85 AliEveITSScaledModule.h:86 AliEveITSScaledModule.h:87 AliEveITSScaledModule.h:88 AliEveITSScaledModule.h:89 AliEveITSScaledModule.h:90 AliEveITSScaledModule.h:91 AliEveITSScaledModule.h:92 AliEveITSScaledModule.h:93 AliEveITSScaledModule.h:94 AliEveITSScaledModule.h:95 AliEveITSScaledModule.h:96 AliEveITSScaledModule.h:97 AliEveITSScaledModule.h:98 AliEveITSScaledModule.h:99 AliEveITSScaledModule.h:100 AliEveITSScaledModule.h:101 AliEveITSScaledModule.h:102 AliEveITSScaledModule.h:103 AliEveITSScaledModule.h:104 AliEveITSScaledModule.h:105 AliEveITSScaledModule.h:106 AliEveITSScaledModule.h:107 AliEveITSScaledModule.h:108 AliEveITSScaledModule.h:109 AliEveITSScaledModule.h:110 AliEveITSScaledModule.h:111 AliEveITSScaledModule.h:112 AliEveITSScaledModule.h:113 AliEveITSScaledModule.h:114 AliEveITSScaledModule.h:115