#ifndef ALITAGDB_H
#define ALITAGDB_H
-// @(#)alimdc:$Name$:$Id$
+// @(#) $Id$
// Author: Fons Rademakers 26/11/99
/* Copyright(c) 1998-2003, ALICE Experiment at CERN, All rights reserved. *
#include <TTree.h>
#endif
+#ifndef ROOT_TString
+#include <TString.h>
+#endif
+
+
// Forward class declarations
-class AliRawEventHeader;
+class AliRawEventTag;
class AliTagDB : public TObject {
public:
- AliTagDB(AliRawEventHeader *header, Double_t maxsize, Bool_t create = kTRUE);
+ AliTagDB(AliRawEventTag *eventTag, const char* fileName = NULL);
virtual ~AliTagDB() { Close(); }
- Bool_t Create();
+ Bool_t Create(const char* fileName = NULL);
virtual void Close();
void Fill() { fTree->Fill(); }
Bool_t FileFull()
- { return (fTagDB->GetBytesWritten() > fMaxSize) ? kTRUE : kFALSE; }
+ { return (fMaxSize >= 0) ? ((fTagDB->GetBytesWritten() > fMaxSize) ? kTRUE : kFALSE) : kFALSE; }
+
+ Bool_t NextFile(const char* fileName = NULL);
- Bool_t NextFile();
+ void SetMaxSize(Double_t maxSize) { fMaxSize = maxSize; }
+ void SetFS(const char* fs);
Double_t GetBytesWritten() const { return fTagDB->GetBytesWritten(); }
TFile *GetDB() const { return fTagDB; }
const char *GetDBName() const { return fTagDB->GetName(); }
- AliRawEventHeader *GetHeader() const { return fHeader; }
+ AliRawEventTag *GetEventTag() const { return fEventTag; }
Int_t GetEvents() const { return (Int_t) fTree->GetEntries(); }
Float_t GetCompressionFactor() const;
protected:
TFile *fTagDB; // DB to store header information only (tag)
TTree *fTree; // tree use to store header
- AliRawEventHeader *fHeader; // header via which data is stored
+ AliRawEventTag *fEventTag; // pointer to event tag object via which data is stored
Double_t fMaxSize; // maximum size in bytes of tag DB
+ TString fFS; // tag DB file system location
+ Bool_t fDeleteFiles; // flag for deletion of files
virtual const char *GetFileName() const;