#!@BASHREAL@ # Don't want to run this at all as part of automated test [ -n "$STP_TEST_SUITE" ] && exit 77 if [[ -n "$STP_TEST_LOG_PREFIX" ]] ; then redir="${STP_TEST_LOG_PREFIX}${0##*/}_$$.log" if [[ -n $BUILD_VERBOSE ]] ; then exec > >(tee -a "$redir" >&3) else exec 1>>"$redir" fi exec 2>&1 fi if [[ -z $srcdir || $srcdir = "." ]] ; then sdir=$(pwd) elif grep -q '^/' <<< "$srcdir" ; then sdir="$srcdir" else sdir="$(pwd)/$srcdir" fi if [ -z "$STP_DATA_PATH" ] ; then STP_DATA_PATH="$sdir/../src/xml" export STP_DATA_PATH fi if [ -z "$STP_MODULE_PATH" ] ; then STP_MODULE_PATH="$sdir/../src/main:$sdir/../src/main/.libs" export STP_MODULE_PATH fi passes='1,1,1 2,1,1 1,2,1 1,2,2 1,4,1 4,1,1 1,8,1 1,16,1 4,2,1 4,4,1 4,8,1 4,16,1 2,2,1 2,4,1 2,8,1 2,16,1 1,4,2 1,8,2 1,16,2 2,2,2 2,4,2 2,8,2 2,16,2 8,1,1 4,4,2 4,8,2 8,2,1 8,4,1 8,8,1 16,1,1 16,2,1 16,4,1' # All numbers of jets used by any printer. jets='1 2 4 8 15 16 20 21 24 29 32 42 47 48 59 60 64 90 96 128 144 180 192 208 358 360 384' # All nozzle separations used by any printer at any resolution. separations='1 2 3 4 6 8 12 16 24' # Weave strategies strategies='0 1 2 3 4' # Strategy 5 is currently broken #strategies='5' # Color head arrangement (for offset-head printers such as the Epson C80) arrangements='0 1 2 3' # Set to the largest possible multiple of the number of heads and # the nozzle separation. At present, the WorkForce 40 has 384 heads spaced # 1/360" apart, with a maximum resolution of 2880x2880. There's no # point right now in testing anything higher than this, and it's very # time consuming. head_limit=3072 if [ $# -eq 0 ] ; then QUIET=1 export QUIET fi # For valgrind use, use # valgrind --partial-loads-ok=no --num-callers=50 --leak-check=yes # # and use these suppressions: # #{ # gettext # Addr4 # fun:__dcigettext # fun:__dcgettext #} # #{ # nl_load_locale # Addr4 # fun:_nl_load_locale # fun:_nl_find_locale # fun:setlocale #} # #{ # setlocale # Addr4 # fun:setlocale #} # #{ # c_strlen # Addr4 # fun:c_strlen #} ( for strategy in $strategies ; do for jet in $jets ; do for sep in $separations ; do start=$((jet * sep)) if (( start < head_limit)) ; then rows=$((start * 5)) (( rows < 200 )) && rows=200 s1=$((start - 1)) for f in 0 41 "$start" "$s1" ; do end=$((rows + f + start)) end1=$((rows + f)) end2=$((rows + f + 35)) for g in $end $end1 $end2 ; do for pass in $passes ; do for arrangement in $arrangements; do echo "$jet $sep $pass $rows $f $g $arrangement $strategy" done done done done fi done done done) | sed 's/,/ /g' | ./escp2-weavetest