30#include <Ice/Properties.h>
32#include <SimoxUtility/algorithm/string/string_tools.h>
43 using simox::alg::ends_with;
47 return simox::alg::replace_last(executableName,
"Run",
"");
52 return simox::alg::replace_last(executableName,
"_run",
"");
55 return executableName;
59 std::string executablePath,
60 std::string packageName) :
62 executableName(executableName),
63 executablePath(executablePath),
64 packageName(packageName),
77 name(application.name),
78 executableName(application.executableName),
79 executablePath(application.executablePath),
80 packageName(application.packageName),
81 found(application.found),
100 return this->executablePath;
124 this->properties->setPrefix(
"");
125 this->properties->setDescription(name +
" properties");
131 return std::filesystem::exists(executablePath / executableName);
185 return executableName;
191 return executablePath / executableName;
Class containing data about an application Provides methods to get and set the date contained in the ...
bool isDefaultPropertyEnabled(std::string name)
std::string getExecutableAbsPath()
void setProperties(armarx::PropertyDefinitionsPtr properties)
Sets the properties of this application.
void setDefaultPropertyEnabled(std::string name, bool enabled)
bool isDefaultProperty(std::string name)
std::string getPackageName()
std::string getExecutableName()
armarx::PropertyDefinitionsPtr properties
Application(std::string name, std::string executablePath, std::string packageName)
Constructor that sets the name and the path to the executable of the application.
PropertyEnabledMap defaultMap
PropertyEnabledMap enabledMap
void setIsDefaultProperty(std::string name, bool defaultValue)
armarx::PropertyDefinitionsPtr getProperties()
std::string getPathToExecutable()
IceProperties stores ice properties and resolves property inheritance.
virtual void setInheritanceSolver(const InheritanceSolverPtr &inheritanceSolver)
Sets an inheritance solver in case of testing or using a non-default solver.
static Ice::PropertiesPtr create(const Ice::PropertiesPtr &iceProperties=nullptr)
PropertyDefinitionContainer.
::IceInternal::Handle<::Ice::Properties > PropertiesPtr
This file offers overloads of toIce() and fromIce() functions for STL container types.
bool ends_with(const std::string &haystack, const std::string &needle)
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.
std::string prettify(const std::string &executableName)