SMACC2
smacc2
include
smacc2
client_bases
smacc_action_client.hpp
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
#pragma once
22
23
#include <
smacc2/smacc_client.hpp
>
24
#include <
smacc2/smacc_state_machine.hpp
>
25
26
#include <rclcpp_action/client.hpp>
27
28
namespace
smacc2
29
{
30
namespace
client_bases
31
{
32
// This class interface shows the basic set of methods that
33
// a SMACC "resource" or "plugin" Action Client has
34
class
ISmaccActionClient
:
public
ISmaccClient
35
{
36
public
:
37
ISmaccActionClient
();
38
39
// The destructor. This is called when the object is not
40
// referenced anymore by its owner
41
virtual
~ISmaccActionClient
();
42
43
// Gets the ros path of the action...
44
inline
std::string
getNamespace
()
const
{
return
name_
; }
45
46
virtual
bool
cancelGoal
() = 0;
47
48
virtual
std::shared_ptr<rclcpp_action::ClientBase>
getClientBase
() = 0;
49
50
virtual
std::string
getName
()
const
{
return
name_
; }
51
52
protected
:
53
// The ros path where the action server is located
54
std::string
name_
;
55
};
56
}
// namespace client_bases
57
}
// namespace smacc2
smacc2::ISmaccClient
Definition:
smacc_client.hpp:45
smacc2::client_bases::ISmaccActionClient
Definition:
smacc_action_client.hpp:35
smacc2::client_bases::ISmaccActionClient::ISmaccActionClient
ISmaccActionClient()
Definition:
smacc_action_client.cpp:26
smacc2::client_bases::ISmaccActionClient::getNamespace
std::string getNamespace() const
Definition:
smacc_action_client.hpp:44
smacc2::client_bases::ISmaccActionClient::getClientBase
virtual std::shared_ptr< rclcpp_action::ClientBase > getClientBase()=0
smacc2::client_bases::ISmaccActionClient::getName
virtual std::string getName() const
Definition:
smacc_action_client.hpp:50
smacc2::client_bases::ISmaccActionClient::cancelGoal
virtual bool cancelGoal()=0
smacc2::client_bases::ISmaccActionClient::name_
std::string name_
Definition:
smacc_action_client.hpp:54
smacc2::client_bases::ISmaccActionClient::~ISmaccActionClient
virtual ~ISmaccActionClient()
Definition:
smacc_action_client.cpp:28
smacc2
Definition:
cp_topic_publisher.hpp:28
smacc_client.hpp
smacc_state_machine.hpp
Generated by
1.9.4