StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
EEqaSorterA.h
1 // \class EEqaSorterA
2 // \author Jan Balewski, Hal Spinka
3 // $Id: EEqaSorterA.h,v 1.3 2009/02/24 04:07:45 ogrebeny Exp $
4 
5 #ifndef EEqaSorterA_h
6 #define EEqaSorterA_h
7 
8 #include "TObject.h"
9 #include "StEEmcUtil/EEfeeRaw/EEdims.h"
10 
11 class TObjArray;
12 
13 class TH1F;
14 class TH2F;
15 class EztEmcRawData;
16 
17 class EEqaSorterA :public TObject{
18 
19 private:
20  TH2F **hCrate; // chan vs. ADC per crate
21  TH1F **hCrateHot; // counts/chan for ADC>4*ped4+thr1
22  int hotTwThres; // used to count hot towers
23  int feePed[MaxTwCrateID*MaxTwCrateCh]; // pedestals loaded to FEE, note DAQ ped=4*ped4
24 
25  void sortDaqTower1(const EztEmcRawData *t);
26  void sortDaqTowerHot(const EztEmcRawData *t);
27  void sortDaqMapmt0(const EztEmcRawData *s, int ver);
28 
29 public:
30  EEqaSorterA();
31  virtual ~EEqaSorterA();
32  void initCrateHisto(TObjArray *HList, int nb = 150, int mx = 600);
33  int usePed4(const Char_t *filename = "eemcPed4.dat");
34  void sort(const EztEmcRawData *t, const EztEmcRawData *s, int ver );
35  void Finish();
36  void resetHisto();
37 
38  void saveHisto(TFile *f) const;
39 
40  ClassDef(EEqaSorterA,1)
41 };
42 
43 #endif
44 
45 // $Log: EEqaSorterA.h,v $
46 // Revision 1.3 2009/02/24 04:07:45 ogrebeny
47 // Fixed part of the trigger histograms
48 //
49 // Revision 1.2 2009/01/23 00:14:50 ogrebeny
50 // Inherited EEmcDb from StEEmcDbMaker to fix run-time bug http://www.star.bnl.gov/rt2/Ticket/Display.html?id=1378
51 //
52 // Revision 1.1 2005/04/28 20:54:46 balewski
53 // start
54 //
55 // Revision 1.5 2004/02/17 03:09:18 balewski
56 // *** empty log message ***
57 //
58 // Revision 1.4 2004/01/29 17:23:14 balewski
59 // fix for BTOW
60 //
61 // Revision 1.3 2004/01/27 16:29:39 balewski
62 // reset added
63 //
64 // Revision 1.7 2004/01/21 18:53:33 spinka
65 // Various problems fixed for towers. More remain.
66 //
67 
68 /* how to merge with Panitkin code
69 1) disable ClassDef(EEqaSorterA) in .cxx & .h
70 
71 2) histo I/O
72 
73 histoHandler.cxx:17:#include "EEqaSorterA.h"
74 histoHandler.cxx:18:EEqaSorterA *eeqaA;
75 
76 increae memeory 3x
77  mfile = TMapFile::Create("hsimple.map","RECREATE", 90000000, ....
78 
79 histoHandler.cxx:293: eeqaA=new EEqaSorterA; // creates EEMC related histos
80 
81 line ~350
82  eeqaA->saveHistoAdd();
83 
84 3) sorter
85 eventLoop.cxx:18:#include "EEqaSorterA.h"
86 eventLoop.cxx:19:extern EEqaSorterA *eeqaA;
87 eventLoop.cxx:1655: eeqaA->sort(evp->token);
88 
89 4) presenter
90 test_3.h test_3.h: static const int MAX_SUBTABS = 11;
91 
92 
93 test_3.cxx:3:#include "EEqaPresenter.h"
94 
95 line ~200
96  TabNames[10][0]="EEMC";
97 
98 line ~290
99 
100  //ETOW and ESMD
101  nSubTabs[10]=4;
102  TabNames[10][1]="Errors";
103  TabNames[10][2]="Towers";
104  TabNames[10][3]="SMD sec 5,6";
105  TabNames[10][4]="SMD sec 7,8";
106  // [9] is last
107 
108 5) add canvas divisions to
109 CanvasDescriptions.txt
110 
111 10,1,2,2,1,cr1
112 10,2,3,2,1,cr1
113 10,3,4,2,1,cr1
114 10,4,8,1,1,cr1
115 
116 */
117 
118