Revision: 8856
http://playerstage.svn.sourceforge.net/playerstage/?rev=8856&view=rev
Author: jpgr87
Date: 2010-08-15 21:22:14 +0000 (Sun, 15 Aug 2010)
Log Message:
-----------
Applied patch #3043954: fixes for saphconv (for reading Pioneer parameters)
Modified Paths:
--------------
code/player/trunk/server/codetools/saphconv/mktypedef.tcl
code/player/trunk/server/codetools/saphconv/parseparam.tcl
Modified: code/player/trunk/server/codetools/saphconv/mktypedef.tcl
===================================================================
--- code/player/trunk/server/codetools/saphconv/mktypedef.tcl 2010-08-15
21:19:54 UTC (rev 8855)
+++ code/player/trunk/server/codetools/saphconv/mktypedef.tcl 2010-08-15
21:22:14 UTC (rev 8856)
@@ -74,21 +74,40 @@
foreach name [lsort [array names vars]] {
set value $vars($name)
+ if {[string equal [string index $value 0] ";"]} {
+ # value was missing
+ set value ""
+ set comment [lrange $line 2 end]
+ } else {
+ set comment [lrange $line 3 end]
+ }
if {![string compare $name Class] ||
+ ![string compare $name LaserType] ||
![string compare $name LaserPort] ||
+ ![string compare $name LaserPortType] ||
+ ![string compare $name LaserUnitsChoice] ||
+ ![string compare $name CompassType] ||
+ ![string compare $name CompassPort] ||
+ ![string compare $name GPSType] ||
+ ![string compare $name GPSPort] ||
![string compare $name LaserIgnore] ||
- ![string compare $name Map] ||
- ![string compare $name Subclass]} {
- puts " char* ${name};"
+ ![string compare $name Subclass] ||
+ ![string compare $value ""]} {
+ set isstring 1
+ } else {
+ set isstring 0
+ }
+
+ if {$isstring} {
+ puts " char* ${name}; // $comment"
} elseif {![string compare $value true] ||
![string compare $value false] ||
![string compare $value [expr round($value)]] ||
![string compare $name SonarNum]} {
-
- puts " int $name; // [lrange $line 3 end]"
+ puts " int $name; // $comment"
} else {
- puts " double $name; // [lrange $line 3 end]"
+ puts " double $name; // $comment"
}
}
puts " sonar_pose_t sonar_pose\[$maxsonarnum\];"
Modified: code/player/trunk/server/codetools/saphconv/parseparam.tcl
===================================================================
--- code/player/trunk/server/codetools/saphconv/parseparam.tcl 2010-08-15
21:19:54 UTC (rev 8855)
+++ code/player/trunk/server/codetools/saphconv/parseparam.tcl 2010-08-15
21:22:14 UTC (rev 8856)
@@ -110,29 +110,46 @@
if {[string length $name]} {
puts -nonewline " "
+
if {![string compare $name Class] ||
+ ![string compare $name LaserType] ||
+ ![string compare $name LaserPort] ||
+ ![string compare $name LaserPortType] ||
+ ![string compare $name LaserUnitsChoice] ||
+ ![string compare $name CompassType] ||
+ ![string compare $name CompassPort] ||
+ ![string compare $name GPSType] ||
+ ![string compare $name GPSPort] ||
+ ![string compare $name LaserIgnore] ||
![string compare $name Subclass] ||
- ![string compare $name LaserPort] ||
- ![string compare $name Map] ||
- ![string compare $name LaserIgnore]} {
+ ![string compare $value ""]} {
+ set isstring 1
+ } else {
+ set isstring 0
+ }
+
+ if {$isstring} {
puts -nonewline "\""
}
- if {![string compare $value ";"]} {
- set value ""
+ if {![string compare $value ";"] || ![string compare $value ""]} {
+ # no value in the .p file (; indicates we got the start of comment
instead)
+ if {$isstring} {
+ puts -nonewline ""
+ } else {
+ puts -nonewline "0"
+ }
+ } else {
+ puts -nonewline "$value"
}
- puts -nonewline "$value"
- if {![string compare $name Class] ||
- ![string compare $name Subclass] ||
- ![string compare $name LaserPort] ||
- ![string compare $name Map] ||
- ![string compare $name LaserIgnore]} {
+ if {$isstring} {
puts -nonewline "\""
}
- puts ","
+ puts ", // $name"
set name ""
}
}
+ puts " // sonar_pose (from SonarUnit param):"
puts " \{"
foreach name [lsort -dictionary [array names thisvars "SonarUnit*"]] {
puts " \{ [join [split $thisvars($name)] ", "] \},"
@@ -144,6 +161,7 @@
#}
puts " \},"
+ puts " // bumper geom:"
puts " \{"
set i 0
while {$i < $maxbumpernum} {
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
This SF.net email is sponsored by
Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev
_______________________________________________
Playerstage-commit mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/playerstage-commit