xieperf(1)

xieperf(1)

xhost Home Page User Commands Index ximtoppm


NAME
       xieperf - XIE server extension test and demo program

SYNTAX
       xieperf [-option ...]

DESCRIPTION
       The  xieperf  program  is  based  upon R5 x11perf(1) , and
       while not entirely comprehensive in its  coverage  of  the
       XIE  protocol (see BUGS, below), it is intended to be use-
       ful in the evaluation of XIE implementations in the  areas
       of  protocol  adherance and performance.  The xieperf pro-
       gram includes tests which execute  each  of  the  protocol
       requests  and  photoflo elements specified by revision 5.0
       of the XIE protocol. In addition, xieperf provides  a  set
       of  tests  which can be used to validate the detection and
       transmission of XIE protocol request errors, such as  Flo-
       Match, FloValue, and so forth. Finally, xieperf provides a
       customizable demonstration program for XIE.

       A test is made up of three components executed in sequence
       -  an initialization function, a test function, and an end
       function. The initialization function is  responsible  for
       allocating  and  populating  test  resources, such as pho-
       tomaps and LUTs, and for creating a stored photoflo  which
       will  be executed by the test function. The test function,
       in most cases, simply executes the stored photoflo  for  a
       specified  number of repetitions.  The end function, which
       is called following the test function, is  used  primarily
       to  destroy  any non-cachable server resources used by the
       test, and to free any memory which was  dynamically  allo-
       cated by the client. Some tests, such as -modify1, -await,
       -abort, and -redefine, perform additional steps within the
       test function inner loop, as required by the element being
       tested, or in an attempt to make the  test  more  visually
       appealing.

       Evaluating  the  performance of individual XIE elements is
       not as simple as measuring Core X drawing times.  The  XIE
       protocol requires elements to be embedded within photoflos
       in order  to  be  exercised,   and  the  minimum  possible
       photoflo  size is two.  This implies that it is impossible
       to measure performance of a single element in isolation  -
       the  time  it  takes  to run the flo depends on what other
       elements exist in the flo.  Extrapolating performance of a
       single  elment  (or technique) in a flo must be done care-
       fully, on a case-by-case basis,  since in general measured
       element  performance  depends  on  input  image size, data
       type, and other factors,  all of which can  be  influenced
       by  upstream  flo  elements.  Note further that the number
       and type of elements in a flo can  be  influenced  by  the
       visuals available on the display,  so even flo-flo compar-
       isons on machines with different visuals must be done with
       caution.

       Many  test labels contain an abbreviated pipeline descrip-
       tion. For instance. IP/IL/P/ED  indicates  ImportPhotomap,
       ImportLUT,  Point, and ExportDrawable. Pipelines ending in
       ED (ExportDrawable) often include hidden elements such  as
       BandExtract, ConvertToIndex, Dither, or Point to match the
       flo output to the screen visual.  Pipelines ending  in  EP
       (ExportPhotomap) will result in a blank window.

       xieperf  is  compatible with x11perfcomp(1), which is used
       to compare the outputs of different  xieperf  and  x11perf
       runs  in  a nice, tabular format. In xieperf you will need
       to use the -labels option (see OPTIONS, below),  and  pro-
       vide the resulting labels file to x11perfcomp(1) to obtain
       correct output. See the x11perfcomp(1) man pages for  more
       details on this.

OPTIONS
       xieperf accepts the options listed below:

       -display host:dpy
                     Specifies which display to use.

       -images <path>
                     Normally,  xieperf  references  image  files
                     located in the directory  ``images'',  which
                     xieperf  assumes  is located in your current
                     directory. If the  ``images''  directory  is
                     not  in  your current directory, or the file
                     has been renamed, use this option to specify
                     its location.

       -timeout <s>  Some tests require the reception of an event
                     such as FloNotify to continue, and may cause
                     xieperf  to  hang should these events not be
                     received. This option  allows  the  user  to
                     specify  a timeout value which, if exceeded,
                     will cause xieperf to give up waiting for an
                     event, and continue on with the next test in
                     sequence.  Should an event timeout, a  warn-
                     ing  message  will be printed to stderr. The
                     default timeout value is 60 seconds.

       -sync         Runs the tests in synchronous mode.

       -script <file>
                     Using this option gives the user the ability
                     to  run  a subset of the available tests and
                     control the number of times  the  tests  are
                     executed  on  an  individual  basis. This is
                     thought to be especially  useful  for  those
                     running  xieperf for demonstration purposes.
                     Using this option  causes  xieperf  to  read
                     commands specified in a script file, or from
                     stdin  if  <file>  is   ``-''.   Tests   are
                     specified  by newline-terminated input lines
                     of the form "command [-reps n ] [ -repeat  m
                     ]".   Characters following and including "#"
                     are treated as comments. See  the  -mkscript
                     option.

       -repeat <n>   Repeats  each  test n times (by default each
                     test is run 2 times).  This  option  may  be
                     used in script files also, in which case the
                     script file -repeat  overrides  the  command
                     line option.

       -time <s>     Specifies  how  long  in  seconds  each test
                     should be run (default 5 seconds).

       -depth <<depth>>
                     Use a visual with <depth> planes  per  pixel
                     (default is the default visual).

       -GrayScale    Use  a  GrayScale  visual  (default  is  the
                     default visual).

       -PseudoColor  Use a PseudoColor  visual  (default  is  the
                     default visual).

       -StaticGray   Use  a  StaticGray  visual  (default  is the
                     default visual).

       -StaticColor  Use a StaticColor  visual  (default  is  the
                     default visual).

       -TrueColor    Use  a  TrueColor  visual  (default  is  the
                     default visual).

       -DirectColor  Use a DirectColor  visual  (default  is  the
                     default visual).

       -WMSafe       If  xieperf  must be run in a window manager
                     environment, use this flag to  make  xieperf
                     aware  of  this.  If specified, xieperf will
                     create a window, identical to  the  size  of
                     the  root  window,  and  all further windows
                     created by xieperf will be  transient  popup
                     children  of  this  window.  If this flag is
                     omitted, xieperf will set the override_redi-
                     rect  attribute  of  all windows to ``True''
                     and will also do evil things such as calling
                     XInstallColormap.   Using  this  option will
                     cause the window manager to (hopefully) obey
                     window geometry hints specified by xieperf

       -showtechs    Display  a comprehensive list of techniques,
                     by category, indicating which of  the  tech-
                     niques are supported by the XIE server.

       -showlabels   Print  test label to screen prior to calling
                     any of the test code. This allows  the  user
                     to  know which test is executing in case the
                     test hangs for some reason.

       -showevents   Be verbose  when  running  event  and  error
                     tests.  Also,  can be used to catch and dis-
                     play information  on  any  signals  received
                     during  execution  of xieperf that the error
                     events received by  xieperf  are  valid  the
                     first  time  the tests are executed on a new
                     platform.

       -events       Run tests which test for event generation.

       -errors       Run tests which test for error event genera-
                     tion.

       -loCal        Skip test calibration. This may be used when
                     running xieperf in situations  where  execu-
                     tion  timing  is  not  important.  Execution
                     times will not be reported by  xieperf  when
                     this  option  is  enabled.  The  inner  loop
                     repeat count,  additionally,  is  set  to  a
                     value  of  5  (but  can be overridden by the
                     -reps option).

       -all          Runs all  tests.  This  may  take  a  while,
                     depending  on the speed of your machine, and
                     its floating point capabilities. This option
                     is ignored if a script file is used.

       -tests        Generate  a  list of the available tests for
                     the xieperf program. In x11perf , this  list
                     is  normally  displayed  in the usage state-
                     ment.  It  was  yanked  from  the  usage  of
                     xieperf because it was too lengthy.

       -mkscript     Generate a script file suitable for use with
                     the script option. If -repeat or  -reps  are
                     also  specified,  they will be automatically
                     placed at the end of  each  command  in  the
                     script.  The  script is generated to stderr.
                     See the -script command, above.

       -cache &lt;n>    Most test flos utilize a  photomap  resource
                     for  a  source.  A photomap cache of up to n
                     entries is controlled by  xieperf  to  avoid
                     having  to  constantly  reload  these images
                     during  test  initialization.   The  default
                     cache  size  is  4. If a value less than the
                     default is specified, the cache size will be
                     set to the default.

       -labels       Generates  just  the  descriptive labels for
                     each test specified. Use -all or  -range  to
                     specify   which   tests  are  included.  See
                     x11perfcomp(1) for more details.

       -DIS          Pretend we are running  xieperf  while  con-
                     nected  to a DIS-only capable implementation
                     of XIE. This will cause xieperf  to  execute
                     those tests which only use protocol requests
                     found in the DIS subset of XIE,  and  bypass
                     those  which  are  not  DIS  compatible.  If
                     xieperf detects a DIS  server,  it  will  do
                     this   automatically,  and  this  option  is
                     ignored.  Use -all or -range to specify  the
                     initial range of tests.

       -range &lt;test1>[,&lt;test2>]
                     Runs  all the tests starting from the speci-
                     fied  name  test1  until  the  name   test2,
                     including  both  the  specified  tests. Some
                     tests, like the event and error tests,  also
                     require  the  -errors  or -events options to
                     specified.  This  option  is  ignored  if  a
                     script it used.

       -reps &lt;n>     Fix  the  inner  loop repetitions to n. This
                     indicates how many time the photoflo will be
                     executed  each  time  the  test is run. This
                     option is overridden on a per-test basis  if
                     specified  in  a  script. Typically, xieperf
                     determines the ideal number of  reps  during
                     each test's calibration period.

       -ImportObscuredEvent through -ExportAvailable
                     Test  generation of events. Requires -events
                     flag.

       -BadValue through -FloValueError
                     Test generation of errors. Requires  -errors
                     flag.   -ColorList  Create  and destroy Col-
                     orList resource test.

       -LUT          Create and destroy LUT resource test.

       -Photomap     Create and destroy Photomap resource test.

       -ROI          Create and destroy ROI resource test.

       -Photospace   Create and destroy Photospace test.

       -Photoflo     Create and destroy Photoflo test.

       -QueryPhotomap
                     Query Photomap resource test.

       -QueryColorList
                     Query ColorList resource test.

       -QueryTechniquesDefault through -QueryTechniquesWhiteAd-
                     just
                     Query  techniques as specified by test name.

       -QueryPhotoflo
                     Query photoflo test.

       -PurgeColorList
                     PurgeColorList test.

       -Abort        This  tests  creates  a  photoflo  which  is
                     started and blocks for data provided by Put-
                     ClientData(). Instead of sending  the  data,
                     the   test   uses  XieAbort()  to  stop  the
                     photoflo, and then  waits  for  PhotofloDone
                     event  to be send by the server. If the test
                     times out waiting for  the  event,  a  error
                     message is sent to stderr.

       -Await        This  test creates a flo of the form Import-
                     ClientLUT -> ExportLUT, and starts  the  flo
                     executing.   xieperf  then  forks,  and  the
                     child process streams the LUT  data  to  the
                     flo  using  PutClientData,  while the parent
                     blocks in XieAwait. If the flo  successfully
                     finishes,  XieAwait  will return and the flo
                     state, after query, will  indicate  that  it
                     has completed. If XieAwait does not complete
                     naturally, or after return from XieAwait the
                     flo is still active, an error is reported to
                     stderr. Note, on a really slow  machine,  it
                     is possible that XieAwait will return before
                     the flo has a  chance  to  finish.  In  this
                     case,  use  the  -timeout option to increase
                     the timeout for this test.

       -importclientlut1
                     ImportClientLUT -> ExportLUT test.

       -importclientphoto1 through -importclientphoto9
                     Flos  of  the  form   ImportClientPhoto   ->
                     ExportPhotomap  using  various  decode tech-
                     niques,    e.g.    G32D,    TIFF2,    Uncom-
                     pressedTriple, and so forth.

       -importclientroi1
                     ImportClientROI with 10 rectangles.

       -importclientroi2
                     ImportClientROI with 100 rectangles.

       -encodephoto1 through -encodephoto14
                     Flos  of  the form ImportPhotomap -> Export-
                     Photomap using  various  encode  techniques,
                     e.g. G32D, TIFF2, UncompressedTriple, and so
                     forth.  Original encoding is shown  in  left
                     window,  image  after  encoding  is shown in
                     right window.

       -encodeclientphoto1 through -encodeclientphoto11
                     Two flos, one of the form ImportPhotomap  ->
                     ExportClientPhoto, and the other of the form
                     ImportClientPhoto ->  ExportPhotomap,  where
                     ExportClientPhoto in the first flo uses var-
                     ious encode techniques,  e.g.  G32D,  TIFF2,
                     UncompressedTriple,  and so forth. The image
                     before encoding is  displayed  in  the  left
                     window,  while  the  right  window shows the
                     image which was encoded in the first flo and
                     read back in the second flo.

       -exportclientlut1
                     ExportClientLUT  test. LUT is displayed in a
                     histogram window.

       -exportclientroi1
                     ExportClientROI  test,  10  ROIs.  The  ROIs
                     which are sent to the server are represented
                     by the filled rectangles. The ROIs which are
                     received  back from the server by the client
                     are drawn as white bordered non-filled rect-
                     angles.   The  resulting  output illustrates
                     how the server combined the rectangles  sent
                     to it.

       -exportclientroi2
                     Same  as  exportclientroi1, except using 100
                     rectangles.

       -exportclienthistogram1 through -exportclienthistogram4
                     ExportClientHistogram  tests  using  various
                     images. The histogram is displayed in a win-
                     dow which overlaps the image.

       -exportclienthistogramroi1 through -exportclienthistogram-
                     roi4
                     Same  as the ExportClientHistogram test, but
                     using a ROI to identify the area  of  inter-
                     est.

       -exportclienthistogramcplane1   through  -exportclienthis-
                     togramc- plane4
                     Same  as the ExportClientHistogram test, but
                     using a Control Plane to identify  the  area
                     of interest.

       -importlut1   Test ImportLUT element, LUT size is 256.

       -importphoto1 ImportPhotomap   ->   ExportPhotomap,   with
                     source and destination equal.

       -importphoto2 ImportPhotomap  ->  ExportDrawable,   window
                     destination.

       -importroi1   ImportROI   ->   ExportROI,  10  rectangles,
                     source and destination ROIs equal.

       -importroi2   ImportROI  ->  ExportROI,  100   rectangles,
                     source and destination ROIs equal.

       -importdrawable1
                     ImportDrawable  -> ExportDrawable, Source is
                     pixmap, destination is window.

       -importdrawable2
                     ImportDrawable -> ExportDrawable, Source and
                     destination is window.

       -importdrawable3
                     ImportDrawable  ->  ExportDrawable, Destina-
                     tion window obscured by source window.

       -importdrawable4
                     ImportDrawable  ->  ExportDrawable,   Source
                     window obscured by destination window.

       -importdrawable5
                     ImportDrawablePlane  -> ExportDrawablePlane,
                     pixmap, source = destination.

       -importdrawable6
                     ImportDrawablePlane ->  ExportDrawablePlane,
                     window, source = destination.

       -importdrawable7
                     ImportDrawablePlane  -> ExportDrawablePlane,
                     window, source obscures destination.

       -importdrawable8
                     ImportDrawablePlane ->  ExportDrawablePlane,
                     window, destination obscures source.

       -constrain1   Constrain  HardClip technique test, drawable
                     destination.

       -constrain2   Constrain ClipScale technique test, drawable
                     destination.

       -constrainphoto1
                     Constrain  HardClip technique test, photomap
                     destination.

       -constrainphoto2
                     Constrain ClipScale technique test, photomap
                     destination.

       -convolve1    Boxcar  3x3  convolution  test. Smoothing or
                     lowpass filter.

       -convolve2    Boxcar 5x5 convolution  test.  Smoothing  or
                     lowpass filter.

       -convolve3    LaPlacian  3x3  convolution  test.  Edge  or
                     highpass filter.

       -convolve4    LaPlacian  5x5  convolution  test.  Edge  or
                     highpass filter.

       -convolveroi1 LaPlacian 3x3 convolution test, with ROI.

       -convolveroi2 LaPlacian 5x5 convolution test, with ROI.

       -convolvecplane1
                     LaPlacian 3x3 convolution test, with Control
                     Plane.

       -convolvecplane2
                     LaPlacian 5x5 convolution test, with Control
                     Plane.

       -math1 through -mathcplane7
                     Various  tests  which exercise the Math ele-
                     ment, some  tests  using  ROIs  and  control
                     planes.

       -arithmeticdyadic1 through -arithmeticdyadic5
                     Arithmetic element tests, using photomaps as
                     the operands.

       -arithmeticmonadic1 through -arithmeticmonadic9
                     Arithmetic element tests, photomap and  con-
                     stant operands.

       -arithmeticdyadicroi1 through -arithmeticdyadicroi5
                     Arithmetic element tests, using photomaps as
                     the operands, with ROIs.

       -arithmeticmonadicroi1 through -arithmeticmonadicroi9
                     Arithmetic element tests, photomap and  con-
                     stant operands, with ROIs.

       -arithmeticdyadiccplane1 through -arithmeticdyadiccplane5
                     Arithmetic element tests, using photomaps as
                     the operands, with Control Planes.

       -arithmeticmonadiccplane1 through -arithmeticmonadicc-
                     plane9
                     Arithmetic  element tests, photomap and con-
                     stant operands, with Control Planes.

       -arithmeticfloatdyadic1 though -arithmeticfloatdyadic5
                     Arithmetic element tests, using photomaps as
                     the operands, unconstrained.

       -arithmeticfloatmonadic1 though -arithmeticfloatmonadic9
                     Arithmetic  element tests, photomap and con-
                     stant operands, unconstrained.

       -arithmeticroifloatdyadic1 to -arithmeticroifloatdyadic5
                     Arithmetic element tests, photomaps  as  the
                     operands, ROIs, unconstrained.

       -arithmeticroifloatmonadic1 to -...rithmeticroifloat-
                     monadic9
                     Arithmetic element tests, photomap and  con-
                     stant operands, ROIs, unconstrained.

       -band1        BandSelect  element  test.  Image  input  is
                     triple band. If visual of xieperf window  is
                     a  color  visual, then three BandSelect ele-
                     ments are used  to  extract  the  indivudual
                     bands,  they  are  combined once again using
                     BandCombine, and  displayed  using  Convert-
                     ToIndex.  If  the  visual is not color, e.g.
                     GrayScale or StaticGray, then the flo simply
                     uses  one  BandSelect  element  to extract a
                     single band for display.

       -band2        BandCombine test. Input bands are made of of
                     three  separate single band photomaps. These
                     are combined using  a  BandCombine  element,
                     which  is  followed  by  a  BandExtract  and
                     ExportDrawable. CCIR 601-1 coefficients.

       -band3        BandExtract test. Input  is  a  triple  band
                     photomap. CCIR 601-1 coefficients.  Destina-
                     tion window colormap is gray ramp.

       -band4        BandExtract test. Input  is  a  triple  band
                     photomap. CCIR 601-1 coefficients.  Destina-
                     tion window colormap is  RGB_BEST_MAP  stan-
                     dard colormap.

       -band5        BandExtract  test.  Input  is  a triple band
                     photomap. CCIR 601-1 coefficients.  Destina-
                     tion   window  colormap  is  RGB_DEFAULT_MAP
                     standard colormap.

       -comparedyadic1 through -comparedyadic6
                     Test various Compare operators  with  dyadic
                     photomap operands.

       -comparemonadic1 through -comparemonadic6
                     Test  various  compare  operators  with pho-
                     tomap, constant operands.

       -compareroidyadic1 through -compareroidyadic6
                     Test various Compare operators  with  dyadic
                     photomap operands, using ROIs.

       -compareroimonadic1 through -compareroimonadic6
                     Test  various  compare  operators  with pho-
                     tomap, constant operands, using ROIs.

       -comparecplanedyadic1 through -comparecplanedyadic6
                     Test various Compare operators  with  dyadic
                     photomap operands, Control Planes.

       -comparecplanemonadic1 through -comparecplanemonadic6
                     Test  various  compare  operators  with pho-
                     tomap, constant operands, Control Planes.

       -matchhistogram1 through -matchhistogram18
                     MatchHistogram element tests, using  various
                     images and histogram matching techniques.

       -matchhistogramroi1 through -matchhistogramroi6
                     A selection of MatchHistogram element tests,
                     with ROIs.

       -matchhistogramcplane1 through -matchhistogramcplane6
                     A selection of MatchHistogram element tests,
                     with Control Planes.

       -unconstrain1 ImportPhotomap, Unconstrain, Constrain(Clip-
                     Scale), ExportDrawable test.

       -pasteup1 through -pasteup2
                     PasteUp element tests.

       -geometry1 through -geometry14
                     Geometry element tests, including rotations,
                     scales,   and   mirroring.   NearestNeighbor
                     technique.

       -geometry15 through -geometry28
                     Geometry element tests, including rotations,
                     scales, and mirroring.  AntiAlias technique.

       -geometry29 through -geometry42
                     Geometry element tests, including rotations,
                     scales,            and            mirroring.
                     BilinearInterpolation technique.

       -geomg31dscale1 through -geometryfaxradio1
                     Tests to exercise the various  FAX  decoders
                     and the Geometry element.

       -dither1      Dither  test,  ErrorDiffusion  dither  tech-
                     nique, ExportDrawable.

       -dither2      Dither  test,  ErrorDiffusion  dither  tech-
                     nique, ExportDrawablePlane.

       -dither3      Dither  test,  Ordered(4)  dither technique,
                     ExportDrawable.

       -dither4      Dither test,  Ordered(4)  dither  technique,
                     ExportDrawablePlane.

       -dither5      Dither  test,  Ordered(8)  dither technique,
                     ExportDrawable.

       -dither6      Dither test,  Ordered(8)  dither  technique,
                     ExportDrawablePlane.

       -dither7      Dither   test,   Default  dither  technique,
                     ExportDrawable.

       -dither8      Dither  test,  Default   dither   technique,
                     ExportDrawablePlane.

       -logicalmonadic1 through -logicalmonadic16
                     Logical  element, photomap and a constant of
                     0 as operands, various operators.

       -logicaldyadic1 through -logicaldyadic16
                     Logical element tests, dyadic  photomaps  as
                     operands, various operators.

       -logicalmonadicroi1 through -logicalmonadicroi16
                     Logical  element, photomap and constant of 0
                     operands, various operators, ROIs.

       -logicaldyadicroi1 through -logicaldyadicroi16
                     Logical   element,   dyadic   photomaps   as
                     operands, various operators, ROIs.

       -logicalmonadiccplane1 through -logicalmonadiccplane16
                     Logical  element, photomap and constant of 0
                     operands, various operators, Control Planes.

       -logicaldyadiccplane1 through -logicaldyadiccplane16
                     Logical   element,   dyadic   photomaps   as
                     operands, various operators, Control Planes.

       -blend1       Blend  element  test.  Monadic  source,  0.1
                     source constant. Alpha constant of 0.5.

       -blend2       Blend element test.  Dyadic  sources.  Alpha
                     constant of 0.5.

       -blendroi1    Blend  test. Monadic source, 0.1 source con-
                     stant. Alpha constant of 0.5. ROIs.

       -blendroi2    Blend element test.  Dyadic  sources.  Alpha
                     constant of 0.5. Uses ROIs.

       -blendcplane1 Blend  test. Monadic source, 0.1 source con-
                     stant. Alpha constant of 0.5. Control Plane.

       -blendcplane2 Blend  element  test.  Dyadic sources. Alpha
                     constant of 0.5. Control Plane.

       -blendalpha1  Blend test. Monadic source, 220 source  con-
                     stant. Alpha plane is a photomap.

       -blendalpha2  Blend test. Dyadic sources. Alpha plane is a
                     constant 220.

       -blendalpharoi1
                     Blend test. Monadic source, 220 source  con-
                     stant. Alpha plane photomap. ROIs.

       -blendalpharoi2
                     Blend test. Dyadic sources. Alpha plane is a
                     constant 220. ROIs.

       -triplepoint1 through -triplepoint2
                     Illustrate use of point  and  Standard  col-
                     ormaps for rendering triple band images.

       -funnyencode1 through -funnyencode8
                     These  tests  are  design to perform limited
                     exercising of XIE's  capability  of  dealing
                     with  various  encodings of flo source data.
                     The test init function  obtains  a  photomap
                     using  ICP  ->  EP.  A series of independent
                     permanent flo pairs, one of the form  IP  ->
                     EP,  and  the  other of the basic form IP ->
                     ED, are constructed. The encoding parameters
                     for  the  ExportPhotomap (EP) element in the
                     first flo are derived from  test  configura-
                     tion.  The  number  of  flo pairs created is
                     also dependent upon test configuration.  The
                     tests  can  be  configured  so that the test
                     init function will constrain the input  pho-
                     tomap  to a specified number of levels, on a
                     per-band basis, so that word-sized and quad-
                     sized  pixels  are  passed through the flos.
                     Some tests below take advantage of this. See
                     tests.c for test configuration, and hints on
                     how to add similar tests.

       -point1 through -point3
                     Simple Point element tests. Drawable  desti-
                     nation.   -pointroi1  Simple  Point  element
                     test which uses ROIs. Drawable  destination.

       -pointcplane1 Simple  Point element test which uses a Con-
                     trol Plane. Drawable destination.

       -pointphoto1  Simple Point element test. Photomap destina-
                     tion.

       -pointroiphoto1
                     Simple Point element test which uses a ROIs.
                     Photomap destination.

       -pointcplanephoto1
                     Simple Point element test which uses a  Con-
                     trol Plane. Photomap destination.

       -redefine     Two flographs are created which are the same
                     in structure, expect for the x and y offsets
                     specified  for  the  ExportDrawable flo ele-
                     ments. The  test  init  function  creates  a
                     photoflo  based  upon  one  of  the two flo-
                     graphs.  The inner loop of the test function
                     uses   XieRedefinePhotoflo()   to  alternate
                     between each of  the  flographs.  Make  sure
                     that  your  ineer loop reps are 2 or greater
                     in order to exercise this  test  fully  (see
                     -reps).

       -modify1      Test  XieModifyPhotoflo() by adjust ROI off-
                     sets and size.

       -modify2      Test XieModifyPhotoflo() by changing the LUT
                     input to a Point element.

       -modify3      Test XieModifyPhotoflo() by changing Export-
                     Drawable x and y offsets.

       -modify4      This test  creates  a  rather  long  flo  of
                     arithmetic elements, each which does nothing
                     more than add 1 to a small image.  The  test
                     init function scales the input photomap. The
                     ExportDrawable x and y  offset  is  modified
                     randomly  during  each iteration of the test
                     function inner loop.

       -modify5      This test  creates  a  rather  long  flo  of
                     arithmetic elements, each which does nothing
                     more than add 1 to a large image.  Each rep,
                     the  Geometry and ExportDrawable elements at
                     the end of the flo are  modifed  to  crop  a
                     small  piece of the input into its appropri-
                     ate place in the larger image.

       -rgb1 through -rgb16
                     These tests all  basically  take  an  Uncom-
                     pressedTriple  image  as  input,  send it to
                     ConvertFromRGB which converts the  image  to
                     some  configured  colorspace,  and then send
                     the converted image on to ConvertToRGB prior
                     to  display. The original image is displayed
                     in the lefthand window, and the image  which
                     has  passed  through the flo is shown in the
                     righthand window. The goal of these test  is
                     to  show that ConvertFromRGB -> ConvertToRGB
                     is lossless.

       -converttoindexpixel
                     ConvertToIndex test, TripleBand BandByPixel.

       -converttoindexplane
                     ConvertToIndex test, TripleBand BandByPlane.

       -convertfromindex
                     The test init function uses a flo containing
                     ConvertToIndex  to  display  an image in the
                     left window. The  test  function  uses  this
                     drawable  as  input to a flo which does Con-
                     vertFromIndex ->  ConvertToIndex  and  sends
                     the resulting image to the right window. The
                     result should be lossless.

       -complex      A somewhat  large  flo  which  uses  control
                     planes,  LUTs, Point, PasteUp, Logical, Con-
                     strain,  Dither,  Geometry,  MatchHistogram,
                     BandCombine,  and  BandSelect  elements. See
                     the Postscript  file  ''complex.ps''  for  a
                     rendition of the photoflo which is executed.

X DEFAULTS
       There are no X defaults used by this program.

SEE ALSO
       X(1) x11perf(1) x11perfcomp(1) 

BUGS
       There should be a IMAGES environment variable  to  augment
       the -images option.

       Many  tests  only  scratch  the  surface  of possible test
       cases.  Some of the options available for certain flo ele-
       ments   are   either   inadequately   tested,  or  ignored

       altogether.  There  are  insufficent  tests  for  bitonal,
       large pixel, or triple band tests.

       Some  of  the  test  names  are inconsistently cased, e.g.
       -Abort and -dither1.

       Some tests are hopelessly slow when run  against  machines
       with slow FPUs.

       Bitonal  images  are for the most part displayed using the
       ExportDrawable flo element,  however,  ExportDrawablePlane
       would be a better choice.

AUTHOR
       Syd Logan, AGE Logic, Inc.

xhost Home Page User Commands Index ximtoppm