36 "AdditionalObjectSchedulerCount", 10,
"Number of ObjectSchedulers to be added");
39 "HeartbeatRequired",
true,
"Whether the Heatbeat is required.");
42 "HeartbeatStartupMarginMS", 1000,
"Startup time for heartbeats");
44 "AggregatedRobotHealthTopic",
45 "Name of the AggregatedRobotHealthTopic");
76 void _preOnInitRobotUnit();
77 void _postFinishControlThreadInitialization();
87 isRunning(
const Ice::Current& = Ice::emptyCurrent)
const override
93 void aggregatedHeartbeat(RobotHealthState overallHealthState,
const Ice::Current&)
override;
96 isSimulation(
const Ice::Current& = Ice::emptyCurrent)
const override
106 std::int64_t additionalObjectSchedulerCount{0};
107 std::int64_t controlLoopStartTime{0};
108 std::int64_t heartbeatStartupMarginMS{0};
109 std::atomic_bool heartbeatRequired{
false};
110 std::atomic_long heartbeatMaxCycleMS{100};
111 std::atomic_long lastHeartbeat{0};
std::string prefix
Prefix of the properties such as namespace, domain, component name, etc.
PropertyDefinition< PropertyType > & defineOptionalProperty(const std::string &name, PropertyType defaultValue, const std::string &description="", PropertyDefinitionBase::PropertyConstness constness=PropertyDefinitionBase::eConstant)
ManagementPropertyDefinitions(std::string prefix)
This Module handles some general management tasks.
static Management & Instance()
Returns the singleton instance of this class.
bool isRunning(const Ice::Current &=Ice::emptyCurrent) const override
Returns whether the RobotUnit is running.
bool isSimulation(const Ice::Current &=Ice::emptyCurrent) const override
friend class ManagementAttorneyForControlThread
This class allows minimal access to private members of Management in a sane fashion for ControlThread...
void aggregatedHeartbeat(RobotHealthState overallHealthState, const Ice::Current &) override
ModuleBasePropertyDefinitions(std::string prefix)
RobotUnitState getRobotUnitState() const
Returns the RobotUnit's State.
void throwIfInControlThread(const std::string &fnc) const
Throws if the current thread is the ControlThread.
static ModuleBase & Instance()
Returns the singleton instance of this class.