Belle II Software  release-05-02-19
DBObjectLoader.h
1 #ifndef _Belle2_DBObjectLoader_h
2 #define _Belle2_DBObjectLoader_h
3 
4 #include <daq/slc/database/DBObject.h>
5 #include <daq/slc/database/DBInterface.h>
6 
7 #include <daq/slc/system/Mutex.h>
8 
9 #include <daq/slc/base/StringUtil.h>
10 #include <daq/slc/base/ConfigFile.h>
11 
12 namespace Belle2 {
19 
20  public:
21  static DBObject load(const std::string& filename);
22  static DBObject load(ConfigFile& config);
23  static DBObject load(DBInterface& db,
24  const std::string& tablename,
25  const std::string& configname,
26  bool isfull = true);
27  static bool createDB(DBInterface& db,
28  const std::string& tablename,
29  const DBObject& obj);
30  static StringList getDBlist(DBInterface& db,
31  const std::string& tablename,
32  const std::string& prefix,
33  int max = -1);
34 
35  private:
36  static bool setObject(DBObject& obj, StringList& str,
37  DBField::Type type, const std::string& value,
38  const std::string& table_in = "",
39  const std::string& config_in = "",
40  DBInterface* db = NULL);
41  static bool add(DBObject& obj, StringList& str,
42  const std::string& name_in, const DBObject& cobj);
43 
44 
45  static Mutex m_mutex;
46 
47  };
48 
50 }
51 
52 #endif
Belle2::DBObject
Definition: DBObject.h:14
Belle2::Mutex
Definition: Mutex.h:12
Belle2::DBObjectLoader
Definition: DBObjectLoader.h:18
Belle2
Abstract base class for different kinds of events.
Definition: MillepedeAlgorithm.h:19
Belle2::DBInterface
Definition: DBInterface.h:19
Belle2::ConfigFile
Definition: ConfigFile.h:15