ros2_canopen  master
C++ ROS CANopen Library
node_canopen_driver_interface.hpp
Go to the documentation of this file.
1 // Copyright 2022 Christoph Hellmann Santos
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 #ifndef NODE_CANOPEN_DRIVER_INTERFACE_HPP_
16 #define NODE_CANOPEN_DRIVER_INTERFACE_HPP_
17 
18 #include <lely/coapp/master.hpp>
19 #include <lely/ev/exec.hpp>
20 
21 namespace ros2_canopen
22 {
23 namespace node_interfaces
24 {
33 {
34 public:
43  virtual void set_master(
44  std::shared_ptr<lely::ev::Executor> exec,
45  std::shared_ptr<lely::canopen::AsyncMaster> master) = 0;
46 
55  virtual void demand_set_master() = 0;
56 
64  virtual void init() = 0;
65 
73  virtual void configure() = 0;
74 
82  virtual void activate() = 0;
83 
91  virtual void deactivate() = 0;
92 
100  virtual void cleanup() = 0;
101 
108  virtual void shutdown() = 0;
109 
114  virtual void add_to_master() = 0;
115 
120  virtual void remove_from_master() = 0;
121 };
122 } // namespace node_interfaces
123 } // namespace ros2_canopen
124 
125 #endif
Node Canopen Driver Interface.
Definition: node_canopen_driver_interface.hpp:33
virtual void demand_set_master()=0
Demand set Master.
virtual void set_master(std::shared_ptr< lely::ev::Executor > exec, std::shared_ptr< lely::canopen::AsyncMaster > master)=0
Set Master.
NodeCanopenDriverInterface()
Definition: node_canopen_driver_interface.hpp:35
virtual void activate()=0
Activate the driver.
virtual void shutdown()=0
Shutdown the driver.
virtual void remove_from_master()=0
Remove the driver from master.
virtual void deactivate()=0
Deactivate the driver.
virtual void configure()=0
Configure the driver.
virtual void add_to_master()=0
Add the driver to master.
virtual void init()=0
Initialise the driver.
Definition: configuration_manager.hpp:28