aaa
Dependencies: mbed BNO055_fusion Adafruit_GFX ros_lib_kinetic
myRos.h@3:a45557a0dcb8, 2018-12-11 (annotated)
- Committer:
- nakedt555
- Date:
- Tue Dec 11 17:51:47 2018 +0000
- Revision:
- 3:a45557a0dcb8
- Parent:
- 1:bdd17feaa4ce
- Child:
- 4:cf1a4e503974
12/10iikanji
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
nakedt555 | 0:10f626cf3ec4 | 1 | #ifndef _MY_ROS_H_ |
nakedt555 | 0:10f626cf3ec4 | 2 | #define _MY_ROS_H_ |
nakedt555 | 0:10f626cf3ec4 | 3 | |
nakedt555 | 1:bdd17feaa4ce | 4 | #include "type.h" |
nakedt555 | 1:bdd17feaa4ce | 5 | #include "odom.h" |
nakedt555 | 1:bdd17feaa4ce | 6 | |
nakedt555 | 1:bdd17feaa4ce | 7 | #include <mbed.h> |
nakedt555 | 1:bdd17feaa4ce | 8 | #include <ros.h> |
nakedt555 | 1:bdd17feaa4ce | 9 | #include <ros/time.h> |
nakedt555 | 1:bdd17feaa4ce | 10 | #include <std_msgs/Bool.h> |
nakedt555 | 1:bdd17feaa4ce | 11 | #include <geometry_msgs/Point.h> |
nakedt555 | 1:bdd17feaa4ce | 12 | #include <geometry_msgs/PointStamped.h> |
nakedt555 | 1:bdd17feaa4ce | 13 | #include <std_msgs/Empty.h> |
nakedt555 | 0:10f626cf3ec4 | 14 | |
nakedt555 | 0:10f626cf3ec4 | 15 | #define COURT_RED false |
nakedt555 | 0:10f626cf3ec4 | 16 | #define COURT_BLUE true |
nakedt555 | 0:10f626cf3ec4 | 17 | |
nakedt555 | 1:bdd17feaa4ce | 18 | void ack_from_pc_cb(const std_msgs::Empty&); |
nakedt555 | 1:bdd17feaa4ce | 19 | |
nakedt555 | 1:bdd17feaa4ce | 20 | class My_Ros : public Odom_Abstract |
nakedt555 | 0:10f626cf3ec4 | 21 | { |
nakedt555 | 1:bdd17feaa4ce | 22 | public: |
nakedt555 | 1:bdd17feaa4ce | 23 | |
nakedt555 | 0:10f626cf3ec4 | 24 | private: |
nakedt555 | 1:bdd17feaa4ce | 25 | ros::NodeHandle nh_; |
nakedt555 | 1:bdd17feaa4ce | 26 | bool court_color_; |
nakedt555 | 0:10f626cf3ec4 | 27 | |
nakedt555 | 0:10f626cf3ec4 | 28 | public: |
nakedt555 | 1:bdd17feaa4ce | 29 | //Constructor |
nakedt555 | 3:a45557a0dcb8 | 30 | My_Ros(Odom *odom) : court_color_(COURT_RED){ |
nakedt555 | 3:a45557a0dcb8 | 31 | set_instance(odom); |
nakedt555 | 3:a45557a0dcb8 | 32 | |
nakedt555 | 1:bdd17feaa4ce | 33 | //ROS node initialize |
nakedt555 | 1:bdd17feaa4ce | 34 | nh_.getHardware()->setBaud(115200); |
nakedt555 | 1:bdd17feaa4ce | 35 | nh_.initNode(); |
nakedt555 | 1:bdd17feaa4ce | 36 | |
nakedt555 | 1:bdd17feaa4ce | 37 | initialize(); |
nakedt555 | 1:bdd17feaa4ce | 38 | } |
nakedt555 | 1:bdd17feaa4ce | 39 | |
nakedt555 | 1:bdd17feaa4ce | 40 | //Setter |
nakedt555 | 1:bdd17feaa4ce | 41 | void set_court_color(bool court_color){ |
nakedt555 | 1:bdd17feaa4ce | 42 | court_color_ = court_color; |
nakedt555 | 1:bdd17feaa4ce | 43 | } |
nakedt555 | 1:bdd17feaa4ce | 44 | template<typename SubscriberT> |
nakedt555 | 1:bdd17feaa4ce | 45 | void set_subscliber(SubscriberT& s){ |
nakedt555 | 1:bdd17feaa4ce | 46 | nh_.subscribe(s); |
nakedt555 | 1:bdd17feaa4ce | 47 | } |
nakedt555 | 1:bdd17feaa4ce | 48 | |
nakedt555 | 1:bdd17feaa4ce | 49 | //amcl parameter の初期化 |
nakedt555 | 1:bdd17feaa4ce | 50 | void enable_initialize_amcl(); |
nakedt555 | 1:bdd17feaa4ce | 51 | |
nakedt555 | 0:10f626cf3ec4 | 52 | private: |
nakedt555 | 1:bdd17feaa4ce | 53 | //Initialise |
nakedt555 | 1:bdd17feaa4ce | 54 | void initialize(); |
nakedt555 | 1:bdd17feaa4ce | 55 | |
nakedt555 | 1:bdd17feaa4ce | 56 | //Publisher |
nakedt555 | 1:bdd17feaa4ce | 57 | void court_color_publisher(); |
nakedt555 | 1:bdd17feaa4ce | 58 | void initial_pose_publisher(); |
nakedt555 | 1:bdd17feaa4ce | 59 | void pose_publisher(); |
nakedt555 | 1:bdd17feaa4ce | 60 | |
nakedt555 | 3:a45557a0dcb8 | 61 | //Overlap function |
nakedt555 | 3:a45557a0dcb8 | 62 | virtual void loop(); |
nakedt555 | 0:10f626cf3ec4 | 63 | }; |
nakedt555 | 0:10f626cf3ec4 | 64 | |
nakedt555 | 0:10f626cf3ec4 | 65 | #endif |