|
|
Class containing data about the instance of an application. More...
#include <ArmarXCore/util/ScenarioManagerCommon/data_structure/ApplicationInstance.h>
Inheritance diagram for ApplicationInstance:Public Member Functions | |
| void | addProperty (std::string name, std::string value) |
| Adds a new property with the specified name and value to this ApplicationInstance. | |
| bool | adoptPidIfUnset (int newPid) |
Sets the pid to newPid, but only if no pid is currently known (i.e. | |
| ApplicationInstance (Application application, std::string instanceName, std::string configPath, ScenarioPtr scenarioName, std::string node, bool enabled) | |
| Constructor that sets the base data of this ApplicationInstance. | |
| ApplicationInstance (std::string executableName, std::string executablePath, std::string instanceName, std::string configPath, std::string packageName, ScenarioPtr scenarioName, std::string node, bool enabled) | |
| Constructor that sets the base data of this ApplicationInstance. | |
| bool | compareAndResetPid (int expectedPid) |
Sets the pid to -1, but only if it is still expectedPid. | |
| void | copyFrom (ApplicationInstance &other) |
| copyFrom Copy the other instance configuration to this one. | |
| void | deleteConfig () |
| std::string | getConfigDomain () const |
| std::string | getConfigPath () |
| std::string | getEffectiveNodeName () const |
| bool | getEnabled () |
| std::string | getInstanceName () |
| std::string | getNodeName () const |
| Intent | getPendingIntent () const |
| The intent this application is currently moving towards, or None when idle. | |
| int | getPid () |
| ScenarioPtr | getScenario () |
| std::string | getStatus () |
| Returns the status. | |
| bool | isConfigWritable () |
| bool | isReadOnly () const |
| void | linkFrom (ApplicationInstance &other) |
| linkFrom Link this instance configuration from the other instance. | |
| void | load (bool firstLoad=false) |
| Loades the IceProperties from the configPath Firstload determins if properties that equal their default value get uncommented. | |
| void | makeLocal () |
| Make a local copy of this instance if it is linked and nothing otherwise. | |
| void | modifyProperty (std::string name, std::string value) |
| Changes the value of the specified property. | |
| void | resetConfigPath () |
| resetConfigPath. | |
| void | save () |
| Saves the IceProperties to the configPath. | |
| void | setConfigDomain (const std::string &value) |
| void | setConfigPath (std::string configPath) |
| Sets the config path of this ApplicationInstance. | |
| void | setEnabled (bool enabled) |
| void | setInstanceName (std::string newName) |
| Sets the name of this ApplicationInstance. | |
| void | setNodeName (std::string nodeName) |
| void | setPendingIntent (Intent intent) |
| void | setPid (int pid) |
| Sets the pid of this ApplicationInstance. | |
| bool | setStatus (const std::string &status) |
| Sets the status of this ApplicationInstance. | |
Public Member Functions inherited from Application | |
| Application (Application &app) | |
| Copy constructor. | |
| Application (std::string name, std::string executablePath, std::string packageName) | |
| Constructor that sets the name and the path to the executable of the application. | |
| std::string | getExecutableAbsPath () |
| std::string | getExecutableName () |
| bool | getFound () |
| std::string | getName () |
| std::string | getPackageName () |
| std::string | getPathToExecutable () |
| armarx::PropertyDefinitionsPtr | getProperties () |
| bool | isDefaultProperty (std::string name) |
| bool | isDefaultPropertyEnabled (std::string name) |
| void | setDefaultPropertyEnabled (std::string name, bool enabled) |
| void | setIsDefaultProperty (std::string name, bool defaultValue) |
| void | setProperties (armarx::PropertyDefinitionsPtr properties) |
| Sets the properties of this application. | |
| void | updateFound () |
| Checks whether the executable exists and caches the result for getFound(). | |
Additional Inherited Members | |
Protected Attributes inherited from Application | |
| PropertyEnabledMap | defaultMap |
| PropertyEnabledMap | enabledMap |
| armarx::PropertyDefinitionsPtr | properties |
| std::mutex | propertiesMutex |
Guards properties, enabledMap and defaultMap. | |
Class containing data about the instance of an application.
Provides methods to get and set the data. It is only representative and doesn't actually synchronize with the configuration files.
Definition at line 106 of file ApplicationInstance.h.
| ApplicationInstance | ( | std::string | executableName, |
| std::string | executablePath, | ||
| std::string | instanceName, | ||
| std::string | configPath, | ||
| std::string | packageName, | ||
| ScenarioPtr | scenarioName, | ||
| std::string | node, | ||
| bool | enabled ) |
Constructor that sets the base data of this ApplicationInstance.
| executableName | The name of the Application |
| executablePath | The path of the Executable |
| instanceName | a name that distinguishes this instance from other instances |
| configPath | path to the config file of this instance |
Definition at line 136 of file ApplicationInstance.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:| ApplicationInstance | ( | Application | application, |
| std::string | instanceName, | ||
| std::string | configPath, | ||
| ScenarioPtr | scenarioName, | ||
| std::string | node, | ||
| bool | enabled ) |
Constructor that sets the base data of this ApplicationInstance.
| application | The application this class instantiates. |
| instanceName | a name that distinguishes this instance from other instances |
| configPath | path to the config file of this instance |
Definition at line 156 of file ApplicationInstance.cpp.
Here is the call graph for this function:| void addProperty | ( | std::string | name, |
| std::string | value ) |
Adds a new property with the specified name and value to this ApplicationInstance.
| name | name of the new property |
| value | value of the new property |
Definition at line 288 of file ApplicationInstance.cpp.
Here is the call graph for this function:| bool adoptPidIfUnset | ( | int | newPid | ) |
Sets the pid to newPid, but only if no pid is currently known (i.e.
it is -1). Used when adopting a pid cached on disk, so that a concurrently started process wins.
Definition at line 268 of file ApplicationInstance.cpp.
| bool compareAndResetPid | ( | int | expectedPid | ) |
Sets the pid to -1, but only if it is still expectedPid.
The status poller and the starter/stopper threads all inspect and update the pid concurrently. Whoever observes that a process has died must clear only the pid it actually probed - an unconditional reset can wipe the pid a concurrent start has just stored, which would leave a running application marked as stopped indefinitely.
Definition at line 261 of file ApplicationInstance.cpp.
| void copyFrom | ( | ApplicationInstance & | other | ) |
copyFrom Copy the other instance configuration to this one.
| other | the instance to copy |
Definition at line 336 of file ApplicationInstance.cpp.
Here is the call graph for this function:| void deleteConfig | ( | ) |
| std::string getConfigDomain | ( | ) | const |
Definition at line 118 of file ApplicationInstance.cpp.
| std::string getConfigPath | ( | ) |
Definition at line 193 of file ApplicationInstance.cpp.
| std::string getEffectiveNodeName | ( | ) | const |
Definition at line 401 of file ApplicationInstance.cpp.
| bool getEnabled | ( | ) |
Definition at line 413 of file ApplicationInstance.cpp.
| std::string getInstanceName | ( | ) |
Definition at line 181 of file ApplicationInstance.cpp.
Here is the caller graph for this function:| std::string getNodeName | ( | ) | const |
Definition at line 395 of file ApplicationInstance.cpp.
| Data_Structure::Intent getPendingIntent | ( | ) | const |
The intent this application is currently moving towards, or None when idle.
Written by the ApplicationLifecycle that owns the application, so it is up to date as soon as a request has been made rather than only after the next status poll. The GUI uses it both to show the application as "Waiting" and to grey out the button of the operation that is under way.
Definition at line 383 of file ApplicationInstance.cpp.
| int getPid | ( | ) |
Definition at line 249 of file ApplicationInstance.cpp.
| Data_Structure::ScenarioPtr getScenario | ( | ) |
Definition at line 175 of file ApplicationInstance.cpp.
| std::string getStatus | ( | ) |
Returns the status.
Doesn't update automatically, is not necessarily synchronized with the actual status of the process. Use the Executor to get the actual status of this application.
Definition at line 232 of file ApplicationInstance.cpp.
| bool isConfigWritable | ( | ) |
Definition at line 372 of file ApplicationInstance.cpp.
| bool isReadOnly | ( | ) | const |
| void linkFrom | ( | ApplicationInstance & | other | ) |
linkFrom Link this instance configuration from the other instance.
| other | the source instance |
Definition at line 326 of file ApplicationInstance.cpp.
Here is the call graph for this function:| void load | ( | bool | firstLoad = false | ) |
Loades the IceProperties from the configPath Firstload determins if properties that equal their default value get uncommented.
Definition at line 355 of file ApplicationInstance.cpp.
Here is the call graph for this function:
Here is the caller graph for this function:| void makeLocal | ( | ) |
Make a local copy of this instance if it is linked and nothing otherwise.
Definition at line 306 of file ApplicationInstance.cpp.
Here is the call graph for this function:| void modifyProperty | ( | std::string | name, |
| std::string | value ) |
Changes the value of the specified property.
| name | name of the property whose value is to be changed |
| value | new value of the property |
Definition at line 275 of file ApplicationInstance.cpp.
Here is the call graph for this function:| void resetConfigPath | ( | ) |
resetConfigPath.
should be called when the instanceName is changed/ deletes the old cfg file and resets the local config Path to where the file should be you should call save after this
Definition at line 205 of file ApplicationInstance.cpp.
Here is the call graph for this function:| void save | ( | ) |
Saves the IceProperties to the configPath.
Definition at line 299 of file ApplicationInstance.cpp.
Here is the caller graph for this function:| void setConfigDomain | ( | const std::string & | value | ) |
Definition at line 124 of file ApplicationInstance.cpp.
| void setConfigPath | ( | std::string | configPath | ) |
Sets the config path of this ApplicationInstance.
| new | config path |
Definition at line 199 of file ApplicationInstance.cpp.
| void setEnabled | ( | bool | enabled | ) |
Definition at line 419 of file ApplicationInstance.cpp.
| void setInstanceName | ( | std::string | newName | ) |
Sets the name of this ApplicationInstance.
| new | name |
Definition at line 187 of file ApplicationInstance.cpp.
| void setNodeName | ( | std::string | nodeName | ) |
Definition at line 407 of file ApplicationInstance.cpp.
| void setPendingIntent | ( | Intent | intent | ) |
Definition at line 389 of file ApplicationInstance.cpp.
| void setPid | ( | int | pid | ) |
Sets the pid of this ApplicationInstance.
This pid gets used by the Executor to stop this application, therefore it is not suggested to set this to random values. Set this to -1, if no pid is known.
| pid | new pid |
Definition at line 255 of file ApplicationInstance.cpp.
| bool setStatus | ( | const std::string & | status | ) |
Sets the status of this ApplicationInstance.
| new | status. Should be either "running" or "stopped" for Scenario statuses to work properly. |
Definition at line 238 of file ApplicationInstance.cpp.