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

Annotation of /yoda/techmodel/ReaderAlgorithms.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6.4 - (hide annotations) (download)
Tue May 30 19:10:03 2006 UTC (18 years, 6 months ago) by kusanagi
Branch: MAIN
CVS Tags: YODA6_3/19, YODA6_3/18, YODA6_3/13, YODA6_3/12, YODA6_3/11, YODA6_3/10, YODA6_3/17, YODA6_3/16, YODA6_3/15, YODA6_3/14, YODA6_3/06, YODA6_3/04, YODA6_3/05, YODA6_3/20, YODA6_3/07, YODA6_3/00, YODA6_3/01, YODA6_3/02, YODA6_3/03, YODA6_3/08, YODA6_3/09, HEAD
Changes since 6.3: +2 -2 lines
File MIME type: text/plain
Major update.
All the packet officially produced by PAMELA are implemented and unpacked.
The RegistryEvent Packet has been removed and put into another library.
New version, releasd by D.Campana, of tofunpack.

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

  ViewVC Help
Powered by ViewVC 1.1.23