/[PAMELA software]/yodaUtility/YMcmd.h
ViewVC logotype

Annotation of /yodaUtility/YMcmd.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.2 - (hide annotations) (download)
Sat Jun 10 05:32:47 2006 UTC (18 years, 5 months ago) by kusanagi
Branch: MAIN
CVS Tags: yodaUtility2_0/00, yodaUtility2_2/00, yodaUtility2_1/00, HEAD
Changes since 1.1: +45 -0 lines
File MIME type: text/plain
Add inclination and orbital parameter unpacking.

1 kusanagi 1.1 #include <TObject.h>
2     #include <TFile.h>
3     #include <TObjString.h>
4     #include <TString.h>
5     #include <TTree.h>
6     #include <TArrayC.h>
7    
8    
9     using namespace std;
10     class DataItem : public TObject{
11     public:
12     string fileName;
13     DataItem() : TObject(){}
14     ~DataItem() {}
15    
16     virtual const char* toXML(char* tab = "") {}
17     virtual void fill(TArrayC*) {}
18     };
19    
20     class McmdItem : public DataItem{
21     public:
22     string fileName;
23     McmdItem() : DataItem(){}
24     ~McmdItem() {}
25    
26     virtual const char* toXML(char* tab = "") {}
27     virtual void fill(TArrayC*) {}
28     };
29    
30     class ElseItem : public McmdItem{
31     private:
32    
33     public:
34     ElseItem::ElseItem() : McmdItem(){}
35     ElseItem::~ElseItem() {}
36    
37     const char* ElseItem::toXML(char*);
38     void ElseItem::fill(TArrayC*) { }
39     };
40    
41     class DownLinkItem : public McmdItem{
42     public:
43     unsigned int rawModeSectors; // From 4 to 2048 sector to Downlink in RAW mode
44     unsigned short rawMode; // 0 = NormalMode 1 = RawMode
45     unsigned short tmSel; // 0 = TM I/F A other = TM I/F B
46     unsigned short fileId; // 0 = File 1 1 = File 2
47     unsigned int orbitNumber; // Number of the orbit
48     unsigned short spareAdapt; // Number of the orbit
49    
50     DownLinkItem() : McmdItem(){}
51     ~DownLinkItem() {}
52    
53     void fill(TArrayC* data){ }
54     const char* toXML(char*);
55     };
56    
57    
58     class TimeSyncItem : public McmdItem{
59     public:
60     unsigned int newTime;
61     TimeSyncItem() : McmdItem(){}
62     ~TimeSyncItem() {}
63    
64     void fill(TArrayC* data);
65     const char* toXML(char*);
66     };
67    
68 kusanagi 1.2 class OrbitalInfoItem : public McmdItem{
69     public:
70     double time;
71    
72     /* Position in Km */
73     /*pos[0] = pos_X*/
74     /*pos[1] = pos_Y*/
75     /*pos[2] = pos_Z*/
76     double pos[3];
77    
78     /* Velocity in Km/s */
79     /*vel[0] = vel_X*/
80     /*vel[1] = vel_Y*/
81     /*vel[2] = vel_Z*/
82     double vel[3];
83    
84     OrbitalInfoItem() : McmdItem(){}
85     ~OrbitalInfoItem() {}
86    
87     void fill(TArrayC* data);
88     const char* toXML(char*);
89     };
90    
91     class InclinationInfoItem : public McmdItem{
92     public:
93     /* Quaternions Lx_y
94     / The data are organized in 5 groups according to the format
95     / time - L0 - L1 - L2 - L3
96     / time[0] - quat[0][0] - quat[0][1] - quat[0][2] - quat[0][3]
97     / time[1] - quat[1][0] - quat[1][1] - quat[1][2] - quat[1][3]
98     / time[2] - quat[2][0] - quat[2][1] - quat[2][2] - quat[2][3]
99     / time[3] - quat[3][0] - quat[3][1] - quat[3][2] - quat[3][3]
100     / time[4] - quat[4][0] - quat[4][1] - quat[4][2] - quat[4][3]
101     / time[5] - quat[5][0] - quat[5][1] - quat[5][2] - quat[5][3]
102     */
103     double time[6];
104     double quat[6][4];
105    
106     InclinationInfoItem() : McmdItem(){}
107     ~InclinationInfoItem() {}
108    
109     void fill(TArrayC* data);
110     const char* toXML(char*);
111     };
112    
113 kusanagi 1.1 //For now i dont store the Parameters sequence
114     class SelectOpModeItem : public McmdItem{
115     public:
116     unsigned short mode;
117     unsigned short paramNumber;
118     SelectOpModeItem() : McmdItem(){}
119     ~SelectOpModeItem() {}
120    
121     void fill(TArrayC* data);
122     const char* toXML(char*);
123     };
124    
125     class BiteItem : public McmdItem{
126     public:
127     unsigned int fillerWord;
128     BiteItem::BiteItem() : McmdItem(){}
129     BiteItem::~BiteItem();
130    
131     void fill(TArrayC* data);
132     const char* toXML(char* tab);
133     };
134    
135    
136     class McmdScan {
137     private:
138     //In compiled version will use the std::map
139     McmdItem *mcmdItem;
140    
141     public:
142     McmdScan::McmdScan() {}
143     const char* McmdScan::extract(TArrayC *data, int id, char* tabs);
144     };

  ViewVC Help
Powered by ViewVC 1.1.23