source: trunk/MagicSoft/Mars/mreport/MReport.h@ 2522

Last change on this file since 2522 was 2520, checked in by tbretz, 21 years ago
*** empty log message ***
File size: 989 bytes
Line 
1#ifndef MARS_MReport
2#define MARS_MReport
3
4#ifndef MARS_MParContainer
5#include "MParContainer.h"
6#endif
7
8class MTime;
9
10class MReport : public MParContainer
11{
12private:
13 const TString fIdentifier; //!
14
15 Byte_t fState;
16 MTime *fTime;
17
18 ULong_t Hash() const { return fIdentifier.Hash(); }
19 Bool_t InterpreteHeader(TString &str);
20
21public:
22 MReport(const char *id) : fIdentifier(id), fState(0xff), fTime(0) { }
23
24 virtual Bool_t InterpreteBody(TString &str);
25 Bool_t Interprete(TString &str);
26 Bool_t CheckIdentifier(TString &str) const
27 {
28 if (!str.BeginsWith(fIdentifier))
29 return kFALSE;
30
31 str.Remove(0, fIdentifier.Length());
32 str = str.Strip(TString::kBoth);
33
34 return kTRUE;
35 }
36
37 const TString &GetIdentifier() const { return fIdentifier; }
38
39 void SetTime(MTime *t) { fTime = t; }
40
41 static Bool_t ReadAngle(TString &str, Double_t &ret);
42
43 ClassDef(MReport, 0) // Base class for control reports
44};
45
46#endif
Note: See TracBrowser for help on using the repository browser.