File tree 3 files changed +25
-7
lines changed
3 files changed +25
-7
lines changed Original file line number Diff line number Diff line change @@ -7,7 +7,7 @@ from std_msgs.msg import Header
7
7
if __name__ == '__main__' :
8
8
9
9
a = Header
10
- rospy .init_node ('python_node' , anonymous = True )
10
+ rospy .init_node ('python_node' , anonymous = False )
11
11
12
12
controller = cnt .Controller ()
13
13
Original file line number Diff line number Diff line change
1
+ use rosrust;
2
+ use std:: sync:: Arc ;
3
+
4
+ pub struct Controller {
5
+ subscriber : Arc < rosrust:: Subscriber > ,
6
+ }
7
+
8
+
9
+ impl Controller {
10
+
11
+ pub fn new ( ) -> Controller {
12
+
13
+ let publisher = Arc :: new ( rosrust:: publish ( "rust_to_cpp" , 0 ) . unwrap ( ) ) ;
14
+ let subscriber = Arc :: new ( rosrust:: subscribe ( "python_to_rust" , 1 , move |v : rosrust_msg:: std_msgs:: Header | {
15
+ publisher. send ( v) . unwrap ( ) ;
16
+ } ) . unwrap ( ) ) ;
17
+
18
+ Controller {
19
+ subscriber,
20
+ }
21
+ }
22
+ }
Original file line number Diff line number Diff line change 1
1
use rosrust;
2
+ extern crate rust_node;
2
3
3
4
fn main ( ) {
4
5
5
6
rosrust:: init ( "rust_node" ) ;
6
7
7
- let publisher = rosrust:: publish ( "rust_to_cpp" , 0 ) . unwrap ( ) ;
8
- let subscriber_info = rosrust:: subscribe ( "python_to_rust" , 1 , move |v : rosrust_msg:: std_msgs:: Header | {
9
- rosrust:: ros_info!( "Received: {}" , v. seq) ;
10
- publisher. send ( v) . unwrap ( ) ;
11
- } )
12
- . unwrap ( ) ;
8
+ let controller = rust_node:: Controller :: new ( ) ;
13
9
14
10
rosrust:: spin ( ) ;
15
11
}
You can’t perform that action at this time.
0 commit comments