|
ATLAS Offline Software
|
Go to the documentation of this file.
11 #ifndef ATHENAKERNEL_ATH_DSODB_H
12 #define ATHENAKERNEL_ATH_DSODB_H 1
19 #include <unordered_map>
36 typedef std::vector<std::string>
Libs_t;
37 typedef std::unordered_map<std::string, Libs_t>
DsoMap_t;
42 std::vector<std::string>
45 std::vector<std::string>
k;
47 for (Ath::DsoDb::DsoMap_t::const_iterator
i =
m.begin(),
e =
m.end();
50 k.push_back(
i->first);
56 std::vector<std::vector<std::string> >
59 std::vector<Libs_t>
v;
61 for (Ath::DsoDb::DsoMap_t::const_iterator
i =
m.begin(),
e =
m.end();
64 v.push_back(
i->second);
100 bool has_type(
const std::string& type_name)
const;
105 std::vector<std::string>
capabilities(
const std::string& libname)
const;
163 #endif //> !ATHENAKERNEL_ATH_DSODB_H
const DsoMap_t & pf() const
repository of plugin factories
DsoMap_t dict_duplicates(bool pedantic=false) const
table of dict-duplicates: {type: [lib1, lib2, ...]}
helper class to query rootmap files and extract their content
DsoMap_t m_pf
repository of plugin factories
static const DsoDb * instance()
factory for the DsoDb
std::vector< std::string > m_dsofiles
list of dsofiles
const DsoMap_t & db() const
repository of components
const std::vector< std::string > & dso_files() const
list of all dsomap/rootmap files we know about
bool has_type(const std::string &type_name) const
std::vector< std::string > capabilities(const std::string &libname) const
list of reflex-types associated with a library name
std::vector< std::string > Libs_t
DsoMap_t content(bool pedantic) const
return the table {type: [lib1, ...]} - concatenation of all dict-entries and plugin-factories entries...
Libs_t libs(bool detailed=false) const
list of all libraries we know about
DsoDb & operator=(const DsoDb &rhs)
Assignment operator:
std::unordered_map< std::string, Libs_t > DsoMap_t
static std::vector< std::vector< std::string > > py_vals_from(const Ath::DsoDb::DsoMap_t &m)
void get_dups(DsoMap_t &dups, const DsoMap_t &db, bool pedantic) const
get the duplicates for a given repository of components
DsoMap_t m_db
repository of components
DsoDb(const DsoDb &rhs)
Copy constructor:
DsoDb()
Default constructor:
void build_repository()
initialize the repository of dso file names
RootType rflx_type ATLAS_NOT_THREAD_SAFE(const std::string &type_name) const
load the reflex type after having loaded the hosting library
std::string load_type ATLAS_NOT_THREAD_SAFE(const std::string &type_name) const
DsoMap_t duplicates(const std::string &libname, bool pedantic=false) const
list of libraries hosting duplicate reflex-types
Define macros for attributes used to control the static checker.
DsoMap_t pf_duplicates(bool pedantic=false) const
table of plugin-factories-duplicates: {type: [lib1, lib2, ...]}
static std::vector< std::string > py_keys_from(const Ath::DsoDb::DsoMap_t &m)