Go to the documentation of this file.
33 const std::unique_lock lock{ss2StateMutex};
35 currentSS2State = state;
37 if (currentSS2State == EmergencyStopState::eEmergencyStopActive)
42 this->emergencyStopTopic->reportEmergencyStopState(currentSS2State);
47 const ::Ice::Current&)
53 if (targetState == EmergencyStopState::eEmergencyStopInactive and
65 const std::shared_lock lock{ss2StateMutex};
67 return currentSS2State;
74 getProperty<std::string>(
"EmergencyStopTopic").getValue());
80 emergencyStopTopic = armarx::ManagedIceObject::getTopic<EmergencyStopListenerPrx>(
81 getProperty<std::string>(
"EmergencyStopTopic").getValue());
EmergencyStopState trySetEmergencyStopState(EmergencyStopState targetState, const ::Ice::Current &=Ice::emptyCurrent) override
Try set the SS2 emergency stop state if it is safe.
EmergencyStopState getEmergencyStopState(const ::Ice::Current &=Ice::emptyCurrent) const override
std::string getConfigIdentifier()
Retrieve config identifier for this component as set in constructor.
void offeringTopic(const std::string &name)
Registers a topic for retrival after initialization.
void onConnectComponent() override
void onInitComponent() override
armarx::PropertyDefinitionsPtr createPropertyDefinitions() override
IceUtil::Handle< class PropertyDefinitionContainer > PropertyDefinitionsPtr
PropertyDefinitions smart pointer type.
This file offers overloads of toIce() and fromIce() functions for STL container types.
void setEmergencyStopState(EmergencyStopState state, const ::Ice::Current &=Ice::emptyCurrent) override
Sets the state of the EmergencyStop and sends the new state immediatly over the specified topic.
static Duration MilliSeconds(std::int64_t milliSeconds)
Constructs a duration in milliseconds.