#ifndef VEGA_VVirtualFrameInfoDB #define VEGA_VVirtualFrameInfoDB //*-- Author : Damir Buskulic 19/11/01 ////////////////////////////////////////////////////////////////////////// // // // VVirtualFrameInfoDB // // // // Virtual frame information (metadata) data base // // // ////////////////////////////////////////////////////////////////////////// #include #include "TObject.h" #include "VMetaData.h" #include "VConditionSet.h" #include "VVirtualMetaDBPlayer.h" #include "VConditionNames.h" using namespace std; class VConditionSet; class VVirtualFrameInfoDB : public TObject { public : VVirtualFrameInfoDB(); virtual ~VVirtualFrameInfoDB(); // Opening and building the info metadatabase virtual void Build(char* pathtofiles, char* filename, Option_t* option="R") {} virtual Bool_t Open(char* pathtoDB, Option_t* openopt = "READ") {return 0;} virtual Int_t AddFiles(const char* filenames, Option_t* option="R") {return 0;} virtual void Close() {} // Factory part. Creating objects exchanged by the database virtual VConditionSet* CreateConditionSet(const char* condfs, const char* selfs=0); // Drawing and getting information about the database virtual VVirtualMetaDBPlayer* GetPlayer() {return 0;} virtual void Draw(const char* selexp, const char* selection="", Option_t* option = "", Double_t start = 0, Double_t length = 0) {} virtual const char* GetPathToDB() {return 0;} virtual const char* GetOption() {return 0;} virtual Bool_t IsOpened() {return 0;} virtual VConditionNames* GetConditionNames() const {return 0;} virtual Int_t GetNConditions() {return 0;} virtual Double_t GetStart() {return 0;} virtual Double_t GetEnd() {return 0;} virtual void Print(Option_t* opt="") {} virtual char* GetStatus() {return 0;} // Getting the metadata information virtual void GetMetaData(VMetaData* meta, Double_t time) {} virtual void NextMetaData(VMetaData* meta) {} virtual void NextMetaData(VMetaData* meta, VConditionSet* condset) {} virtual void NextMetaData(VMetaData* meta, Double_t time, const char* selection) {} virtual void NextMetaData(VMetaData* meta, Double_t time, VConditionSet* condset) {} virtual void PreviousMetaData(VMetaData* meta) {} virtual void GetConditionSet(VConditionSet* condset, Double_t start, const char* condformula, const char* selformula) {} // // Dealing with conditions // // virtual Int_t LoadNearestGECondition(Double_t gpstime, const char* name); // virtual Int_t LoadNextCondition(char* name); // virtual VFrCondition* GetLoadedCondition(const char* name); ClassDef(VVirtualFrameInfoDB,0) // ABC describing a meta database }; #endif