source: trunk/MagicSoft/Mars/mdata/MDataList.h@ 2737

Last change on this file since 2737 was 2557, checked in by tbretz, 21 years ago
*** empty log message ***
File size: 1.5 KB
Line 
1#ifndef MARS_MDataList
2#define MARS_MDataList
3
4/////////////////////////////////////////////////////////////////////////////
5// //
6// MDataList //
7// //
8/////////////////////////////////////////////////////////////////////////////
9
10#ifndef ROOT_TOrdCollection
11#include <TOrdCollection.h>
12#endif
13
14#ifndef MARS_MData
15#include "MData.h"
16#endif
17
18class MParList;
19
20class MDataList : public MData
21{
22private:
23 TOrdCollection fMembers; // Container for the filters
24
25 typedef enum { kENone, kEPlus, kEMinus, kEMult, kEDiv, kEModul } SignType_t;
26 SignType_t fSign;
27
28 enum { kIsOwner = BIT(14) };
29
30public:
31 MDataList();
32 MDataList(char type);
33 MDataList(MDataList &ts);
34 ~MDataList()
35 {
36 if (TestBit(kIsOwner))
37 fMembers.SetOwner();
38 }
39
40 Bool_t AddToList(MData *member);
41 void SetOwner(Bool_t enable=kTRUE) { enable ? SetBit(kIsOwner) : ResetBit(kIsOwner); }
42
43 Bool_t IsValid() const { return fMembers.GetSize() ? kTRUE : kFALSE; }
44 Bool_t IsReadyToSave() const;
45
46 Double_t GetValue() const;
47 Bool_t PreProcess(const MParList *plist);
48
49// void Print(Option_t *opt = "") const;
50 TString GetRule() const;
51 TString GetDataMember() const;
52
53 ClassDef(MDataList, 1) // A concatenation of MData objects by one operator
54};
55
56#endif
Note: See TracBrowser for help on using the repository browser.