icub-client
opcSensation.h
Go to the documentation of this file.
1 #ifndef OPCSENSATION
2 #define OPCSENSATION
3 
4 #include <string>
5 #include <iostream>
6 #include <iomanip>
7 #include <map>
8 
9 #include <yarp/os/all.h>
10 #include <yarp/sig/all.h>
11 
12 #include "sensation.h"
13 
14 namespace icubclient {
15  class ICubClient;
16 }
17 
21 class OpcSensation: public Sensation
22 {
23 private:
25  yarp::os::BufferedPort<yarp::os::Bottle> known_entities_port;
26  yarp::os::BufferedPort<yarp::os::Bottle> unknown_entities_port;
27  yarp::os::BufferedPort<yarp::os::Bottle> homeoPort;
28  yarp::os::Mutex m_entity_bottles;
29 
36  void addToEntityList(yarp::os::Bottle& list, std::string type, std::string name);
37 
41  yarp::os::Bottle handleEntities();
42 
43 public:
44  OpcSensation() : iCub(nullptr) {
45 
46  }
47 
48  yarp::os::Bottle u_entities, k_entities, up_entities, kp_entities, p_entities, o_positions;
49  void configure();
50  void publish();
51 
58  int get_property(std::string name, std::string property);
59 
60  void close_ports();
61 };
62 
63 #endif
Grants access to high level motor commands (grasp, touch, look, goto, etc) of the robot as well as it...
Definition: icubClient.h:66
yarp::os::Bottle up_entities
Definition: opcSensation.h:48