]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliCDBStorage.h
Removing semaphore .done files.
[u/mrichter/AliRoot.git] / STEER / AliCDBStorage.h
index 3ae3075aac2d26901e6023dc46a7c8aeab5633e5..26beac8452fbad02297eaf5d883fda4b35172445 100644 (file)
 
 #include "AliCDBId.h"
 #include "AliCDBMetaData.h"
+#include "AliCDBManager.h"
 
 #include <TList.h>
+#include <TObjArray.h>
 
 class AliCDBEntry;
 class AliCDBPath;
+class AliCDBParam;
 
 class AliCDBStorage: public TObject {
 
 public:
+
        AliCDBStorage();
 
        void SetURI(const TString& uri) {fURI = uri;}
        const TString& GetURI() const {return fURI;}
        const TString& GetType() const {return fType;}
        const TString& GetBaseFolder() const {return fBaseFolder;}
+       AliCDBManager::DataType GetDataType() const;
 
 
        void ReadSelectionFromFile(const char *fileName);
@@ -72,18 +77,22 @@ public:
        TList* GetAll(const AliCDBPath& path, const AliCDBRunRange& runRange,
                                 Int_t version = -1, Int_t subVersion = -1);
        
-       Bool_t Put(TObject* object, AliCDBId& id,  AliCDBMetaData* metaData);
-       Bool_t Put(AliCDBEntry* entry);
-
+       Bool_t Put(TObject* object, AliCDBId& id,  AliCDBMetaData* metaData,
+                               AliCDBManager::DataType type=AliCDBManager::kPrivate);
+       Bool_t Put(AliCDBEntry* entry, AliCDBManager::DataType type=AliCDBManager::kPrivate);
 
        virtual Bool_t IsReadOnly() const = 0;
        virtual Bool_t HasSubVersion() const = 0;
        virtual Bool_t Contains(const char* path) const = 0;
+       virtual Bool_t IdToFilename(const AliCDBId& id, TString& filename) const = 0;
 
-       void QueryCDB(Long64_t run, const char* pathFilter="*",
+       void QueryCDB(Int_t run, const char* pathFilter="*",
                        Int_t version=-1, AliCDBMetaData *mdFilter=0);
        void PrintQueryCDB();
-       TList* GetQueryCDBList() {return &fValidFileIds;}
+       TObjArray* GetQueryCDBList() {return &fValidFileIds;}
+
+       virtual Int_t GetLatestVersion(const char* path, Int_t run)=0;
+       virtual Int_t GetLatestSubVersion(const char* path, Int_t run, Int_t version=-1)=0;
 
 protected:
 
@@ -95,8 +104,8 @@ protected:
        virtual TList *GetIdListFromFile(const char* fileName)=0;
        virtual void   QueryValidFiles() = 0;
 
-       TList fValidFileIds;    // list of Id's of the files valid for a given run (cached as fRun)
-       Long64_t fRun;          // run number, used to manage list of valid files
+       TObjArray fValidFileIds;        // list of Id's of the files valid for a given run (cached as fRun)
+       Int_t fRun;             // run number, used to manage list of valid files
        AliCDBPath fPathFilter; // path filter, used to manage list of valid files
        Int_t fVersion;         // version, used to manage list of valid files
        AliCDBMetaData* fMetaDataFilter; // metadata, used to manage list of valid files
@@ -106,7 +115,7 @@ protected:
        TString fType;    //! Local, Grid: base folder name - Dump: file name
        TString fBaseFolder;    //! Local, Grid: base folder name - Dump: file name
 
- private:
+private:
        AliCDBStorage(const AliCDBStorage & source);
        AliCDBStorage & operator=(const AliCDBStorage & source);