.. _program_listing_file__tmp_ws_src_rmf_task_rmf_task_sequence_include_rmf_task_sequence_phases_SimplePhase.hpp: Program Listing for File SimplePhase.hpp ======================================== |exhale_lsh| :ref:`Return to documentation for file ` (``/tmp/ws/src/rmf_task/rmf_task_sequence/include/rmf_task_sequence/phases/SimplePhase.hpp``) .. |exhale_lsh| unicode:: U+021B0 .. UPWARDS ARROW WITH TIP LEFTWARDS .. code-block:: cpp /* * Copyright (C) 2021 Open Source Robotics Foundation * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * */ #ifndef RMF_TASK_SEQUENCE__PHASES__SIMPLEPHASE_HPP #define RMF_TASK_SEQUENCE__PHASES__SIMPLEPHASE_HPP #include #include namespace rmf_task_sequence { namespace phases { //============================================================================== class SimplePhase : public Phase { public: class Active; class Description; using DescriptionPtr = std::shared_ptr; static void add( Phase::Activator& phase_activator, const Event::ConstInitializerPtr& event_initializer); }; //============================================================================== class SimplePhase::Description : public Phase::Description { public: static DescriptionPtr make( Event::ConstDescriptionPtr final_event, std::optional category = std::nullopt, std::optional detail = std::nullopt); const Event::ConstDescriptionPtr& final_event() const; Description& final_event(Event::ConstDescriptionPtr new_final_event); const std::optional& category() const; Description& category(std::optional new_category); const std::optional& detail() const; Description& detail(std::optional new_detail); // Documentation inherited Activity::ConstModelPtr make_model( State invariant_initial_state, const Parameters& parameters) const final; // Documentation inherited Header generate_header( const State& initial_state, const Parameters& parameters) const final; class Implementation; private: Description(); rmf_utils::impl_ptr _pimpl; }; } // namespace phases } // namespace rmf_task_sequence #endif // RMF_TASK_SEQUENCE__PHASES__SIMPLEPHASE_HPP