1#ifndef __KVSQLROOTFILE_H
2#define __KVSQLROOTFILE_H
7#include <unordered_map>
78 std::unique_ptr<KVSQLite::database>
fObjDB;
92 return fObjDB->get_table(
"objTable");
96 return fObjDB->get_table(
"objInfos");
99 mutable std::unordered_map<std::string, TObject*>
fObjList;
#define ClassDef(name, id)
Base class for KaliVeda framework.
Handles lists of named parameters with different types, a list of KVNamedParameter objects.
Combine ROOT file containing objects with SQLite database with info on the objects.
KVSQLite::table & get_objInfos() const
void WriteObject(const TObject *, const KVNameValueList &)
KVSQLite::table & get_objTable() const
void FillListOfObjectsWithSelection(KVSeqCollection *list, const KVString &where)
TObject * Get(const KVString &name) const
Return pointer to object with given name.
void ls(Option_t *="") const
List the contents of the file with associated infos.
std::unordered_map< std::string, TObject * > fObjList
for quick look-up of objects using unique id
TObject * get_object_with_UUID(const KVString &name) const
Retrieve object from file using its name.
void restore_working_directory()
KVString UUID_for_object(const KVString &) const
Return unique identifier used to store object with given name in ROOT file.
std::unique_ptr< TFile > fObjStore
TString fCurrentROOTFilePath
full path to current ROOT file
std::unique_ptr< KVSQLite::database > fObjDB
void save_working_directory()
KaliVeda extensions to ROOT collection classes.
Extension of ROOT TString class which allows backwards compatibility with ROOT v3....