21 #include "boost/program_options.hpp" 23 using namespace boost::program_options;
28 options_description desc(
"Allowed options" );
29 desc.add_options()(
"help,h",
"produce help message" )(
"config", value<std::string>(),
30 "comma separated list of python configuration files" )(
31 "post-option", value<std::string>(),
"python command to be run after ConfigurableUser has been applied" )(
33 positional_options_description p;
37 store( command_line_parser(
argc,
argv ).
options( desc ).positional( p ).run(), vm );
38 }
catch ( boost::exception_detail::clone_impl<
39 boost::exception_detail::error_info_injector<boost::program_options::unknown_option>>& ) {
47 if ( vm.count(
"help" ) or vm.count(
"h" ) ) {
51 if ( !vm.count(
"config" ) ) {
59 if ( 0 != vm.count(
"param" ) ) {
69 if ( 0 != vm.count(
"post-option" ) ) { postAction = vm[
"post-option"].as<
std::string>(); }
78 propMgr->
setProperty(
"JobOptionsPostAction", postAction );
code_t getCode() const
Retrieve value ("checks" the StatusCode)
virtual StatusCode run()=0
Run the complete job (from initialize to terminate)
int main(int argc, char **argv)
virtual StatusCode setProperty(const Gaudi::Details::PropertyBase &p)=0
Set the property by property.
Definition of the basic interface.
GAUDI_API IAppMgrUI * createApplicationMgr(const std::string &dllname, const std::string &factname)