.. _program_listing_file__tmp_ws_src_rmf_task_rmf_task_include_rmf_task_detail_impl_Activator.hpp: Program Listing for File impl_Activator.hpp =========================================== |exhale_lsh| :ref:`Return to documentation for file ` (``/tmp/ws/src/rmf_task/rmf_task/include/rmf_task/detail/impl_Activator.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__DETAIL__IMPL_ACTIVATOR_HPP #define RMF_TASK__DETAIL__IMPL_ACTIVATOR_HPP #include namespace rmf_task { //============================================================================== template void Activator::add_activator(Activate activator) { _add_activator( typeid(Description), [activator]( std::function get_state, const ConstParametersPtr& parameters, const Task::ConstBookingPtr& booking, const Task::Description& description, std::optional backup_state, std::function update, std::function checkpoint, std::function phase_finished, std::function task_finished) -> Task::ActivePtr { return activator( std::move(get_state), parameters, booking, static_cast(description), std::move(backup_state), std::move(update), std::move(checkpoint), std::move(phase_finished), std::move(task_finished)); }); } } // namespace rmf_task #endif // RMF_TASK__DETAIL__IMPL_ACTIVATOR_HPP