00001
00002 #ifndef CAL_H
00003 #define CAL_H
00004
00005 #include "TNode.h"
00006 #include "TBRIK.h"
00007 #include "TVector.h"
00008
00009 #include "digiRootData/DigiEvent.h"
00010
00011 #include "reconRootData/CalCluster.h"
00012 #include "reconRootData/CalRecon.h"
00013 #include "reconRootData/Recon.h"
00014
00015 #include "bfemDisplay/THits.h"
00016 #include "bfemDisplay/TNNode.h"
00017
00018
00019 #define m_cal_lev1 1.3 // (MeV) = 0.1 MIP
00020 #define m_cal_lev2 6.5 // (MeV) = 0.5 MIP
00021 #define m_cal_lev3 26 // (MeV) = 2 MIP
00022 #define m_cal_lev4 130 // (MeV) = 10 MIP
00023
00024
00025
00026 class CalDisplay {
00027
00028 private:
00029
00030 TNode *m_calFrameNode;
00031 TNode *m_AllHitsX;
00032 TNode *m_AllHitsY;
00033
00034 TObjArray *m_CalNodeList;
00035 TObjArray *m_CalHitList;
00036 TObjArray *m_CalClusterList;
00037 TObjArray *m_CalReconHitList;
00038
00039 ReconHeader *recHeader;
00040
00041 DigiEvent *m_event;
00042 Recon *m_recon;
00043
00044 TObjArray *m_peds;
00045
00046 Float_t m_CalTkrdistance;
00047 Float_t m_CalHeightOffset;
00048 Float_t m_CalWidth;
00049 Float_t m_CalHeight;
00050 Float_t m_LogWidth;
00051 Float_t m_LogHeight;
00052 Float_t m_LogLength;
00053 Float_t m_NumCalLayers;
00054 Float_t m_CalHitLength;
00055
00056 void SetLogColor( THits *calLog, Float_t eTotal );
00057
00058 public:
00059
00060 Float_t m_eTot, m_eLeak, m_eCorr;
00061 Int_t m_Gammas;
00062
00063 CalDisplay( TNode *parent, TObjArray *peds );
00064
00065
00066 void setVisibility( Int_t vis );
00067
00068 void DrawEvents( DigiEvent *event, Recon *recon, Bool_t isRealData );
00069 void drawCalRecon();
00070
00071 Float_t getLogEnergy( CalLog* hit, Int_t id, Int_t end, Bool_t isRealData );
00072 Char_t* getCalName(Int_t ihit);
00073
00074 };
00075
00076
00077 #endif
00078
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089
00090
00091