]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliXMLCollection.h
Removing semaphore .done files.
[u/mrichter/AliRoot.git] / STEER / AliXMLCollection.h
CommitLineData
c1b83ab9 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>
1ca27a6f 17#include "TGridCollection.h"
c1b83ab9 18#include <Riostream.h>
19#include <TString.h>
20
1ca27a6f 21class TMap;
22class TIter;
c1b83ab9 23class TEventList;
1ca27a6f 24class TEntryList;
c1b83ab9 25
26//___________________________________________________________________________
1ca27a6f 27class AliXMLCollection : public TGridCollection {
c1b83ab9 28
29 public:
30 AliXMLCollection();
1ca27a6f 31 AliXMLCollection(const char *localCollectionFile);
32 AliXMLCollection(const AliXMLCollection& collection);
33
34 virtual ~AliXMLCollection();
c1b83ab9 35
36 //____________________________________________________//
37 Bool_t WriteHeader();
eb771b73 38 Bool_t WriteBody(Int_t counter, const char* guid, const char *lfn, const char *turl, TEventList *fEventList);
c1b83ab9 39 Bool_t Export();
40
41 void SetCollectionName(const char* name) {fCollectionName = name;}
42
43 //____________________________________________________//
44 const char* GetCollectionName() {return fCollectionName.Data();}
45
1ca27a6f 46 //____________________________________________________//
47 void Reset();
48 TMap *Next();
49 Bool_t Remove(TMap *map);
50 const char *GetTURL(const char *name) const;
51 const char *GetLFN(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
c1b83ab9 57 //____________________________________________________//
58 protected:
1ca27a6f 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
c1b83ab9 66 ofstream fout; // The output stream
67
1ca27a6f 68 AliXMLCollection & operator=(const AliXMLCollection & ) {return *this;}
69
c1b83ab9 70 ClassDef(AliXMLCollection,0) //(ClassName, ClassVersion)
71};
72//___________________________________________________________________________
73
74#endif