]>
Commit | Line | Data |
---|---|---|
d08133e6 | 1 | #ifndef ALIXMLCOLLECTION_H |
2 | #define ALIXMLCOLLECTION_H | |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | ||
7 | /* $Id$ */ | |
8 | ||
9 | //------------------------------------------------------------------------- | |
10 | // Class AliXMLCollection | |
11 | // This is the class that creates XML collections after querying the tags | |
12 | // | |
13 | // Origin: Panos Christakoglou, UOA-CERN, Panos.Christakoglou@cern.ch | |
14 | //------------------------------------------------------------------------- | |
15 | ||
16 | #include <TObject.h> | |
17 | #include "TGridCollection.h" | |
18 | #include <Riostream.h> | |
19 | #include <TString.h> | |
20 | ||
21 | class TMap; | |
22 | class TIter; | |
23 | class TEntryList; | |
24 | ||
25 | //___________________________________________________________________________ | |
26 | class AliXMLCollection : public TGridCollection { | |
27 | ||
28 | public: | |
29 | AliXMLCollection(); | |
30 | AliXMLCollection(const char *localCollectionFile); | |
31 | AliXMLCollection(const AliXMLCollection& collection); | |
32 | ||
33 | virtual ~AliXMLCollection(); | |
34 | ||
35 | //____________________________________________________// | |
36 | Bool_t WriteHeader(); | |
37 | Bool_t WriteBody(Int_t counter, const char* guid, const char *lfn, const char *turl, TEntryList *fEntryList); | |
38 | Bool_t Export(); | |
39 | ||
40 | void SetCollectionName(const char* name) {fCollectionName = name;} | |
41 | ||
42 | //____________________________________________________// | |
43 | const char* GetCollectionName() {return fCollectionName.Data();} | |
44 | ||
45 | //____________________________________________________// | |
46 | void Reset(); | |
47 | TMap *Next(); | |
48 | Bool_t Remove(TMap *map); | |
49 | const char *GetTURL(const char *name) const; | |
50 | const char *GetLFN(const char *name) const; | |
51 | const char *GetGUID(const char *name) const; | |
52 | TEntryList *GetEventList(const char *filename) const; | |
53 | Bool_t OverlapCollection(AliXMLCollection * comparator); | |
54 | ||
55 | static AliXMLCollection *Open(const char *localcollectionfile); | |
56 | ||
57 | //____________________________________________________// | |
58 | protected: | |
59 | virtual void ParseXML(); | |
60 | ||
61 | TString fXmlFile; // collection XML file | |
62 | TList *fEventList; // list with event file maps | |
63 | TIter *fEventListIter; // event file list iterator | |
64 | TMap *fCurrent; // current event file map | |
65 | TString fCollectionName; //the name of the xml file | |
66 | ofstream fout; // The output stream | |
67 | ||
68 | AliXMLCollection & operator=(const AliXMLCollection & ) {return *this;} | |
69 | ||
70 | ClassDef(AliXMLCollection,0) //(ClassName, ClassVersion) | |
71 | }; | |
72 | //___________________________________________________________________________ | |
73 | ||
74 | #endif |