source: trunk/MagicSoft/Mars/mreport/MReportCamera.h@ 2541

Last change on this file since 2541 was 2535, checked in by tbretz, 22 years ago
*** empty log message ***
File size: 6.1 KB
Line 
1#ifndef MARS_MReportCamera
2#define MARS_MReportCamera
3
4#ifndef MARS_MReport
5#include "MReport.h"
6#endif
7/*
8class MCameraCooling : public MParContainer
9{
10 friend class MReportCamera;
11private:
12 Bool_t fStatus; // Monitored status: , Cam.COOLING_state
13
14 Bool_t fStatusPressureHi; // 0=ok, 1=Obstruct
15 Bool_t fStatusPressureLo; // 0=ok, 1=leakage
16 Bool_t fStatusPumb; // 0=off, 1=on
17 Bool_t fStatusRefrigrerator; // 0=off, 1=on
18 Bool_t fStatusValve; // 0=recirculate, 1=new
19 Bool_t fStatusResistor; // 0=off, 1=on
20 Bool_t fStatusFans; // 0=off, 1=on
21
22 Float_t fTempCenter; // [deg C] Temperature at the camera center
23 Float_t fTempWall; // [deg C] Temperature at the camera wall
24 Float_t fTempOptLink; // [deg C] Temperature at the optical link
25 Float_t fTempWater; // [deg C] Temperature of the water
26
27 Byte_t fHumAll; // [%] Relative humidity over all
28 Byte_t fHumCenter; // [%] Relative humidity camera center
29
30public:
31 ClassDef(MCameraCooling, 0)
32};
33class MCameraLid : public MParContainer
34{
35 friend class MReportCamera;
36private:
37 Bool_t fLimitTop; // 0=not active, 1= active
38 Bool_t fLimitBottom; // 0=not active, 1= active
39 Bool_t fSaftyLimitTop; // 0=not active, 1= active
40 Bool_t fSaftyLimitBottom; // 0=not active, 1= active
41 Byte_t fStatusLid; // 0=positioning, 1=open, 2=closed
42 Byte_t fStatusMotor; // 0=stopped, 1=opening, 2=closing
43public:
44 ClassDef(MCameraLid, 0)
45};
46class MCameraLids : public MParContainer
47{
48 friend class MReportCamera;
49private:
50 MCameraLid *fLidA;
51 MCameraLid *fLidB;
52
53 Bool_t fStatus; // [?] Monitored status, Cam.LID_state
54public:
55 ClassDef(MCameraLids, 0)
56};
57
58class MCameraPowerSupply : public MParContainer
59{
60 friend class MReportCamera;
61private:
62 Float_t fVoltagePos5V; // [V] voltage_pos5
63 Float_t fVoltagePos12V; // [V] voltage_pos12
64 Float_t fVoltageNeg12V; // [V] voltage_neg12
65 Float_t fCurrentPos5V; // [A] current_pos5
66 Float_t fCurrentPos12V; // [A] current_pos12
67 Float_t fCurrentNeg12V; // [A] current_neg12
68public:
69 ClassDef(MCameraPowerSupply, 0)
70};
71
72class MCameraLV : public MParContainer
73{
74 friend class MReportCamera;
75private:
76 Bool_t fStatus; // Monitored status: , Cam.LV_state
77 Bool_t fRequestPowerSupply; // Requested status: o=off, 1=on, blv_ps_status
78 Bool_t fRequestTemp; // Requested status: o=off, 1=on, blv_temp
79 Bool_t fRequestHumidity; // Requested status: o=off, 1=on, blv_RelativeHumidity
80
81 MCameraPowerSupply fPowerSupplyA; // power supply A
82 MCameraPowerSupply fPowerSupplyB; // power supply B
83
84 Float_t fVoltageOptLinkPos12V; // [V] voltage_opt_link_pos12
85 Float_t fVoltageOptLinkSparePos12V; // [V] voltage_opt_link_spare_pos12
86
87 Float_t fCurrentOptLinkPos12V; // [A] current_opt_link_pos12
88 Float_t fCurrentOptLinkSparePos12V; // [A] current_opt_link_spare_pos12
89
90public:
91 ClassDef(MCameraLV, 0)
92};
93
94class MCameraAUX : public MParContainer
95{
96 friend class MReportCamera;
97private:
98 Bool_t fRequestCaosLEDs; // Requested status: o=off, 1=on, bAux_CaOsLEDs_Off/On
99 Bool_t fRequestFansFADC; // Requested status: o=off, 1=on, bAux_FADC_FANs_Off/On
100 Bool_t fStatusCaosLEDs; // Monitored status: o=off, 1=on, Cam.CaOs.LED_state
101 Bool_t fStatusFansFADC; // Monitored status: o=off, 1=on, Cam.FADC.Fans_state
102public:
103 ClassDef(MCameraAUX, 0)
104};
105
106class MCameraCalibration : public MParContainer
107{
108 friend class MReportCamera;
109private:
110 Bool_t fStatus; // Monitored status: o=off, 1=on, CamCalib_state
111 Bool_t fStatusCANbus; // Monitored status: o=off, 1=on, Cal.CanBus_state
112 Bool_t fStatusIO; // Monitored status: o=off, 1=on, Cal.IO_state
113 Bool_t fStatusLoVoltage; // Monitored status: o=off, 1=on, Cal.LV_state
114
115 Bool_t fRequestHiVoltage; // Requested status: o=off, 1=on, bcalib_HV_Off/On
116 Bool_t fRequestLoVoltage; // Requested status: o=off, 1=on, bcalib_LV_Off/On
117 Bool_t fRequestContLight; // Requested status: o=off, 1=on, bcalib_ContinuousLight_Off/On
118 Bool_t fRequestPinDiode; // Requested status: o=off, 1=on, bcalib_PinDiode_Off/On
119
120public:
121 ClassDef(MCameraCalibration, 0)
122};
123#include <TArrayS.h>
124class MCameraHV : public MParContainer
125{
126 friend class MReportCamera;
127private:
128 Bool_t fStatus; // Monitored status of the High Voltage, Cam.HV.PS_state
129 Bool_t fStatusPowerSupply; // Monitored status of the HV Power supply, Cam.HV_state
130
131 Short_t fVoltageA; // [V] Measured voltage of power supply A, hvps1
132 Short_t fVoltageB; // [V] Measured voltage of power supply B, hvps2
133
134 Short_t fCurrentA; // [A] Measured current of power supply A, curr1
135 Short_t fCurrentB; // [A] Measured current of power supply B, curr2
136
137 TArrayS fHV; // [V] Measured high Voltages for all PMTs
138public:
139 MCameraHV() : fHV(577) { }
140 ClassDef(MCameraHV, 0)
141};
142*/
143
144class MCameraCooling;
145class MCameraLids;
146class MCameraHV;
147class MCameraLV;
148class MCameraCalibration;
149
150class MReportCamera : public MReport
151{
152private:
153 Bool_t fStatus; // [?] Monitored status of the sentinel, Sentinel_state
154 Bool_t fStatusDC; // [?] Monitored status of the DC currents, Cam.DC_state
155
156 MCameraCooling *fCooling;
157 MCameraLids *fLids;
158 MCameraHV *fHV;
159 MCameraLV *fLV;
160 MCameraCalibration *fCalibration;
161
162 Bool_t SetupReading(MParList &plist);
163 Bool_t CheckTag(TString &str, const char *tag) const;
164
165 Bool_t InterpreteDC(TString &str);
166 Bool_t InterpreteHV(TString &str);
167 Bool_t InterpreteCOOL(TString &str);
168 Bool_t InterpreteLID(TString &str);
169 Bool_t InterpreteHVPS(TString &str);
170 Bool_t InterpreteLV(TString &str);
171 Bool_t InterpreteAUX(TString &str);
172 Bool_t InterpreteCAL(TString &str);
173
174public:
175 MReportCamera();
176
177 Bool_t InterpreteBody(TString &str);
178
179 ClassDef(MReportCamera, 1) // Base class for control reports
180};
181
182#endif
Note: See TracBrowser for help on using the repository browser.