The Gaudi Framework
master (37c0b60a)
PythonConfig.h
Go to the documentation of this file.
1
/***********************************************************************************\
2
* (c) Copyright 1998-2024 CERN for the benefit of the LHCb and ATLAS collaborations *
3
* *
4
* This software is distributed under the terms of the Apache version 2 licence, *
5
* copied verbatim in the file "LICENSE". *
6
* *
7
* In applying this licence, CERN does not waive the privileges and immunities *
8
* granted to it by virtue of its status as an Intergovernmental Organization *
9
* or submit itself to any jurisdiction. *
10
\***********************************************************************************/
11
#ifndef GAUDISVC_PYTHONCONFIG_H
12
#define GAUDISVC_PYTHONCONFIG_H
13
#include <
Gaudi/Interfaces/IOptionsSvc.h
>
14
15
#include <
GaudiKernel/StatusCode.h
>
16
17
#include <string>
18
19
// Class to translate between Python and C++ worlds
20
// It will be exposed to Python via Boost (see .cpp file)
21
class
PythonAdaptor
{
22
public
:
23
PythonAdaptor
(
Gaudi::Interfaces::IOptionsSvc
* optsSvc ) :
m_optsSvc
( optsSvc ) {}
24
void
addPropertyToJobOptions
(
const
std::string
& client,
const
std::string
&
name
,
const
std::string
& value ) {
25
m_optsSvc
->
set
( client +
'.'
+
name
, value );
26
}
27
28
private
:
29
Gaudi::Interfaces::IOptionsSvc
*
m_optsSvc
;
30
};
31
32
// Helper class to be invoked by JobOptionsSvc
33
class
PythonConfig
{
34
public
:
35
PythonConfig
(
Gaudi::Interfaces::IOptionsSvc
* optsSvc ) :
m_optsSvc
( optsSvc ) {}
36
StatusCode
evaluateConfig
(
const
std::string
&
filename
,
const
std::string
& preAction,
const
std::string
& postAction );
37
38
private
:
39
Gaudi::Interfaces::IOptionsSvc
*
m_optsSvc
;
40
};
41
42
#endif
PythonAdaptor::addPropertyToJobOptions
void addPropertyToJobOptions(const std::string &client, const std::string &name, const std::string &value)
Definition:
PythonConfig.h:24
PythonAdaptor::PythonAdaptor
PythonAdaptor(Gaudi::Interfaces::IOptionsSvc *optsSvc)
Definition:
PythonConfig.h:23
std::string
STL class.
PythonConfig::evaluateConfig
StatusCode evaluateConfig(const std::string &filename, const std::string &preAction, const std::string &postAction)
Definition:
PythonConfig.cpp:20
StatusCode.h
StatusCode
Definition:
StatusCode.h:65
Gaudi::Interfaces::IOptionsSvc::set
virtual void set(const std::string &key, const std::string &value)=0
Set the value of an option, overriding the old value, if any.
PythonConfig::m_optsSvc
Gaudi::Interfaces::IOptionsSvc * m_optsSvc
Definition:
PythonConfig.h:39
PythonAdaptor
Definition:
PythonConfig.h:21
PythonConfig::PythonConfig
PythonConfig(Gaudi::Interfaces::IOptionsSvc *optsSvc)
Definition:
PythonConfig.h:35
ConditionsStallTest.name
name
Definition:
ConditionsStallTest.py:77
PythonAdaptor::m_optsSvc
Gaudi::Interfaces::IOptionsSvc * m_optsSvc
Definition:
PythonConfig.h:29
graphanalysis.filename
filename
Definition:
graphanalysis.py:130
Gaudi::Interfaces::IOptionsSvc
Interface for a component that manages application configuration options.
Definition:
IOptionsSvc.h:46
IOptionsSvc.h
PythonConfig
Definition:
PythonConfig.h:33
GaudiCoreSvc
src
JobOptionsSvc
PythonConfig.h
Generated on Thu Dec 19 2024 15:34:58 for The Gaudi Framework by
1.8.18