| The Gaudi Framework v32r1 (f65d50dc)

SvcCatalog.h
Go to the documentation of this file.
1 // ============================================================================
2 #ifndef JOBOPTIONSSVC_SVCCATALOG_H
3 #define JOBOPTIONSSVC_SVCCATALOG_H 1
4 // ============================================================================
5 // Include files
6 // ============================================================================
7 // STD & STL
8 // ============================================================================
9 #include <map>
10 #include <string>
11 #include <vector>
12 // ============================================================================
13 // GaudiKernel
14 // ============================================================================
15 #include "GaudiKernel/Property.h"
16 #include "GaudiKernel/StatusCode.h"
17 // ===========================================================================
18
25 class SvcCatalog final {
26 public:
27 typedef std::vector<const Gaudi::Details::PropertyBase*> PropertiesT;
28 SvcCatalog() = default;
29 ~SvcCatalog();
30
31 StatusCode addProperty( const std::string& client, const Gaudi::Details::PropertyBase* property );
32
33 StatusCode removeProperty( const std::string& client, const std::string& name );
34 const PropertiesT* getProperties( const std::string& client ) const;
35 std::vector<std::string> getClients() const;
36 const Gaudi::Details::PropertyBase* getProperty( const std::string& client, const std::string& name ) const;
37
38 public:
40 std::ostream& fillStream( std::ostream& o ) const;
41
42 private:
43 const PropertiesT* findProperties( const std::string& client ) const;
44 PropertiesT* findProperties( const std::string& client );
45 std::pair<bool, PropertiesT::const_iterator> findProperty( const PropertiesT& props, const std::string& name ) const;
46 std::pair<bool, PropertiesT::iterator> findProperty( PropertiesT& props, const std::string& name );
47 std::map<std::string, PropertiesT> m_catalog;
48 };
49 // ============================================================================
51 // ============================================================================
52 std::ostream& operator<<( std::ostream& o, const SvcCatalog& c );
53 // ============================================================================
54
55 // ============================================================================
56 // The END
57 // ============================================================================
58 #endif // JOBOPTIONSSVC_SVCCATALOG_H
SvcCatalog::findProperties
const PropertiesT * findProperties(const std::string &client) const
Definition: SvcCatalog.cpp:70
gaudirun.c
c
Definition: gaudirun.py:487
gaudiComponentHelp.name
name
Definition: gaudiComponentHelp.py:41
SvcCatalog::getProperties
const PropertiesT * getProperties(const std::string &client) const
Definition: SvcCatalog.cpp:59
SvcCatalog::getProperty
const Gaudi::Details::PropertyBase * getProperty(const std::string &client, const std::string &name) const
Definition: SvcCatalog.cpp:107
SvcCatalog::PropertiesT
std::vector< const Gaudi::Details::PropertyBase * > PropertiesT
Definition: SvcCatalog.h:27
SvcCatalog::~SvcCatalog
~SvcCatalog()
Definition: SvcCatalog.cpp:30
SvcCatalog::addProperty
StatusCode addProperty(const std::string &client, const Gaudi::Details::PropertyBase *property)
Definition: SvcCatalog.cpp:36
SvcCatalog::findProperty
std::pair< bool, PropertiesT::const_iterator > findProperty(const PropertiesT &props, const std::string &name) const
Definition: SvcCatalog.cpp:80
std::map
STL class.
SvcCatalog::removeProperty
StatusCode removeProperty(const std::string &client, const std::string &name)
Definition: SvcCatalog.cpp:47
std::string
STL class.
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:50
SvcCatalog::m_catalog
std::map< std::string, PropertiesT > m_catalog
Definition: SvcCatalog.h:47
Gaudi::Details::PropertyBase
PropertyBase base class allowing PropertyBase* collections to be "homogeneous".
Definition: Property.h:32
SvcCatalog::getClients
std::vector< std::string > getClients() const
Definition: SvcCatalog.cpp:63
std::pair
std::vector
STL class.
SvcCatalog::fillStream
std::ostream & fillStream(std::ostream &o) const
dump the content of catalog to std::ostream
Definition: SvcCatalog.cpp:96
Property.h
SvcCatalog::SvcCatalog
SvcCatalog()=default
StatusCode.h
SvcCatalog
Definition: SvcCatalog.h:25
std::ostream
STL class.
operator<<
std::ostream & operator<<(std::ostream &o, const SvcCatalog &c)
printoput operator
Definition: SvcCatalog.cpp:119