source: trunk/MagicSoft/Mars/mbase/MParList.h@ 959

Last change on this file since 959 was 959, checked in by tbretz, 23 years ago
*** empty log message ***
File size: 2.1 KB
Line 
1#ifndef MPARLIST_H
2#define MPARLIST_H
3
4/////////////////////////////////////////////////////////////////////////////
5// //
6// MParList //
7// //
8// List of parameter containers (MParContainer) //
9// //
10/////////////////////////////////////////////////////////////////////////////
11
12#ifndef MAGIC_H
13#include "MAGIC.h"
14#endif
15
16#ifndef ROOT_TOrdCollection
17#include "TOrdCollection.h"
18#endif
19#ifndef MPARCONTAINER_H
20#include "MParContainer.h"
21#endif
22
23class MLog;
24
25class MParList : public MParContainer
26{
27private:
28 TOrdCollection fContainer; // Collection of Parameter and Data Containers
29 TOrdCollection fAutodelete; // All what this list contains is deleted in the destructor
30
31 static TString GetClassName(const char *classname);
32 static TString GetObjectName(const char *classname, const char *objname);
33
34 enum { kIsOwner = BIT(14) };
35
36public:
37 MParList(const char *name=NULL, const char *title=NULL);
38 MParList(MParList &ts);
39
40 ~MParList();
41
42 Bool_t AddToList(MParContainer *obj, MParContainer *where = NULL);
43 void AddToList(TObjArray *list);
44
45 void SetLogStream(MLog *log);
46
47 TObject *FindObject(const char *name) const;
48 TObject *FindObject(TObject *obj) const;
49 MParContainer *FindCreateObj(const char *classname, const char *objname=NULL);
50
51 TObjArray FindObjectList(const char *name, const UInt_t from, const UInt_t to=0) const;
52 TObjArray FindCreateObjList(const char *cname, const UInt_t from, const UInt_t to=0, const char *oname=NULL);
53
54 static TObjArray CreateObjList(const char *cname, const UInt_t from, const UInt_t to=0, const char *oname=NULL);
55
56 void Reset();
57 void SetReadyToSave(Bool_t flag=kTRUE);
58
59 void SetOwner(Bool_t enable=kTRUE);
60
61 void Print(Option_t *t = NULL);
62
63 ClassDef(MParList, 0) // list of parameter containers (MParContainer)
64};
65
66#endif
Note: See TracBrowser for help on using the repository browser.