StRoot
1
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Groups
Pages
StDAQMaker
StDAQReader.h
1
/***************************************************************************
2
*
3
* $Id: StDAQReader.h,v 1.43 2012/09/13 20:01:49 fisyak Exp $
4
*
5
* Author: Victor Perev
6
***************************************************************************
7
*
8
* Description: Offline Wrapper for DAQ reader classes
9
*
10
***************************************************************************
11
*
12
* $Log: StDAQReader.h,v $
13
* Revision 1.43 2012/09/13 20:01:49 fisyak
14
* Clean up, use Jeff's skip_then_get
15
*
16
* Revision 1.42 2009/10/13 15:51:48 fine
17
* Activate the new DAT file format
18
*
19
* Revision 1.41 2009/10/07 23:21:56 fine
20
* Move the StRtsReaderMaker instantiation fro StDAQReader to StDAQMaker to make sure it is located just after StDAQMaker in chain
21
*
22
* Revision 1.40 2009/10/07 00:52:32 fine
23
* Move daqReader instantiation from StDAQMaker to StDAQReader to switch between input files properly
24
*
25
* Revision 1.39 2009/04/06 18:22:33 fine
26
* remove the redundant methods and fix L1/L2/L3 summary
27
*
28
* Revision 1.38 2009/01/20 22:56:32 fine
29
* remove the redundant CPP flag
30
*
31
* Revision 1.37 2009/01/14 18:20:49 fine
32
* Remove the redundant devReader type
33
*
34
* Revision 1.36 2008/11/26 15:53:12 fine
35
* fix the CPP flags for StDAQReader.h
36
*
37
* Revision 1.35 2008/11/25 21:42:53 fine
38
* preparing DAQ maker for DAQ_READER
39
*
40
* Revision 1.34 2008/01/29 01:55:56 fine
41
* Add extra CPP flag to simply the Conscript
42
*
43
* Revision 1.33 2008/01/22 21:13:01 fine
44
* move the dependency from the class desclaration to class implematation to allo for the new EVP_READER
45
*
46
* Revision 1.32 2007/12/24 05:19:58 fine
47
* Introduce the shadow copy of the evp buffer for the new EVP_READER
48
*
49
* Revision 1.31 2007/12/22 01:14:59 fine
50
* version compatible with new/old DAQ readers
51
*
52
* Revision 1.30 2007/08/07 19:44:11 perev
53
* Gene scalers added
54
*
55
* Revision 1.29 2004/08/07 02:39:00 perev
56
* Traditional Clear added
57
*
58
* Revision 1.28 2004/03/05 15:38:08 fisyak
59
* Add default for getTPCReader (to keep interface unchanged)
60
*
61
* Revision 1.27 2004/03/04 21:51:27 ward
62
* Replaced MERGE_SEQUENCES with a StDAQMaker chain parameter, as suggested by Landgraf and Lauret.
63
*
64
* Revision 1.26 2004/02/18 20:17:45 ward
65
* Access SSD data in makers.
66
*
67
* Revision 1.25 2004/02/03 03:25:06 jeromel
68
* Added counter for ZeroToken events
69
*
70
* Revision 1.24 2003/12/24 21:30:45 perev
71
* Cleanup of DAQ
72
*
73
* Revision 1.23 2003/09/28 01:57:21 jeromel
74
* No change (indent)
75
*
76
* Revision 1.22 2003/03/24 18:12:10 ward
77
* Full support for EEMC from Herbert Ward.
78
*
79
* Revision 1.21 2003/02/16 16:02:49 perev
80
* new method added
81
*
82
* Revision 1.20 2002/12/19 22:28:27 perev
83
* PMD added
84
*
85
* Revision 1.19 2002/01/17 21:14:38 perev
86
* Akio FPD reader
87
*
88
* Revision 1.18 2001/07/16 21:38:44 perev
89
* EMC added
90
*
91
* Revision 1.17 2001/07/10 18:13:04 jeromel
92
* Changes commited for Frank Geurts (TOF) after approval from Herb Ward
93
* on Tue, 10 Jul 2001 11:19:48 and review by Victor.
94
* Changes implements TOF DAQ Reader.
95
*
96
* Revision 1.16 2001/06/29 17:08:24 perev
97
* Hide DaqLib includes from CINT
98
*
99
* Revision 1.15 2001/06/19 21:10:49 jeromel
100
* Changes for FTPCReader (Janet S.)
101
*
102
* Revision 1.14 2000/07/13 22:35:10 perev
103
* More accurate __CINT__ flags added
104
*
105
* Revision 1.13 2000/06/30 21:53:40 perev
106
* L3 stuff added
107
*
108
* Revision 1.12 2000/06/12 15:41:19 perev
109
* StTPCRead.h added into StDAQReader.h
110
*
111
* Revision 1.11 2000/06/12 15:04:02 perev
112
* SVT + cleanup
113
*
114
* Revision 1.10 2000/05/25 20:01:58 perev
115
* EventSize added
116
*
117
* Revision 1.9 2000/04/07 15:43:19 perev
118
* SetVerbose method added
119
*
120
* Revision 1.8 2000/01/24 20:35:37 ward
121
* Access trigger data.
122
*
123
* Revision 1.7 2000/01/24 14:39:33 perev
124
* FTPC (HolmMade) is added
125
*
126
* Revision 1.6 1999/12/15 18:40:59 perev
127
* Keep undeleted all DAQ wrapper classes
128
*
129
* Revision 1.5 1999/08/06 16:20:59 perev
130
* RICHReader added
131
*
132
* Revision 1.4 1999/08/01 00:14:50 perev
133
* leak removed author added
134
*
135
* Revision 1.3 1999/08/01 00:10:57 perev
136
* leak removed author added
137
*
138
*
139
**************************************************************************/
140
#ifndef _StDAQReader_
141
#define _StDAQReader_
142
// Forward declarations
143
struct
EventInfo
;
144
typedef
EventInfo
DAQEventInfo
;
145
class
EventReader
;
146
class
StTPCReader
;
147
class
StSSDReader
;
148
class
StEMCReader
;
149
class
StEEMCReader
;
150
class
StPMDReader
;
151
class
StFTPCReader
;
152
class
StTRGReader
;
153
class
StSVTReader
;
154
class
TDataSet
;
155
156
class
daqReader
;
157
typedef
daqReader
evpReader
;
158
159
#ifndef __CINT__
160
161
struct
RICH_Reader
;
162
struct
L3_Reader
;
163
struct
TOF_Reader
;
164
struct
FPD_Reader
;
165
166
typedef
RICH_Reader
StRICHReader
;
167
typedef
L3_Reader
StL3Reader
;
168
typedef
TOF_Reader
StTOFReader
;
169
typedef
FPD_Reader
StFPDReader
;
170
171
#endif
/*__CINT__*/
172
173
#ifdef __CINT__
174
175
class
StRICHReader
;
176
class
StL3Reader
;
177
class
StTOFReader
;
178
class
StFPDReader
;
179
180
#endif
/*__CINT__*/
181
class
StTrigSummary
{
182
public
:
183
int
L1summary[2];
184
int
L2summary[2];
185
int
L3summary[4];
186
};
187
class
StRtsReaderMaker
;
188
class
StStreamFile
;
189
//
190
191
192
class
StDAQReader
193
{
194
public
:
195
StDAQReader
(
const
char
*file=0,
StRtsReaderMaker
* rtsMaker=0);
196
virtual
~
StDAQReader
();
197
void
clear();
198
virtual
void
setVerbose(
int
ver=1){fVerbose=ver;};
199
virtual
int
open(
const
char
*file);
200
virtual
int
close();
201
virtual
int
isOpened(){
return
(
fFd
!= (-1));};
202
virtual
int
Make();
203
virtual
int
skipEvent(
int
nskip);
204
virtual
int
getRunNumber()
const
;
205
virtual
int
getEventNumber()
const
;
206
virtual
unsigned
int
getUnixTime()
const
;
207
virtual
unsigned
int
getTrigWord()
const
;
208
virtual
unsigned
int
getTrigInputWord()
const
;
209
210
virtual
int
TPCPresent ()
const
;
211
virtual
int
SVTPresent ()
const
;
212
virtual
int
TOFPresent ()
const
;
213
virtual
int
FPDPresent ()
const
;
214
virtual
int
SSDPresent ()
const
;
215
virtual
int
EMCPresent ()
const
;
216
virtual
int
PMDPresent ()
const
;
217
virtual
int
SMDPresent ()
const
;
218
virtual
int
FTPCPresent()
const
;
219
virtual
int
RICHPresent()
const
;
220
virtual
int
TRGPresent ()
const
;
221
virtual
int
L3Present ()
const
;
222
223
virtual
void
setTPCVersion(
const
char
* vers =
"TPCV2P0"
);
224
virtual
void
setFTPCVersion(
const
char
* vers =
"FTPV1P0"
);
225
virtual
const
char
*getTPCVersion()
const
{
return
fTPCVersion ;}
226
virtual
const
char
*getFTPCVersion()
const
{
return
fFTPCVersion;}
227
StTPCReader
*getTPCReader (
char
mergeSequences=1);
228
StSSDReader
*getSSDReader ();
229
StEMCReader
*getEMCReader ();
230
StEEMCReader
*getEEMCReader();
231
StPMDReader
*getPMDReader ();
232
StRICHReader
*getRICHReader();
233
StFTPCReader
*getFTPCReader();
234
StTRGReader
*getTRGReader ();
235
StSVTReader
*getSVTReader ();
236
StL3Reader
*getL3Reader ();
237
StTOFReader
*getTOFReader ();
238
StFPDReader
*getFPDReader ();
239
StTrigSummary
*getTrigSummary ()
const
{
return
fTrigSummary;}
240
virtual
void
printEventInfo();
241
virtual
int
getEventSize()
const
;
242
virtual
EventReader
*getEventReader()
const
{
return
fEventReader; }
243
virtual
daqReader
*getFileReader()
const
{
return
fDaqFileReader;}
244
virtual
StStreamFile
*getDatFileReader()
const
{
return
fDatFileReader;}
245
246
protected
:
247
void
nextEvent
();
248
virtual
int
readEvent();
249
int
fEventStatus;
250
251
protected
:
252
int
m_ZeroTokens;
253
int
fFd
;
// File descriptor
254
int
fVerbose;
255
EventReader
*fEventReader;
256
StTPCReader
*fTPCReader;
257
StSSDReader
*fSSDReader;
258
StEMCReader
*fEMCReader;
259
StEEMCReader
*fEEMCReader;
260
StPMDReader
*fPMDReader;
261
StFTPCReader
*fFTPCReader;
262
StRICHReader
*fRICHReader;
263
StTRGReader
*fTRGReader;
264
StSVTReader
*fSVTReader;
265
StL3Reader
*fL3Reader;
266
StTOFReader
*fTOFReader;
267
StFPDReader
*fFPDReader;
268
long
fOffset;
269
DAQEventInfo *fEventInfo;
270
char
*fFile;
271
char
fTPCVersion[12];
272
char
fFTPCVersion[12];
273
StTrigSummary
*fTrigSummary;
274
daqReader
*fDaqFileReader;
275
StStreamFile
*fDatFileReader;
276
char
*fDATAP;
277
StRtsReaderMaker
*fRtsMaker;
278
};
279
#ifndef __CINT__
280
#include "StTPCReader.h"
281
#include "StFTPCReader.h"
282
#include "StEMCReader.h"
283
#include "StEEMCReader.h"
284
#include "StPMDReader.h"
285
#endif
/*__CINT__*/
286
#endif
/*end*/
EventReader
Definition:
EventReader.hh:448
StTRGReader
Definition:
StTRGReader.h:57
StPMDReader
Definition:
StPMDReader.h:25
StTPCReader
Definition:
StTPCReader.h:89
StEEMCReader
Definition:
StEEMCReader.h:25
StRtsReaderMaker
Definition:
StRtsReaderMaker.h:19
daqReader
Definition:
daqReader.h:87
StStreamFile
Definition:
StStreamFile.h:40
StFTPCReader
Definition:
StFTPCReader.h:39
EventInfo
Definition:
EventReader.hh:153
StSVTReader
Definition:
StSVTReader.h:23
StDAQReader::nextEvent
void nextEvent()
NextEvent - this method is called to advance the next daq event if any.
Definition:
StDAQReader.cxx:426
L3_Reader
Definition:
L3_Reader.hh:237
RICH_Reader
Definition:
RICH_Reader.hh:84
FPD_Reader
Definition:
FPD_Reader.hh:85
TDataSet
Definition:
TDataSet.h:34
StTrigSummary
Definition:
StDAQReader.h:181
TOF_Reader
Definition:
TOF_Reader.hh:239
StDAQReader::fFd
int fFd
number of events with token==0
Definition:
StDAQReader.h:253
StEMCReader
Definition:
StEMCReader.h:22
StDAQReader
Definition:
StDAQReader.h:192
StSSDReader
Definition:
StSSDReader.h:22
Generated by
1.8.5