Support #2168

Bag-cat sometimes doesnt output data when scope ends with /

Added by C. Emmerich about 9 years ago. Updated about 9 years ago.

Status:RejectedStart date:02/05/2015
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:-
Target version:-

Description

When trying to display data of scope /flexirob/lwr/status/collision in the attached .tide file with bag-cat, the outcome depends on whether I put a '/' at the end of the scope or not. That is,

/vol/toolkit/nightly/trusty/x86_64/last/bin/bag-catcl0.12 -c /flexirob/lwr/status/collision -l /vol/flexirob/releases/nightly/share/rst0.12/proto/stable/rst/robot/RobotCollision.proto -I /vol/flexirob/releases/nightly/share/rst0.12/proto/stable/ -I /vol/flexirob/releases/nightly/share/rst0.12/proto/sandbox/ /vol/flexirob/WeihuiTest/experiment_christian/trainedNetworks/Towers/ELM1/towers3.tide 

outputs the following as expected,
...
#<ROBOT-COLLISION {100E0EA4D3}>
  Kind            : EXTERNAL
  Collision-Detail: #<OBJECT-COLLISION {100E0EA513}>
    Geometry: #<COLLISION-GEOMETRY {100E0EA563}>
      Contact-Points: <empty sequence>
    Object-1: "lwr_link3" 
    Object-2: "tower" 
...

but adding a '/' to the end of the scope
/vol/toolkit/nightly/trusty/x86_64/last/bin/bag-catcl0.12 -c /flexirob/lwr/status/collision/ -l /vol/flexirob/releases/nightly/share/rst0.12/proto/stable/rst/robot/RobotCollision.proto -I /vol/flexirob/releases/nightly/share/rst0.12/proto/stable/ -I /vol/flexirob/releases/nightly/share/rst0.12/proto/sandbox/ /vol/flexirob/WeihuiTest/experiment_christian/trainedNetworks/Towers/ELM1/towers3.tide

results in an empty/no output.

Is that a bug? Do I anything wrong? Or is this expected behavior?

towers3.tide (30.8 MB) C. Emmerich, 02/06/2015 04:12 PM

History

#1 Updated by J. Moringen about 9 years ago

  • Status changed from New to Rejected

The bag tools use regular expressions which can match any substring to select channels. In this case the, channel name is /flexirob/lwr/status/collision s /:.rst.robot.RobotCollision. Therefore:

match "/flexirob/lwr/status/collision"  "/flexirob/lwr/status/collisions/:.rst.robot.RobotCollision" 
=> substring match                       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
match "/flexirob/lwr/status/collision/" "/flexirob/lwr/status/collisions/:.rst.robot.RobotCollision" 
=> mismatch                              ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^

#2 Updated by C. Emmerich about 9 years ago

Stupid me... Thx!

Also available in: Atom PDF