Fix in the last caall to CleanOwnPrimaryVertex
[u/mrichter/AliRoot.git] / ANALYSIS / AliXMLCollection.h
CommitLineData
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
21class TMap;
22class TIter;
23class TEntryList;
24
25//___________________________________________________________________________
26class 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();
f0f29480 37 Bool_t WriteSummary(Int_t aTotal, Int_t aAccepted, Int_t aRejRun, Int_t aRejLHC, Int_t aRejDet, Int_t aRejEvt);
d08133e6 38 Bool_t WriteBody(Int_t counter, const char* guid, const char *lfn, const char *turl, TEntryList *fEntryList);
f0f29480 39 Bool_t WriteBody(Int_t counter, const char* guid, const char *lfn, const char *turl, TEntryList *fEntryListm, Int_t accSum, Int_t rejSum);
d08133e6 40 Bool_t Export();
41
42 void SetCollectionName(const char* name) {fCollectionName = name;}
43
44 //____________________________________________________//
26f071d8 45 const char* GetCollectionName() const {return fCollectionName.Data();}
d08133e6 46
47 //____________________________________________________//
48 void Reset();
49 TMap *Next();
50 Bool_t Remove(TMap *map);
26f071d8 51 const char *GetTURL(const char *name);
52 const char *GetLFN(const char *name);
53 const char *GetGUID(const char *name);
f0f29480 54 const char *GetCutSumm();
d08133e6 55 TEntryList *GetEventList(const char *filename) const;
3d456d99 56 TEntryList *GetEntryList(const char *filename) { return GetEventList(filename); }
26f071d8 57 Bool_t OverlapCollection(TGridCollection * comparator);
f690bf48 58 Bool_t GetCollectionSummary(Int_t *aTot, Int_t *aAcc, Int_t *aRejRun, Int_t *aRejLHC, Int_t *aRejDet, Int_t *aRejEvt) const;
d08133e6 59
60 static AliXMLCollection *Open(const char *localcollectionfile);
61
62 //____________________________________________________//
63 protected:
64 virtual void ParseXML();
65
66 TString fXmlFile; // collection XML file
67 TList *fEventList; // list with event file maps
68 TIter *fEventListIter; // event file list iterator
69 TMap *fCurrent; // current event file map
70 TString fCollectionName; //the name of the xml file
71 ofstream fout; // The output stream
f0f29480 72
73 // List summary information
74 Int_t fTotalEvents; // Total no. of events in collection
75 Int_t fAcceptedEvents; // No. of accepted events in collection
76 Int_t fRejectedRun; // No. of events rejected by Run cuts
77 Int_t fRejectedLHC; // No. of events rejected by LHC cuts
78 Int_t fRejectedDet; // No. of events rejected by Detector cuts
79 Int_t fRejectedEvt; // No. of events rejected by Event cuts
d08133e6 80
81 AliXMLCollection & operator=(const AliXMLCollection & ) {return *this;}
82
83 ClassDef(AliXMLCollection,0) //(ClassName, ClassVersion)
84};
85//___________________________________________________________________________
86
87#endif