1 |
/** @file |
2 |
* $Author: messineo $ |
3 |
* $Date: 2008-03-03 15:37:16 $ |
4 |
* $Revision: 1.10 $ |
5 |
* |
6 |
* Header file for the algorithms used to read the techmodel data file. |
7 |
*/ |
8 |
|
9 |
#include "event/PamelaRun.h" |
10 |
#include "TechmodelAlgorithm.h" |
11 |
|
12 |
namespace pamela { |
13 |
namespace techmodel { |
14 |
|
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 |
/** |
32 |
* The Run that is processed. |
33 |
*/ |
34 |
PamelaRun *Run; |
35 |
|
36 |
public: |
37 |
|
38 |
//The event header |
39 |
EventHeader* Header; |
40 |
void PKT_UnpackPscuHeader(char* buff); |
41 |
|
42 |
//Distructor |
43 |
virtual ~EventReader(void); |
44 |
EventReader(void); |
45 |
|
46 |
virtual void Init(PamelaRun *); |
47 |
|
48 |
// virtual void PKT_RunEvent(char* headerPkt, char *pamPkt, long int length, const PacketType* type); |
49 |
virtual int PKT_RunEvent(char* headerPkt, char *pamPkt, long int length, const PacketType* type); |
50 |
|
51 |
virtual std::string GetVersionInfo(void) const; |
52 |
|
53 |
ClassDef(EventReader, 1) |
54 |
}; |
55 |
} |
56 |
} |