YARP
Yet Another Robot Platform
Node.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2006-2020 Istituto Italiano di Tecnologia (IIT)
3  * All rights reserved.
4  *
5  * This software may be modified and distributed under the terms of the
6  * BSD-3-Clause license. See the accompanying LICENSE file for details.
7  */
8 
9 #ifndef YARP_OS_NODE_H
10 #define YARP_OS_NODE_H
11 
12 #include <yarp/conf/compiler.h>
13 
14 #include <yarp/os/Contactables.h>
15 
16 namespace yarp {
17 namespace os {
18 
27 {
28 public:
29  Node();
30  Node(const std::string& name);
31  virtual ~Node();
32 
38  void add(Contactable& contactable) override;
39 
45  void remove(Contactable& contactable) override;
46 
55  virtual Contact query(const std::string& name,
56  const std::string& category = "") override;
57 
62  void update(Contactable& contactable);
63 
68  void prepare(const std::string& name);
69 
73  void interrupt();
74 
79  Contact where();
80 
81 private:
82  class Helper;
83  Helper* const mPriv;
84 };
85 
86 } // namespace os
87 } // namespace yarp
88 
89 #endif // YARP_OS_NODE_H
yarp::os::Node::Helper
Definition: Node.cpp:183
YARP_os_API
#define YARP_os_API
Definition: api.h:19
yarp::os::Contactables
The yarp::os::Contactables class.
Definition: Contactables.h:24
Contactables.h
compiler.h
yarp::os::Node
The Node class.
Definition: Node.h:27
yarp
The main, catch-all namespace for YARP.
Definition: environment.h:18
yarp::os::Contact
Represents how to reach a part of a YARP network.
Definition: Contact.h:39
yarp::os::Contactable
An abstract port.
Definition: Contactable.h:38