Go to the documentation of this file.
28 #include "../ManagedIceObject.h"
30 #include <ArmarXCore/interface/core/TimeServerInterface.h>
32 #include <shared_mutex>
47 virtual void call() = 0;
68 virtual public TimeServerRelay,
80 void stop(const ::Ice::Current& = Ice::emptyCurrent)
override;
81 void start(const ::Ice::Current& = Ice::emptyCurrent)
override;
82 void step(const ::Ice::Current& = Ice::emptyCurrent)
override;
83 void setSpeed(
Ice::Float newSpeed, const ::Ice::Current& = Ice::emptyCurrent)
override;
TimeServerInterfacePrx timeServerPrx
a handle for the MasterTimeServer
const VariantTypeId Float
void setSpeed(Ice::Float newSpeed, const ::Ice::Current &=Ice::emptyCurrent) override
void reportTime(::Ice::Long, const ::Ice::Current &=Ice::emptyCurrent) override
static void setApplicationTimeServerName(const std::string &name)
IceUtil::Time time
the current time
void onDisconnectComponent() override
Hook for subclass.
A local time server that gets its time from the MasterTimeServer.
Ice::Long getTime(const ::Ice::Current &=Ice::emptyCurrent) override
void unregisterTimer(CallbackReceiver *callback)
unregister a timer
std::shared_ptr< CallbackReceiver > CallbackReceiverPtr
TimeServerListenerPrx timeTopicPrx
a handle for the topic "Time"
LocalTimeServer()
Please use LocalTimeServer::getApplicationtimeserver() to access your local timeserver.
Used by CallbackWaitLock.
CallbackReceiver * callback
void stop(const ::Ice::Current &=Ice::emptyCurrent) override
void onInitComponent() override
void step(const ::Ice::Current &=Ice::emptyCurrent) override
armarx::core::time::DateTime Time
std::string getDefaultName() const override
Ice::Int getStepTimeMS(const ::Ice::Current &=Ice::emptyCurrent) override
The ManagedIceObject is the base class for all ArmarX objects.
Ice::Float getSpeed(const ::Ice::Current &=Ice::emptyCurrent) override
void registerTimer(IceUtil::Time endTime, CallbackReceiver *callback)
register a callack to call at endTime
static LocalTimeServerPtr getApplicationTimeServer()
Get the applications LocalTimeServer instance.
std::vector< RegisteredTimer > scheduledTasks
void onConnectComponent() override
std::shared_mutex timeMutex
virtual ~CallbackReceiver()
Main class of an ArmarX process.
This file offers overloads of toIce() and fromIce() functions for STL container types.
void start(const ::Ice::Current &=Ice::emptyCurrent) override
std::mutex scheduledTasksMutex
used for locking scheduledTasks