ITopController

class ITopController : virtual public IController
virtual ITopController::~ITopController()

virtual ETopControllerState ITopController::GetState() = 0

virtual void ITopController::WaitState(ETopControllerState state, double timeout) = 0

virtual PSubscription ITopController::SubscribeStateChange(TopControllerStateChangeHandler handler) = 0

virtual PSubscription ITopController::SubscribeAsynchronousException(AsynchronousExceptionHandler handler, bool includeHistory=false) = 0

virtual void ITopController::Run() = 0

virtual void ITopController::Stop() = 0

virtual std::chrono::system_clock::time_point ITopController::GetTime() = 0

virtual void ITopController::SetTime(const std::chrono::system_clock::time_point &time) = 0

virtual PAcquisition ITopController::ReserveAcquisition() = 0

virtual PSnapshot ITopController::ReserveSnapshot(ESnapshotMode mode) = 0

virtual PRobot ITopController::CreateRobot(const std::string &name) = 0

virtual PRobot ITopController::CreateRobotFromString(const std::string &urdf) = 0

virtual PRobot ITopController::CreateRobotFromFile(const std::string &filename) = 0

virtual PRobot ITopController::GetRobot(const std::string &name) const = 0

virtual std::vector<std::string> ITopController::GetRobotNames() const = 0

virtual std::map<std::string, PRobot> ITopController::GetRobots() const = 0

virtual PFrame ITopController::GetWorldFrame() const = 0

virtual void ITopController::ApplyModel(const std::string &xml, const std::vector<PSubController> &subControllers) = 0

virtual void ITopController::ApplyModelFromFile(const std::string &filename, const std::vector<PSubController> &subControllers) = 0

virtual SKeepAliveSettings ITopController::GetKeepAliveSettings(EEndpoint endpoint) = 0

virtual void ITopController::SetKeepAliveSettings(EEndpoint endpoint, const SKeepAliveSettings &settings) = 0