/[PAMELA software]/DarthVader/RunInfo/doc/RunInfo.txt
ViewVC logotype

Contents of /DarthVader/RunInfo/doc/RunInfo.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1.1.1 - (show annotations) (download) (vendor branch)
Fri May 19 13:15:47 2006 UTC (18 years, 6 months ago) by mocchiut
Branch: DarthVader, MAIN
CVS Tags: v0r01, v0r02, v5r00, v4r00, v2r01, v10RED, v1r01beta, start, v9r00, v9r01, v1r00, v1r01, v10REDr01, v3r04, v3r05, v3r06, v3r00, v3r03, v6r01, v6r00, v2r00BETA, HEAD
Changes since 1.1: +0 -0 lines
File MIME type: text/plain
Imported sources

1 RunInfo
2
3
4 class RunInfo : public TObject
5
6
7 Inheritance Chart:
8
9 TObject <- RunInfo
10
11
12 Methods:
13
14 private:
15
16 public:
17
18
19 Data Members:
20
21 private:
22
23 public:
24 ULong64_t ID;
25 ULong64_t ID_REG_RUN;
26 ULong64_t ID_REG_RUN_L2;
27 ULong64_t RUNHEADER_TIME;
28 ULong64_t RUNTRAILER_TIME;
29 Int_t EV_REG_PHYS_FROM;
30 Int_t EV_REG_PHYS_TO;
31 Int_t EV_REG_RUNHEADER;
32 Int_t EV_REG_RUNTRAILER;
33 Int_t TRK_CALIB_USED;
34 Int_t EFFECTIVE_WORKING_SCHEDULE;
35 Int_t PRH_VAR_TRIGGER_MODE_A;
36 Int_t PRH_VAR_TRIGGER_MODE_B;
37 Int_t ACQ_BUILD_INFO;
38 Int_t ACQ_VAR_INFO;
39 TString TRIG_ver;
40 TString TOF_ver;
41 TString AC_ver;
42 TString TRK_ver;
43 TString CAL_ver;
44 TString S4_ver;
45 TString ND_ver;
46
47
48 Class Description:
49
50 Class needed to copy into the Level2 rootple the information stored in the DB table GL_RUN.
51
52
53
54
55
56 ItoRunInfo
57
58
59 class ItoRunInfo : public TObject
60
61
62 Inheritance Chart:
63
64 TObject <- ItoRunInfo
65
66
67 Methods:
68
69 private:
70
71 public:
72 ItoRunInfo();
73 ItoRunInfo(TSQLServer *dbc, TFile *processFile, TString processFolder, ULong64_t idRun, TString Detector, TString Dec_version);
74 ItoRunInfo(TFile *processFile);
75 Int_t Update();
76 Int_t Read();
77 Int_t GetRunInfo(ULong64_t run);
78 UInt_t GetRunForEntry(UInt_t entry);
79 Long64_t GetRunEntries(){return(totnorun);};
80 Bool_t IsReprocessing();
81 UInt_t GetFirstFileEntry();
82 UInt_t GetLastFileEntry();
83 ULong64_t GetFileEntries();
84 UInt_t GetNoRun();
85 TArrayL *GetRunList();
86 void Close();
87
88
89 Data Members:
90
91 private:
92 ULong64_t file_entries;
93 Long64_t totnorun;
94 Int_t first_file_entry;
95 Int_t last_file_entry;
96 UInt_t norun;
97 Bool_t reprocessing;
98 Bool_t updating;
99 TFile *file;
100 TTree *newtree;
101 TArrayL *runlist;
102 ULong64_t idRun;
103 TSQLServer *dbc;
104 TString processFolder;
105 TString Detector;
106 TString Dec_version;
107
108 public:
109 ULong64_t ID;
110 ULong64_t ID_REG_RUN;
111 ULong64_t ID_REG_RUN_L2;
112 ULong64_t RUNHEADER_TIME;
113 ULong64_t RUNTRAILER_TIME;
114 Int_t EV_REG_PHYS_FROM;
115 Int_t EV_REG_PHYS_TO;
116 Int_t EV_REG_RUNHEADER;
117 Int_t EV_REG_RUNTRAILER;
118 Int_t TRK_CALIB_USED;
119 Int_t EFFECTIVE_WORKING_SCHEDULE;
120 Int_t PRH_VAR_TRIGGER_MODE_A;
121 Int_t PRH_VAR_TRIGGER_MODE_B;
122 Int_t ACQ_BUILD_INFO;
123 Int_t ACQ_VAR_INFO;
124 TString TRIG_ver;
125 TString TOF_ver;
126 TString AC_ver;
127 TString TRK_ver;
128 TString CAL_ver;
129 TString S4_ver;
130 TString ND_ver;
131
132
133 Class Description:
134
135 Interface to the RunInfo class: provides methods which can be used to reprocess RUNs inside a Level2 file.
136
137
138 ItoRunInfo():
139
140 Default constructor for RunInfo.
141
142
143 ItoRunInfo(TSQLServer *dbc, TFile *processFile, ULong64_t idRun, TString Detector, TString Dec_version, Int_t &signal):
144
145 Constructor to be used with a file opened in "UPDATE" mode, needed to update informations in the file.
146 Given a opened sql connection, an opened TFile and the idRun it updates the versioning information for
147 the given detector or creates inside the TFile the TTree run copying data from the GL_RUN table where ID=idRun.
148 Signal is returned in "signal" variable: if less than 0 an error occurred.
149 Detector can be:
150 "TOF", "TRIG", "AC", "TRK", "CALO", "S4", "ND"
151
152 Example:
153
154 ...
155 #include <RunInfo.h>
156
157 ...
158
159 TSQLServer *dbc = 0;
160 dbc = TSQLServer::Connect("mysql://localhost/pamelaprod","anonymous","");
161 TFile *file = new TFile(processFile.Data(),"UPDATE");
162 const char *caloversion = CaloInfo(false);
163 Int_t sgnl = 0;
164 ItoRunInfo *runinfo = new ItoRunInfo(dbc,file,"calorimeterFolder",idRun,"CALO",caloversion);
165 sgnl = runinfo->Update()
166 if ( sgnl < 0 ) return(sgnl);
167
168
169 ItoRunInfo(TFile *processFile):
170
171 Constructor to be used with a file opened in "READ-ONLY" mode, needed only to perform analysis.
172
173
174
175 Bool_t IsReprocessing():
176
177 Returns "true" if the TFile already contained a Run TTree and the "Detector" versioning information was already
178 filled; return "false" otherwise.
179
180
181 UInt_t GetFirstFileEntry();
182
183 Returns the entry of the TFile which contains the first event of the processed run.
184
185
186 UInt_t GetFirstFileEntry();
187
188 Returns the entry of the TFile which contains the last event of the processed run.
189
190
191 ULong64_t GetFileEntries();
192
193 Returns the number of entries of the TFile.
194
195
196 UInt_t GetNoRun():
197
198 Returns the number of runs to be processed.
199
200
201 TArrayL *GetRunList():
202
203 Returns an array of lenght equal to the number of run to be processed in which each elements is the idRun to be
204 processed.
205 Example (follows the one above):
206
207 UInt_t numbofrun = runinfo->GetNoRun();
208 TArrayL *runlist = runinfo->GetRunList();
209 //
210 // Loop over the run to be processed
211 //
212 for (UInt_t irun=0; irun < numbofrun; irun++){
213 //
214 // get idRun to process
215 //
216 idRun = runlist->At(irun);
217 //
218 // store run information from GL_RUN in memory
219 //
220 sgnl = runinfo->GetRunInfo(idRun);
221 if ( sgnl < 0 ) return(sgnl);
222 //
223 // process data
224 //
225 printf(" ID_REG_RUN for run %i is %i \n",(int)idRun,(int)runinfo->ID_REG_RUN);
226 printf(" RUNHEADER_TIME for run %i is %i \n",(int)idRun,(int)runinfo->RUNHEADER_TIME);
227
228
229 Int_t GetRunInfo(ULong64_t idRun):
230
231 Fill data members with variables of the run "idRun" reading from the file and not from the DB.
232 Returns a signal less than zero in case of any error, zero otherwise.
233 As example look at the one above.
234
235
236 UInt_t GetRunForEntry(UInt_t entry);
237
238 Given the entry number it returns the ID of the run which contains that event.
239
240
241 Long64_t GetRunEntries(){return(totnorun);};
242
243 Returns the number of runs contained in the file.
244
245
246 void Close():
247
248 Clear private data memebers.

  ViewVC Help
Powered by ViewVC 1.1.23