## 0:only return value ## 1:minimal output ## 2:full output set DEBUG 2 #################### ##swig and tcl directories ## #################### set SWIG_DIR "@CONFIG_ITK_WRAP_TCL_SWIG_DIR@" set TCL_DIR "@CONFIG_ITK_WRAP_TCL_DIR@" #################### ##Define executables ##-Currently this is a full path. ##-Careful with win platforms to get this right #################### #################### ##Could eventually be replaced with cmake variables?? #################### set TCL_EXEC "@CONFIG_WRAP_ITK_ITKWISH_DIR@/itkwish" set IMG_COMPARE_EXEC "@IMAGE_COMPARE@" #################### ##This assumes full paths - could be rewritten if needed. #################### if {![file exists $TCL_EXEC]} { if {$DEBUG} { puts "Tcl Exec -- $TCL_EXEC -- is not valid" } exit 1 } if {![file exists $IMG_COMPARE_EXEC]} { if {$DEBUG} { puts "Image Comapre Exec -- $IMG_COMPARE_EXEC -- is not valid" } exit 1 } #################### ##Setup paths ## #################### switch -glob $tcl_platform(os) { Darwin* { if {[info exists env(DYLD_LIBRARY_PATH)]} { set env(DYLD_LIBRARY_PATH) "$SWIG_DIR:$env(DYLD_LIBRARY_PATH)" } else { set env(DYLD_LIBRARY_PATH) "$SWIG_DIR" } } Win* { if {[info exists env(PATH)]} { set env(PATH) "$SWIG_DIR;$env(PATH)" } else { set env(PATH) "$SWIG_DIR" } } default { if {[info exists env(LD_LIBRARY_PATH)]} { set env(LD_LIBRARY_PATH) "$SWIG_DIR:$env(LD_LIBRARY_PATH)" } else { set env(LD_LIBRARY_PATH) "$SWIG_DIR" } } } if {[info exists env(TCLLIBPATH)]} { set env(TCLLIBPATH) "$TCL_DIR $env(TCLLIBPATH)" } else { set env(TCLLIBPATH) "$TCL_DIR" } ##Skip -- if it exists if {[lindex $argv 0] == "--"} { set argv [lrange $argv 1 end] incr argc -1 } ##Find all of the comparisons and store them set compareList {} set argList {} for {set i 0} {$i < $argc} {incr i} { if {[lindex $argv $i] == "--compare"} { if {[expr $i+2] >= $argc} { if {$DEBUG} { puts "Syntax error: Consider rewriting" } exit 1 } incr i set inputImage [lindex $argv $i] incr i set outputImage [lindex $argv $i] lappend compareList [list $inputImage $outputImage] } else { lappend argList [lindex $argv $i] } } if {[llength $argList] < 1} { if {$DEBUG} { puts "You must give a command to run" } exit 1 } if {![file exists [lindex $argList 0]]} { if {$DEBUG} { puts "Tcl script -- [lindex $argList 0] -- is not valid" } exit 1 } if {$DEBUG} { puts -nonewline "Running test...." } if {[catch {eval "exec $TCL_EXEC [lindex $argList " "]"} err]} { if {$DEBUG} { puts "Failed with Error:" } if {$DEBUG > 1} { puts "==================" puts $err puts "==================" } exit 1 } else { if {$DEBUG} { puts "Succesful with Result:" } if {$DEBUG > 1} { puts "==================" puts $err puts "==================" } } foreach compare $compareList { if {$DEBUG} { puts -nonewline "Running comparisons..." } if {[catch {eval "exec $IMG_COMPARE_EXEC [join $compare " "]"} err]} { if {$DEBUG} { puts "Failed with Error:" } if {$DEBUG > 1} { puts "==================" puts $err puts "==================" } exit 1 } else { if {$DEBUG} { puts "Succesful with Result:" } if {$DEBUG > 1} { puts "==================" puts $err puts "==================" } } } exit 0