SMACC2
Loading...
Searching...
No Matches
smacc2_client_library
cl_nav2z
src
cl_nav2z
client_behaviors
cb_load_waypoints_file.cpp
Go to the documentation of this file.
1
// Copyright 2021 RobosoftAI Inc.
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
// http://www.apache.org/licenses/LICENSE-2.0
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14
15
/*****************************************************************************************************************
16
*
17
* Authors: Pablo Inigo Blasco, Brett Aldrich
18
*
19
******************************************************************************************************************/
20
21
#include <
cl_nav2z/client_behaviors/cb_load_waypoints_file.hpp
>
22
#include <
cl_nav2z/components/waypoints_navigator/cp_waypoints_navigator_base.hpp
>
23
#include <
smacc2/smacc_client_behavior.hpp
>
24
25
namespace
cl_nav2z
26
{
27
28
using namespace
smacc2
;
29
CbLoadWaypointsFile::CbLoadWaypointsFile
(std::string filepath) : filepath_(filepath) {}
30
31
CbLoadWaypointsFile::CbLoadWaypointsFile
(std::string parameter_name, std::string packagenamespace)
32
: parameterName_(parameter_name), packageNamespace_(packagenamespace)
33
{
34
}
35
36
void
CbLoadWaypointsFile::onEntry
()
37
{
38
requiresComponent
(
39
waypointsNavigator_
, ComponentRequirement::HARD);
// this is a component from the
40
// nav2z_client library
41
42
if
(
filepath_
)
43
{
44
this->
waypointsNavigator_
->
loadWayPointsFromFile
(
filepath_
.value());
45
}
46
else
47
{
48
RCLCPP_INFO(
getLogger
(),
"Loading waypoints from parameter %s"
,
parameterName_
.value().c_str());
49
this->
waypointsNavigator_
->
loadWaypointsFromYamlParameter
(
50
parameterName_
.value(),
packageNamespace_
.value());
51
}
52
53
// change this to skip some points of the yaml file, default = 0
54
waypointsNavigator_
->
currentWaypoint_
= 0;
55
this->
postSuccessEvent
();
56
}
57
58
void
CbLoadWaypointsFile::onExit
() {}
59
}
// namespace cl_nav2z
cb_load_waypoints_file.hpp
cl_nav2z::CpWaypointNavigatorBase::loadWayPointsFromFile
void loadWayPointsFromFile(std::string filepath)
Definition
cp_waypoints_navigator.cpp:453
cl_nav2z::CpWaypointNavigatorBase::loadWaypointsFromYamlParameter
void loadWaypointsFromYamlParameter(std::string parameter_name, std::string yaml_file_package_name)
Definition
cp_waypoints_navigator.cpp:160
cl_nav2z::CpWaypointNavigatorBase::currentWaypoint_
long currentWaypoint_
Definition
cp_waypoints_navigator_base.hpp:82
smacc2::ISmaccClientBehavior::getLogger
virtual rclcpp::Logger getLogger() const
Definition
smacc_client_behavior_base.cpp:43
smacc2::ISmaccClientBehavior::requiresComponent
void requiresComponent(SmaccComponentType *&storage, ComponentRequirement requirementType=ComponentRequirement::SOFT)
Definition
smacc_client_behavior_impl.hpp:73
smacc2::SmaccAsyncClientBehavior::postSuccessEvent
void postSuccessEvent()
Definition
smacc_client_async_behavior.cpp:153
cp_waypoints_navigator_base.hpp
cl_nav2z
Definition
cl_nav2z.hpp:23
smacc2
Definition
callback_counter_semaphore.hpp:30
smacc_client_behavior.hpp
cl_nav2z::CbLoadWaypointsFile::onExit
void onExit() override
Definition
cb_load_waypoints_file.cpp:58
cl_nav2z::CbLoadWaypointsFile::packageNamespace_
std::optional< std::string > packageNamespace_
Definition
cb_load_waypoints_file.hpp:42
cl_nav2z::CbLoadWaypointsFile::CbLoadWaypointsFile
CbLoadWaypointsFile(std::string filepath)
Definition
cb_load_waypoints_file.cpp:29
cl_nav2z::CbLoadWaypointsFile::filepath_
std::optional< std::string > filepath_
Definition
cb_load_waypoints_file.hpp:39
cl_nav2z::CbLoadWaypointsFile::parameterName_
std::optional< std::string > parameterName_
Definition
cb_load_waypoints_file.hpp:41
cl_nav2z::CbLoadWaypointsFile::onEntry
void onEntry() override
Definition
cb_load_waypoints_file.cpp:36
cl_nav2z::CbLoadWaypointsFile::waypointsNavigator_
cl_nav2z::CpWaypointNavigatorBase * waypointsNavigator_
Definition
cb_load_waypoints_file.hpp:44
Generated by
1.12.0