/[PAMELA software]/yoda/techmodel/ReaderAlgorithms.h
ViewVC logotype

Annotation of /yoda/techmodel/ReaderAlgorithms.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6.1 - (hide annotations) (download)
Wed Feb 15 15:47:14 2006 UTC (19 years ago) by kusanagi
Branch: MAIN
CVS Tags: YODA6_2/01, YODA6_2/00, YODA6_1/00
Changes since 6.0: +18 -2 lines
File MIME type: text/plain
Update. Because of misunderstanding the EventTrk packet had been removed from the unpacking. Now it is added again to the Yoda package.

1 kusanagi 1.1 /** @file
2 kusanagi 6.0 * $Author: kusanagi $
3 kusanagi 6.1 * $Date: 2006/02/07 17:11:10 $
4     * $Revision: 6.0 $
5 kusanagi 1.1 *
6     * Header file for the algorithms used to read the techmodel data file.
7     */
8    
9     #ifndef READER_ALGORITHM_H
10     #define READER_ALGORITHM_H
11    
12     #include "TechmodelAlgorithm.h"
13     #include "PscuEvent.h"
14    
15    
16 kusanagi 2.9 #include "endrun/PhysEndRunEvent.h"
17 kusanagi 1.7 #include "CalibCalPulse1Event.h"
18     #include "CalibCalPulse2Event.h"
19     #include "physics/TrackerReader.h"
20     #include "physics/AnticounterReader.h"
21     #include "physics/CalorimeterReader.h"
22     #include "physics/NeutronDetectorReader.h"
23 kusanagi 2.3 #include "physics/S4Reader.h"
24 kusanagi 2.7 #include "physics/TofReader.h"
25     #include "physics/TriggerReader.h"
26 kusanagi 1.2 #include "CalibTrk1Event.h"
27     #include "CalibTrk2Event.h"
28 kusanagi 1.1 #include "CalibTofEvent.h"
29     #include "CalibS4Event.h"
30 kusanagi 1.7 #include "CalibCalPedEvent.h"
31 kusanagi 2.4 #include "Calib1_Ac1Event.h"
32     #include "Calib1_Ac2Event.h"
33     #include "Calib2_Ac1Event.h"
34     #include "Calib2_Ac2Event.h"
35 kusanagi 1.1 #include "RunHeaderEvent.h"
36     #include "RunTrailerEvent.h"
37 kusanagi 1.7 #include "CalibHeaderEvent.h"
38     #include "CalibTrailerEvent.h"
39     #include "InitHeaderEvent.h"
40     #include "InitTrailerEvent.h"
41 kusanagi 6.1 #include "EventTrkEvent.h"
42 kusanagi 1.7 #include "log/LogEvent.h"
43     #include "varDump/VarDumpEvent.h"
44     #include "arrDump/ArrDumpEvent.h"
45     #include "tabDump/TabDumpEvent.h"
46 kusanagi 2.9 #include "tsbt/TsbTEvent.h"
47     #include "tsbb/TsbBEvent.h"
48 kusanagi 1.1 #include "tmtc/TmtcEvent.h"
49     #include "mcmd/McmdEvent.h"
50 kusanagi 1.7 #include "ForcedFECmdEvent.h"
51 kusanagi 2.4 #include "Ac1InitEvent.h"
52 kusanagi 1.7 #include "CalInitEvent.h"
53     #include "TrkInitEvent.h"
54     #include "TofInitEvent.h"
55     #include "TrgInitEvent.h"
56 kusanagi 2.1 #include "NdInitEvent.h"
57 kusanagi 2.3 #include "S4InitEvent.h"
58 kusanagi 2.4 #include "Ac2InitEvent.h"
59 kusanagi 1.8 #include "CalAlarmEvent.h"
60     #include "AcAlarmEvent.h"
61     #include "TrkAlarmEvent.h"
62     #include "TrgAlarmEvent.h"
63     #include "TofAlarmEvent.h"
64 kusanagi 2.3 #include "S4AlarmEvent.h"
65 kusanagi 5.1 #include <fstream>
66     #include <log4cxx/logger.h>
67    
68     extern "C" {
69     #include "CRC.h"
70     }
71 kusanagi 1.7
72 kusanagi 1.1 using namespace std;
73    
74     namespace pamela {
75     namespace techmodel {
76 kusanagi 1.7
77 kusanagi 5.1 /**
78     Event reader algorithm for PhysEndRun events.
79     *
80     */
81 kusanagi 1.7 class PhysEndRunReader: public TechmodelAlgorithm {
82     private:
83     /** The PhysEndRun event that is created in the reader. */
84     PhysEndRunEvent* physEndRun;
85     public:
86 kusanagi 5.1 /**
87     * Constructor
88     * @param
89     * @return
90     */
91 kusanagi 1.7 PhysEndRunReader(void);
92     virtual void Init(PamelaRun *);
93 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
94 kusanagi 1.7 //this type of RUNEvent should be the future develop.
95     //Pass the buffer not the pointer to file
96     //virtual void RunEvent(int, long int, char[]);
97     virtual std::string GetVersionInfo(void) const;
98     };
99    
100    
101     /**********************************************
102     * Event reader algorithm for CalibCalPulse1 events.
103     **********************************************/
104     class CalibCalPulse1Reader: public TechmodelAlgorithm {
105     private:
106     /** The CalibCalPulse1 event that is created in the reader. */
107     CalibCalPulse1Event* calibCalPulse1;
108     public:
109     CalibCalPulse1Reader(void);
110     virtual void Init(PamelaRun *);
111 kusanagi 2.2 virtual void RunEvent(int, long int) throw (Exception);
112 kusanagi 1.7 //this type of RUNEvent should be the future develop.
113     //Pass the buffer not the pointer to file
114     //virtual void RunEvent(int, long int, char[]);
115     virtual std::string GetVersionInfo(void) const;
116     };
117    
118    
119     /**********************************************
120     * Event reader algorithm for CalibCalPulse2 events.
121     **********************************************/
122     class CalibCalPulse2Reader: public TechmodelAlgorithm {
123     private:
124     /** The CalibCalPulse2 event that is created in the reader. */
125     CalibCalPulse2Event* calibCalPulse2;
126     public:
127     CalibCalPulse2Reader(void);
128     virtual void Init(PamelaRun *);
129 kusanagi 2.2 virtual void RunEvent(int, long int) throw (Exception);
130 kusanagi 1.7 //this type of RUNEvent should be the future develop.
131     //Pass the buffer not the pointer to file
132     //virtual void RunEvent(int, long int, char[]);
133     virtual std::string GetVersionInfo(void) const;
134     };
135    
136    
137     /**********************************************
138     * Event reader algorithm for physics events.
139     **********************************************/
140 kusanagi 1.1 class PhysicsReader: public TechmodelAlgorithm {
141     private:
142     /** The reader for tracker physics events. */
143 kusanagi 1.5 tracker::TrackerReader* trackerReader;
144     anticounter::AnticounterReader* anticounterReader;
145     calorimeter::CalorimeterReader* calorimeterReader;
146 kusanagi 1.7 neutron::NeutronDetectorReader* neutronReader;
147 kusanagi 2.3 S4::S4Reader* s4Reader;
148 kusanagi 2.7 tof::TofReader* tofReader;
149     trigger::TriggerReader* triggerReader;
150 kusanagi 1.1 public:
151     PhysicsReader(void);
152     virtual void Init(PamelaRun *);
153 kusanagi 2.2 virtual void RunEvent(int, long int) throw (Exception);
154 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
155     };
156    
157 kusanagi 1.7
158     /**********************************************
159     * Event reader algorithm for CalibTrk1 events.
160     **********************************************/
161     class CalibTrk1Reader: public TechmodelAlgorithm {
162     private:
163     /** The CalibTrk1 event that is created in the reader. */
164     CalibTrk1Event* calibTrk1;
165     public:
166     CalibTrk1Reader(void);
167     virtual void Init(PamelaRun *);
168 kusanagi 2.2 virtual void RunEvent(int, long int) throw (Exception);
169 kusanagi 1.7 //this type of RUNEvent should be the future develop.
170     //Pass the buffer not the pointer to file
171     //virtual void RunEvent(int, long int, char[]);
172     virtual std::string GetVersionInfo(void) const;
173     };
174    
175    
176     /**********************************************
177     * Event reader algorithm for CalibTrk2 events.
178     **********************************************/
179     class CalibTrk2Reader: public TechmodelAlgorithm {
180     private:
181     /** The CalibTrk2 event that is created in the reader. */
182     CalibTrk2Event* calibTrk2;
183     public:
184     CalibTrk2Reader(void);
185     virtual void Init(PamelaRun *);
186 kusanagi 2.2 virtual void RunEvent(int, long int) throw (Exception);
187 kusanagi 1.7 virtual std::string GetVersionInfo(void) const;
188     };
189    
190    
191     /**********************************************
192     * Event reader algorithm for CalibTof events.
193     **********************************************/
194     class CalibTofReader: public TechmodelAlgorithm {
195     private:
196     /** The CalibTof event that is created in the reader. */
197     CalibTofEvent* CalibTof;
198     public:
199     CalibTofReader(void);
200     virtual void Init(PamelaRun *);
201 kusanagi 2.2 virtual void RunEvent(int, long int) throw (Exception);
202 kusanagi 1.7 virtual std::string GetVersionInfo(void) const;
203     };
204    
205    
206     /**********************************************
207     * Event reader algorithm for CalibS4 events.
208     **********************************************/
209     class CalibS4Reader: public TechmodelAlgorithm {
210     private:
211     /** The CalibCal event that is created in the reader. */
212 kusanagi 2.4 CalibS4Event* calibS4;
213 kusanagi 1.7 public:
214     CalibS4Reader(void);
215     virtual void Init(PamelaRun *);
216 kusanagi 2.8 virtual void RunEvent(int, long int) throw (WrongCRCException);
217 kusanagi 1.7 virtual std::string GetVersionInfo(void) const;
218     };
219    
220    
221     /**********************************************
222     * Event reader algorithm for CalibCalPed events.
223     **********************************************/
224     class CalibCalPedReader: public TechmodelAlgorithm {
225     private:
226     /** The CalibCalPed event that is created in the reader. */
227     CalibCalPedEvent* calibCalPed;
228     public:
229     CalibCalPedReader(void);
230     virtual void Init(PamelaRun *);
231 kusanagi 2.2 virtual void RunEvent(int, long int) throw (Exception);
232 kusanagi 1.7 virtual std::string GetVersionInfo(void) const;
233     };
234    
235    
236     /***********************************************
237 kusanagi 2.4 * Event reader algorithm for Calib1_Ac1 events.
238 kusanagi 1.7 **********************************************/
239 kusanagi 2.4 class Calib1_Ac1Reader: public TechmodelAlgorithm {
240 kusanagi 1.7 private:
241     /** The CalibAc event that is created in the reader. */
242 kusanagi 2.4 Calib1_Ac1Event* calib1_Ac1;
243 kusanagi 1.7 public:
244 kusanagi 2.4 Calib1_Ac1Reader(void);
245     virtual void Init(PamelaRun *);
246     virtual void RunEvent(int, long int) throw (Exception);
247     virtual std::string GetVersionInfo(void) const;
248     };
249    
250    
251     /***********************************************
252     * Event reader algorithm for Calib1_Ac2 events.
253     **********************************************/
254     class Calib1_Ac2Reader: public TechmodelAlgorithm {
255     private:
256     /** The Calib1_Ac2 event that is created in the reader. */
257     Calib1_Ac2Event* calib1_Ac2;
258     public:
259     Calib1_Ac2Reader(void);
260     virtual void Init(PamelaRun *);
261     virtual void RunEvent(int, long int) throw (Exception);
262     virtual std::string GetVersionInfo(void) const;
263     };
264    
265     /***********************************************
266     * Event reader algorithm for Calib2_Ac1 events.
267     **********************************************/
268     class Calib2_Ac1Reader: public TechmodelAlgorithm {
269     private:
270     /** The Calib2_Ac1 event that is created in the reader. */
271     Calib2_Ac1Event* calib2_Ac1;
272     public:
273     Calib2_Ac1Reader(void);
274     virtual void Init(PamelaRun *);
275     virtual void RunEvent(int, long int) throw (Exception);
276     virtual std::string GetVersionInfo(void) const;
277     };
278    
279     /***********************************************
280     * Event reader algorithm for Calib2_Ac2 events.
281     **********************************************/
282     class Calib2_Ac2Reader: public TechmodelAlgorithm {
283     private:
284     /** The Calib2_Ac2 event that is created in the reader. */
285     Calib2_Ac2Event* calib2_Ac2;
286     public:
287     Calib2_Ac2Reader(void);
288 kusanagi 1.7 virtual void Init(PamelaRun *);
289 kusanagi 2.2 virtual void RunEvent(int, long int) throw (Exception);
290 kusanagi 1.7 virtual std::string GetVersionInfo(void) const;
291     };
292    
293    
294     /**********************************************
295     * Event reader algorithm for RunHeader events.
296     **********************************************/
297     class RunHeaderReader: public TechmodelAlgorithm {
298     private:
299     /** The RunHeader event that is created in the reader. */
300     RunHeaderEvent* RunHeader;
301     public:
302     RunHeaderReader(void);
303     virtual void Init(PamelaRun *);
304 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
305 kusanagi 1.7 virtual std::string GetVersionInfo(void) const;
306     };
307    
308    
309     /**********************************************
310     * Event reader algorithm for RunTrailer events.
311     **********************************************/
312     class RunTrailerReader: public TechmodelAlgorithm {
313 kusanagi 1.1 private:
314 kusanagi 1.7 /** The RunTrailer event that is created in the reader. */
315     RunTrailerEvent* RunTrailer;
316 kusanagi 1.1 public:
317 kusanagi 1.7 RunTrailerReader(void);
318 kusanagi 1.1 virtual void Init(PamelaRun *);
319 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
320 kusanagi 1.7 virtual std::string GetVersionInfo(void) const;
321 kusanagi 1.1 };
322    
323    
324 kusanagi 1.7 /**********************************************
325     * Event reader algorithm for CalibHeader events.
326     **********************************************/
327     class CalibHeaderReader: public TechmodelAlgorithm {
328 kusanagi 1.1 private:
329 kusanagi 1.7 /** The CalibHeader event that is created in the reader. */
330     CalibHeaderEvent* calibHeader;
331 kusanagi 1.1 public:
332 kusanagi 1.7 CalibHeaderReader(void);
333     virtual void Init(PamelaRun *);
334 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
335 kusanagi 1.7 virtual std::string GetVersionInfo(void) const;
336 kusanagi 1.1 };
337    
338    
339 kusanagi 1.7 /**********************************************
340     * Event reader algorithm for CalibTrailer events.
341     **********************************************/
342     class CalibTrailerReader: public TechmodelAlgorithm {
343 kusanagi 1.1 private:
344 kusanagi 1.7 /** The CalibTrailer event that is created in the reader. */
345     CalibTrailerEvent* calibTrailer;
346 kusanagi 1.1 public:
347 kusanagi 1.7 CalibTrailerReader(void);
348 kusanagi 1.1 virtual void Init(PamelaRun *);
349 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
350 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
351     };
352    
353 kusanagi 1.7
354     /**********************************************
355     * Event reader algorithm for InitHeader events.
356     **********************************************/
357     class InitHeaderReader: public TechmodelAlgorithm {
358 kusanagi 1.1 private:
359 kusanagi 1.7 /** The InitHeader event that is created in the reader. */
360     InitHeaderEvent* initHeader;
361 kusanagi 1.1 public:
362 kusanagi 1.7 InitHeaderReader(void);
363 kusanagi 1.1 virtual void Init(PamelaRun *);
364 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
365 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
366     };
367    
368 kusanagi 1.7
369     /**********************************************
370     * Event reader algorithm for InitTrailer events.
371     **********************************************/
372     class InitTrailerReader: public TechmodelAlgorithm {
373 kusanagi 1.1 private:
374 kusanagi 1.7 /** The InitTrailer event that is created in the reader. */
375     InitTrailerEvent* initTrailer;
376 kusanagi 1.1 public:
377 kusanagi 1.7 InitTrailerReader(void);
378 kusanagi 1.1 virtual void Init(PamelaRun *);
379 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
380 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
381     };
382    
383 kusanagi 1.7
384     /**********************************************
385 kusanagi 6.1 * Event reader algorithm for EventTrk events.
386     **********************************************/
387     class EventTrkReader: public TechmodelAlgorithm {
388     private:
389     /** The EventTrk event that is created in the reader. */
390     EventTrkEvent* eventTrk;
391     public:
392     EventTrkReader(void);
393     virtual void Init(PamelaRun *);
394     virtual void RunEvent(int, long int) throw (Exception);
395     virtual std::string GetVersionInfo(void) const;
396     };
397    
398    
399     /**********************************************
400 kusanagi 1.7 * Event reader algorithm for Log events.
401     **********************************************/
402 kusanagi 1.1 class LogReader: public TechmodelAlgorithm {
403     private:
404     /** The Log event that is created in the reader. */
405     LogEvent* Log;
406     public:
407     LogReader(void);
408     virtual void Init(PamelaRun *);
409 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
410 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
411     };
412    
413 kusanagi 1.7
414     /***********************************************
415     * Event reader algorithm for VarDump events.
416     **********************************************/
417     class VarDumpReader: public TechmodelAlgorithm {
418 kusanagi 1.1 private:
419 kusanagi 1.7 /** The VarDump event that is created in the reader. */
420     VarDumpEvent* VarDump;
421     public:
422     VarDumpReader(void);
423     virtual void Init(PamelaRun *);
424 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
425 kusanagi 1.7 virtual std::string GetVersionInfo(void) const;
426     };
427    
428    
429     /**********************************************
430     * Event reader algorithm for ArrDump events.
431     **********************************************/
432     class ArrDumpReader: public TechmodelAlgorithm {
433     private:
434     /** The ArrDump event that is created in the reader. */
435     ArrDumpEvent* ArrDump;
436 kusanagi 1.1 public:
437 kusanagi 1.7 ArrDumpReader(void);
438 kusanagi 1.1 virtual void Init(PamelaRun *);
439 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
440 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
441     };
442    
443 kusanagi 1.7
444     /**********************************************
445     * Event reader algorithm for TabDump events.
446     **********************************************/
447     class TabDumpReader: public TechmodelAlgorithm {
448 kusanagi 1.3 private:
449 kusanagi 1.7 /** The TabDump event that is created in the reader. */
450     TabDumpEvent* TabDump;
451 kusanagi 1.3 public:
452 kusanagi 1.7 TabDumpReader(void);
453 kusanagi 1.3 virtual void Init(PamelaRun *);
454 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
455 kusanagi 1.3 virtual std::string GetVersionInfo(void) const;
456     };
457    
458    
459 kusanagi 1.7 /**********************************************
460     * Event reader algorithm for TMTC events.
461     **********************************************/
462     class TmtcReader: public TechmodelAlgorithm {
463     //Length in bytes of the subPacket (that is te TmtcRecord excluded subCRC)
464 kusanagi 4.1 static const int TMTC_SUB_LENGTH = 44;
465 kusanagi 1.7 //Length in bytes of the subPacketCRC
466     static const int TMTC_SUBCRC_LENGTH = 1;
467     //Length in bytes of the PacketCRC
468     static const int TMTC_CRC_LENGTH = 2;
469     private:
470     /** The TMTC event that is created in the reader. */
471     TmtcEvent* Tmtc;
472 kusanagi 2.5 //float convert_th(int);
473 kusanagi 1.7 public:
474     TmtcReader(void);
475     virtual void Init(PamelaRun *);
476 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
477 kusanagi 1.7 virtual string GetVersionInfo(void) const;
478     };
479    
480    
481     /**********************************************
482     * Event reader algorithm for Mcmd events.
483     **********************************************/
484     class McmdReader: public TechmodelAlgorithm {
485 kusanagi 1.1 private:
486 kusanagi 1.7 /** The Mcmd event that is created in the reader. */
487     McmdEvent* Mcmd;
488 kusanagi 1.1 public:
489 kusanagi 1.7 McmdReader(void);
490 kusanagi 1.1 virtual void Init(PamelaRun *);
491 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
492 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
493     };
494    
495 kusanagi 1.7
496     /**********************************************
497     * Event reader algorithm for ForcedFECmd events.
498     **********************************************/
499     class ForcedFECmdReader: public TechmodelAlgorithm {
500 kusanagi 1.1 private:
501 kusanagi 1.7 /** The ForcedFECmd event that is created in the reader. */
502     ForcedFECmdEvent* forcedFECmd;
503 kusanagi 1.1 public:
504 kusanagi 1.7 ForcedFECmdReader(void);
505 kusanagi 1.1 virtual void Init(PamelaRun *);
506 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
507 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
508     };
509    
510 kusanagi 1.7
511     /**********************************************
512 kusanagi 2.4 * Event reader algorithm for Ac1Init events.
513 kusanagi 1.7 **********************************************/
514 kusanagi 2.4 class Ac1InitReader: public TechmodelAlgorithm {
515 kusanagi 1.1 private:
516 kusanagi 2.4 /** The Ac1Init event that is created in the reader. */
517     Ac1InitEvent* ac1Init;
518 kusanagi 1.1 public:
519 kusanagi 2.4 Ac1InitReader(void);
520 kusanagi 1.1 virtual void Init(PamelaRun *);
521 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
522 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
523     };
524    
525 kusanagi 1.7
526     /**********************************************
527     * Event reader algorithm for CalInit events.
528     **********************************************/
529     class CalInitReader: public TechmodelAlgorithm {
530 kusanagi 1.1 private:
531 kusanagi 1.7 /** The CalInit event that is created in the reader. */
532     CalInitEvent* calInit;
533 kusanagi 1.1 public:
534 kusanagi 1.7 CalInitReader(void);
535 kusanagi 1.1 virtual void Init(PamelaRun *);
536 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
537 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
538     };
539    
540 kusanagi 1.7
541     /**********************************************
542     * Event reader algorithm for TrkInit events.
543     **********************************************/
544     class TrkInitReader: public TechmodelAlgorithm {
545 kusanagi 1.1 private:
546 kusanagi 1.7 /** The TrkInit event that is created in the reader. */
547     TrkInitEvent* trkInit;
548 kusanagi 1.1 public:
549 kusanagi 1.7 TrkInitReader(void);
550 kusanagi 1.1 virtual void Init(PamelaRun *);
551 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
552 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
553     };
554    
555    
556 kusanagi 1.7 /**********************************************
557     * Event reader algorithm for TofInit events.
558     **********************************************/
559     class TofInitReader: public TechmodelAlgorithm {
560 kusanagi 1.1 private:
561 kusanagi 1.7 /** The TofInit event that is created in the reader. */
562     TofInitEvent* tofInit;
563 kusanagi 1.1 public:
564 kusanagi 1.7 TofInitReader(void);
565 kusanagi 1.1 virtual void Init(PamelaRun *);
566 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
567 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
568     };
569    
570 kusanagi 1.7
571     /**********************************************
572     * Event reader algorithm for TrgInit events.
573     **********************************************/
574     class TrgInitReader: public TechmodelAlgorithm {
575 kusanagi 1.1 private:
576 kusanagi 1.7 /** The TrgInit event that is created in the reader. */
577     TrgInitEvent* trgInit;
578 kusanagi 1.1 public:
579 kusanagi 1.7 TrgInitReader(void);
580 kusanagi 1.1 virtual void Init(PamelaRun *);
581 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
582 kusanagi 1.1 virtual std::string GetVersionInfo(void) const;
583     };
584    
585 kusanagi 1.8 /**********************************************
586 kusanagi 2.1 * Event reader algorithm for NdInit events.
587     **********************************************/
588     class NdInitReader: public TechmodelAlgorithm {
589     private:
590     /** The NdInit event that is created in the reader. */
591     NdInitEvent* ndInit;
592     public:
593     NdInitReader(void);
594     virtual void Init(PamelaRun *);
595 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
596 kusanagi 2.1 virtual std::string GetVersionInfo(void) const;
597     };
598    
599 kusanagi 2.3 /**********************************************
600     * Event reader algorithm for S4Init events.
601     **********************************************/
602     class S4InitReader: public TechmodelAlgorithm {
603     private:
604     /** The S4Init event that is created in the reader. */
605     S4InitEvent* s4Init;
606     public:
607     S4InitReader(void);
608     virtual void Init(PamelaRun *);
609     virtual void RunEvent(int, long int) throw (WrongCRCException);
610     virtual std::string GetVersionInfo(void) const;
611     };
612    
613 kusanagi 2.1
614     /**********************************************
615 kusanagi 2.4 * Event reader algorithm for Ac2Init events.
616     **********************************************/
617     class Ac2InitReader: public TechmodelAlgorithm {
618     private:
619     /** The Ac2Init event that is created in the reader. */
620     Ac2InitEvent* ac2Init;
621     public:
622     Ac2InitReader(void);
623     virtual void Init(PamelaRun *);
624     virtual void RunEvent(int, long int) throw (WrongCRCException);
625     virtual std::string GetVersionInfo(void) const;
626     };
627    
628    
629     /**********************************************
630 kusanagi 1.8 * Event reader algorithm for CalAlarm events.
631     **********************************************/
632     class CalAlarmReader: public TechmodelAlgorithm {
633     private:
634     /** The CalAlarm event that is created in the reader. */
635     CalAlarmEvent* calAlarm;
636     public:
637     CalAlarmReader(void);
638     virtual void Init(PamelaRun *);
639 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
640 kusanagi 1.8 virtual std::string GetVersionInfo(void) const;
641     };
642    
643     /**********************************************
644     * Event reader algorithm for AcAlarm events.
645     **********************************************/
646     class AcAlarmReader: public TechmodelAlgorithm {
647     private:
648     /** The AcAlarm event that is created in the reader. */
649     AcAlarmEvent* acAlarm;
650     public:
651     AcAlarmReader(void);
652     virtual void Init(PamelaRun *);
653 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
654 kusanagi 1.8 virtual std::string GetVersionInfo(void) const;
655     };
656    
657     /**********************************************
658     * Event reader algorithm for TrkAlarm events.
659     **********************************************/
660     class TrkAlarmReader: public TechmodelAlgorithm {
661     private:
662     /** The TrkAlarm event that is created in the reader. */
663     TrkAlarmEvent* trkAlarm;
664     public:
665     TrkAlarmReader(void);
666     virtual void Init(PamelaRun *);
667 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
668 kusanagi 1.8 virtual std::string GetVersionInfo(void) const;
669     };
670    
671     /**********************************************
672     * Event reader algorithm for TrgAlarm events.
673     **********************************************/
674     class TrgAlarmReader: public TechmodelAlgorithm {
675     private:
676     /** The TrgAlarm event that is created in the reader. */
677     TrgAlarmEvent* trgAlarm;
678     public:
679     TrgAlarmReader(void);
680     virtual void Init(PamelaRun *);
681 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
682 kusanagi 1.8 virtual std::string GetVersionInfo(void) const;
683     };
684    
685     /**********************************************
686     * Event reader algorithm for TofAlarm events.
687     **********************************************/
688     class TofAlarmReader: public TechmodelAlgorithm {
689     private:
690     /** The TofAlarm event that is created in the reader. */
691     TofAlarmEvent* tofAlarm;
692     public:
693     TofAlarmReader(void);
694     virtual void Init(PamelaRun *);
695 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
696 kusanagi 1.8 virtual std::string GetVersionInfo(void) const;
697     };
698 kusanagi 1.1
699 kusanagi 1.7 /**********************************************
700 kusanagi 2.3 * Event reader algorithm for S4Alarm events.
701     **********************************************/
702     class S4AlarmReader: public TechmodelAlgorithm {
703     private:
704     /** The S4Alarm event that is created in the reader. */
705     S4AlarmEvent* s4Alarm;
706     public:
707     S4AlarmReader(void);
708     virtual void Init(PamelaRun *);
709     virtual void RunEvent(int, long int) throw (WrongCRCException);
710     virtual std::string GetVersionInfo(void) const;
711     };
712    
713     /**********************************************
714 kusanagi 2.9 * Event reader algorithm for TsbT events.
715     **********************************************/
716     class TsbTReader: public TechmodelAlgorithm {
717     private:
718     /** The TsbT event that is created in the reader. */
719     TsbTEvent* TsbT;
720     public:
721     TsbTReader(void);
722     virtual void Init(PamelaRun *);
723     virtual void RunEvent(int, long int) throw (WrongCRCException);
724     virtual std::string GetVersionInfo(void) const;
725     };
726    
727     /**********************************************
728     * Event reader algorithm for TsbB events.
729     **********************************************/
730     class TsbBReader: public TechmodelAlgorithm {
731     private:
732     /** The TsbB event that is created in the reader. */
733     TsbBEvent* TsbB;
734     public:
735     TsbBReader(void);
736     virtual void Init(PamelaRun *);
737     virtual void RunEvent(int, long int) throw (WrongCRCException);
738     virtual std::string GetVersionInfo(void) const;
739     };
740    
741     /**********************************************
742 kusanagi 1.7 * Event reader algorithm for PSCU events.
743     **********************************************/
744     class PscuReader: public TechmodelAlgorithm {
745 kusanagi 1.4 private:
746 kusanagi 1.7 /** The PSCU event that is created in the reader. */
747     PscuEvent* Pscu;
748 kusanagi 1.4 public:
749 kusanagi 1.7 PscuReader(void);
750 kusanagi 1.4 virtual void Init(PamelaRun *);
751 kusanagi 2.2 virtual void RunEvent(int, long int) throw (WrongCRCException);
752 kusanagi 1.4 virtual std::string GetVersionInfo(void) const;
753     };
754 kusanagi 1.7
755    
756 kusanagi 1.1 }
757     }
758    
759     #endif /* READER_ALGORITHM_H */
760    
761    
762 kusanagi 2.3
763 kusanagi 2.4

  ViewVC Help
Powered by ViewVC 1.1.23