| # Gaudi Framework, version v25r0 |

Home |  | Generated: Mon Feb 17 2014

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
JobOptionsSvc.h
Go to the documentation of this file.
1 // $Id:$
2 #ifndef JOBOPTIONSSVC_H_
3 #define JOBOPTIONSSVC_H_
4
5 #include "GaudiKernel/StatusCode.h"
6 #include "GaudiKernel/IProperty.h"
7 #include "GaudiKernel/IJobOptionsSvc.h"
8 #include "GaudiKernel/Property.h"
9 #include "GaudiKernel/PropertyMgr.h"
10 #include "GaudiKernel/Service.h"
11
12 #include "SvcCatalog.h"
13
14 #include <vector>
15
16 namespace Gaudi { namespace Parsers {
17 class Catalog;
18 }}
19
20
21 class JobOptionsSvc : public extends2<Service, IProperty, IJobOptionsSvc> {
22 public:
23 typedef std::vector<const Property*> PropertiesT;
24 // unhides some of Service's methods
25 using Service::setProperty;
26 using Service::getProperty;
27 using Service::getProperties;
28 // Constructor
29 JobOptionsSvc(const std::string& name,ISvcLocator* svc);
31 virtual ~JobOptionsSvc() {};
32 virtual StatusCode initialize ();
34 virtual StatusCode finalize ();
35
40 virtual StatusCode setMyProperties(const std::string& client,
41 IProperty* me ) ;
42
44 virtual StatusCode addPropertyToCatalogue( const std::string& client,
45 const Property& property ) ;
46
48 virtual StatusCode removePropertyFromCatalogue( const std::string& client,
49 const std::string& name );
51 virtual const std::vector<const Property*>*
52 getProperties( const std::string& client) const;
53
55 virtual std::vector<std::string> getClients() const;
56
63 virtual StatusCode readOptions ( const std::string& file,
64 const std::string& path = "" );
65
67 StatusCode setProperty(const Property& p);
68 StatusCode getProperty(Property *p) const;
69 private:
70 void fillServiceCatalog(const Gaudi::Parsers::Catalog& catalog);
71 void dump (const std::string& file,
72 const Gaudi::Parsers::Catalog& catalog) const ;
74
75 private:
76 PropertyMgr m_pmgr;
77 std::string m_source_path;
78 std::string m_source_type;
79 std::string m_dir_search_path;
80 std::string m_dump;
81 SvcCatalog m_svc_catalog;
82 };
83 #endif /* JOBOPTIONSSVC_H_ */