#include <TSystem.h>
#include <TUrl.h>
-#include "AliMDC.h"
-
#include "AliRawCastorDB.h"
//______________________________________________________________________________
-AliRawCastorDB::AliRawCastorDB(AliRawEvent *event, Double_t maxsize, Int_t compress)
- : AliRawDB(event, maxsize, compress, kFALSE)
+AliRawCastorDB::AliRawCastorDB(AliRawEvent *event,
+ AliESD *esd,
+ Int_t compress,
+ const char* fileName)
+ : AliRawDB(event, esd, compress, fileName)
{
// Create a new raw DB that will be accessed via CASTOR and rootd.
-#ifndef USE_RDM
static int init = 0;
- // Set STAGE_POOL environment variable to current host
if (!init) {
- // THESE ENVIRONMENT SYMBOLS ARE NOW DEFINED BY THE ALICE DATE SETUP
- // THEREFORE WE SHALL NOT USE ANY HARDCODED VALUES BUT RATHER USE
- // WHATEVER HAS BEEN SET IN THE DATE SITE
- //gSystem->Setenv("STAGE_POOL", "lcg00");
- //gSystem->Setenv("STAGE_HOST", "stage013");
-
- // however for sanity we check if they are really set
- if (!gSystem->Getenv("STAGE_POOL"))
- Error("AliRawRFIODB", "STAGE_POOL not set");
- if (!gSystem->Getenv("STAGE_HOST"))
- Error("AliRawRFIODB", "STAGE_HOST not set");
+ // THESE ENVIRONMENT VARIABLES ARE IN PRINCIPLE HARDCODED IN
+ // THE CASTOR CLIENT LIBRARY
+ // however for sanity we check if they are set by the user
+ if (!gSystem->Getenv("RH_HOST"))
+ Error("AliRawRFIODB", "RH_HOST not set");
+ if (!gSystem->Getenv("SVCCLASS"))
+ Error("AliRawRFIODB", "SVCCLASS not set");
init = 1;
}
-#endif
- if (!Create())
- MakeZombie();
- else
- fRawDB->UseCache(50, 0x200000); //0x100000 = 1MB)
+ if (fRawDB) fRawDB->UseCache(50, 0x200000); //0x100000 = 1MB)
}
//______________________________________________________________________________
static TString fname;
- TString fs = AliMDC::CastorFS();
- TString fsr = AliMDC::RFIOFS();
+ TString fs = fFS1;
+ TString fsr = fs;
+ fsr.ReplaceAll("castor:", "rfio:");
TDatime dt;
// make a new subdirectory for each day
// directory does not exist, create it
if (gSystem->mkdir(fsr, kTRUE) == -1) {
Error("GetFileName", "cannot create dir %s, using %s", fsr.Data(),
- AliMDC::RFIOFS());
- fs = AliMDC::CastorFS();
+ fFS1.Data());
+ fs = fFS1;
}
}
// FIXME: should check if fs is a directory
// Write the tree.
fTree->Write();
+ if (fESDTree) fESDTree->Write();
// Close DB, this also deletes the fTree
fRawDB->Close();
- if (AliMDC::DeleteFiles()) {
+ if (fDeleteFiles) {
TUrl u(fRawDB->GetName());
gSystem->Exec(Form("rfrm %s", u.GetFile()));
}