MonitorHk.h
1 
9 #ifndef MONITORHK_H
10 #define MONITORHK_H
11 
12 //Includes
13 #include <TObject.h>
14 #include "AnitaConventions.h"
15 #include "simpleStructs.h"
16 
17 
18 
19 #ifndef NUM_HK_TELEM_QUEUES
20 #define NUM_HK_TELEM_QUEUES 21
21 #endif
22 #ifndef NUM_TELEM_QUEUES
23 #define NUM_TELEM_QUEUES NUM_HK_TELEM_QUEUES+NUM_PRIORITIES
24 #endif
25 #ifndef NUM_DISK_SPACES
26 #define NUM_DISK_SPACES 8
27 #endif
28 
30 
34 class MonitorHk: public TObject
35 {
36  public:
37  MonitorHk();
38  ~MonitorHk();
39 
40  MonitorHk(Int_t trun, Int_t trealTime, MonitorStruct_t *monPtr);
41 
42  Int_t run;
43  UInt_t realTime;
44  UInt_t payloadTime;
45 
47 
58  UShort_t diskSpace[8];
59  Char_t ntuLabel[12];
60  Char_t otherLabel[12];
61  Char_t usbLabel[12];
62  UShort_t eventLinks[NUM_PRIORITIES];
63 
71  UShort_t hkLinks[NUM_HK_TELEM_QUEUES]; // Links in the 21 hk telemetry queues
73 
77  UInt_t utime[NUM_PROCESSES]; // utime of each process
79 
83  UInt_t stime[NUM_PROCESSES]; // stime of each process
85 
89  UInt_t vsize[NUM_PROCESSES];
90 
91  const char *getDriveName(int driveInd);
92  int getDriveCapacity(int driveInd);
93  int getDiskSpaceAvailable(int driveInd);
94  float getDiskSpacePercentage(int driveInd);
95  const char *getHkQueueName(int hkInd);
96  const char *getProcName(int procInd);
97 
98  ClassDef(MonitorHk,VER_MONITOR);
99 };
100 
101 
102 #endif //MONITORHK_H
Char_t otherLabel[12]
Label of the currently mounted other drive.
Definition: MonitorHk.h:60
const char * getProcName(int procInd)
Returns process name.
Definition: MonitorHk.cxx:91
int getDriveCapacity(int driveInd)
Returns drive capacity by index.
Definition: MonitorHk.cxx:55
const char * getHkQueueName(int hkInd)
Returns Hk Queue name.
Definition: MonitorHk.cxx:79
UInt_t vsize[20]
The memory used by the flight software processes.
Definition: MonitorHk.h:89
UInt_t utime[20]
The user space CPU time used by the flight software processes.
Definition: MonitorHk.h:77
float getDiskSpacePercentage(int driveInd)
Returns disk percentage by index.
Definition: MonitorHk.cxx:64
Char_t ntuLabel[12]
Label of the currently mounted ntu drive.
Definition: MonitorHk.h:59
int getDiskSpaceAvailable(int driveInd)
Returns disk space available by index.
Definition: MonitorHk.cxx:70
Monitor Block – Telemetered.
const char * getDriveName(int driveInd)
Returns drive name by index.
Definition: MonitorHk.cxx:47
UShort_t hkLinks[21]
The number of links in the housekeeping queues.
Definition: MonitorHk.h:71
~MonitorHk()
Destructor.
Definition: MonitorHk.cxx:22
MonitorHk()
Default constructor.
Definition: MonitorHk.cxx:17
Int_t run
Run number assigned offline.
Definition: MonitorHk.h:42
UInt_t realTime
Time in unixTime.
Definition: MonitorHk.h:43
UInt_t payloadTime
Time in unixTime.
Definition: MonitorHk.h:44
MonitorHk – The CPU Monitor data.
Definition: MonitorHk.h:34
UShort_t diskSpace[8]
The free space left on the disks in units of 10 Megabytes.
Definition: MonitorHk.h:58
UShort_t eventLinks[10]
Definition: MonitorHk.h:62
UInt_t stime[20]
The system space CPU time used by the flight software processes.
Definition: MonitorHk.h:83
Char_t usbLabel[12]
Defunct.
Definition: MonitorHk.h:61