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

Annotation of /yoda/techmodel/ReaderAlgorithms.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2.4 - (hide annotations) (download)
Thu Dec 16 17:32:57 2004 UTC (19 years, 11 months ago) by kusanagi
Branch: MAIN
Changes since 2.3: +77 -14 lines
File MIME type: text/plain
*** empty log message ***

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

  ViewVC Help
Powered by ViewVC 1.1.23