]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - RAW/AliRawCastorDB.cxx
Warning related to the output file size removed.
[u/mrichter/AliRoot.git] / RAW / AliRawCastorDB.cxx
index fbe559a0de8ecd25d3a653815d225f6aac30e913..f57921b0f8592d8d6486e37b9629e09771197578 100644 (file)
@@ -25,8 +25,6 @@
 #include <TSystem.h>
 #include <TUrl.h>
 
-#include "AliMDC.h"
-
 #include "AliRawCastorDB.h"
 
 
@@ -34,34 +32,27 @@ ClassImp(AliRawCastorDB)
 
 
 //______________________________________________________________________________
-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)
 }
 
 //______________________________________________________________________________
@@ -74,8 +65,9 @@ const char *AliRawCastorDB::GetFileName() const
 
    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
@@ -90,8 +82,8 @@ const char *AliRawCastorDB::GetFileName() const
       // 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
@@ -121,11 +113,12 @@ void AliRawCastorDB::Close()
 
    // 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()));
    }