@ -148,19 +148,20 @@ int listener_main(int argc, char *argv[]) {
@@ -148,19 +148,20 @@ int listener_main(int argc, char *argv[]) {
int sub = - 1 ;
orb_id_t ID ;
if ( argc < 2 ) {
printf ( " need at least two arguments: topic name. [optional number of messages to print] \\ n " ) ;
printf ( " need at least two arguments: topic name. [optional number of messages to print] [optional instance] \\ n " ) ;
return 1 ;
}
""" )
print ( " \t unsigned num_msgs = (argc > 2) ? atoi(argv[2]) : 1; " )
print ( " \t unsigned topic_instance = (argc > 3) ? atoi(argv[3]) : 0; " )
print ( " \t if (strncmp(argv[1], \" %s \" ,50) == 0) { " % messages [ 0 ] )
print ( " \t \t sub = orb_subscribe(ORB_ID( %s )); " % messages [ 0 ] )
print ( " \t \t sub = orb_subscribe_multi (ORB_ID( %s ), topic_instance ); " % messages [ 0 ] )
print ( " \t \t ID = ORB_ID( %s ); " % messages [ 0 ] )
print ( " \t \t struct %s _s container; " % messages [ 0 ] )
print ( " \t \t memset(&container, 0, sizeof(container)); " )
for index , m in enumerate ( messages [ 1 : ] ) :
print ( " \t } else if (strncmp(argv[1], \" %s \" ,50) == 0) { " % m )
print ( " \t \t sub = orb_subscribe(ORB_ID( %s )); " % m )
print ( " \t \t sub = orb_subscribe_multi (ORB_ID( %s ), topic_instance ); " % m )
print ( " \t \t ID = ORB_ID( %s ); " % m )
print ( " \t \t struct %s _s container; " % m )
print ( " \t \t memset(&container, 0, sizeof(container)); " )
@ -173,7 +174,7 @@ for index,m in enumerate(messages[1:]):
@@ -173,7 +174,7 @@ for index,m in enumerate(messages[1:]):
print ( " \t \t \t if (updated) { " )
print ( " \t \t \t start_time = hrt_absolute_time(); " )
print ( " \t \t \t i++; " )
print ( " \t \t \t printf( \" \\ nTOPIC: %s # %% d \\ n \" , i); " % m )
print ( " \t \t \t printf( \" \\ nTOPIC: %s instance %% d # %% d \\ n \" , topic_instance , i);" % m )
print ( " \t \t \t orb_copy(ID,sub,&container); " )
print ( " \t \t \t printf( \" timestamp: % \" PRIu64 \" \\ n \" , container.timestamp); " )
for item in message_elements [ index + 1 ] :