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

Contents of /yoda/techmodel/EventReader.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3.0 - (show annotations) (download)
Fri Mar 4 15:54:11 2005 UTC (19 years, 9 months ago) by kusanagi
Branch: MAIN
Changes since 2.3: +2 -2 lines
File MIME type: text/plain
Error proof version.
Implemented all detectors packets plus all the main telemetries packets.
Missing all the Init and Alarm packets.
Disabled CRC control on VarDump, ArrDump, TabDump for CPU debugging needs
(the data formats seems correct even if CRC get wrong)

1 /** @file
2 * $Author: kusanagi $
3 * $Date: 2005/01/11 14:59:31 $
4 * $Revision: 2.3 $
5 *
6 * Header file for the algorithms used to read the techmodel data file.
7 */
8
9 #include "TechmodelPamelaRun.h"
10 #include "TechmodelAlgorithm.h"
11 #include "Exception.h"
12
13 namespace pamela {
14 namespace techmodel {
15 /**
16 * Main event reader algorithm. It handles all other specific
17 * reader algorithms.
18 */
19 class EventReader: public TechmodelAlgorithm {
20 private:
21 /**
22 * A map with an algorithm to read the techmodel file with the packet
23 * type as key.
24 */
25 typedef std::map<const PacketType *, TechmodelAlgorithm *> AlgorithmMap;
26 /**
27 * The map that links every packet type to an algorithm that reads it.
28 */
29 AlgorithmMap TechmodelAlgorithmMap; //!
30 /**
31 * The event header.
32 */
33 EventHeader* Header; //!
34 /**
35 * The Run that is processed.
36 */
37 TechmodelPamelaRun *Run; //!
38 void UnpackPscuHeader(void) throw (WrongCRCHeaderException, LengthException);
39 void UnpackPscuTrailer(void) throw (std::exception);
40
41 /**
42 maxPackets define the maximum number of packets
43 the user wants to get from the raw file.
44 By default is initialized to -1 (no limit)
45 */
46 static unsigned int maxPackets;
47
48 /**
49 prevPckCounter and prevPckOBT are used to check the
50 integrity of the raw file stream
51 */
52 static unsigned int prevPckCounter;
53 static unsigned int prevPckOBT;
54 std::stringstream oss;
55 public:
56 //EventReader(void);
57 EventReader(int);
58 virtual void Init(PamelaRun *);
59 virtual void RunEvent(int);
60 virtual std::string GetVersionInfo(void) const;
61 virtual bool FindStart(void) throw (std::exception);
62 ClassDef(EventReader, 1)
63 };
64 }
65 }

  ViewVC Help
Powered by ViewVC 1.1.23