/* * Copyright (c) Contributors to the Open 3D Engine Project. * For complete copyright and license terms please see the LICENSE at the root of this distribution. * * SPDX-License-Identifier: Apache-2.0 OR MIT * */ #pragma once #include #include #include #include #include namespace ROS2SimulationInterfaces { class StepSimulationServiceHandler : public ROS2::ROS2ServiceBase , public ISimulationFeaturesBase , private AZ::TickBus::Handler { public: AZStd::string_view GetTypeName() const override { return "StepSimulation"; } AZStd::string_view GetDefaultName() const override { return "step_simulation"; } AZStd::unordered_set GetProvidedFeatures() override; AZStd::optional HandleServiceRequest(const std::shared_ptr header, const Request& request) override; private: // AZ::TickBus::Handler overrides void OnTick(float deltaTime, AZ::ScriptTimePoint time) override; }; } // namespace ROS2SimulationInterfaces