[Mapserver-dev] RAWMODE Output Changes (for WCS primarily)

Frank Warmerdam warmerdam at pobox.com
Fri Mar 5 01:08:45 EST 2004


I have made a few changes to the raster processing logic when operating in
"rawmode".  Rawmode (in this case) means the output raster is not a gdImg,
but just a plain raster buffer.  In the past this mode existed primarily to
support using MapServer to process raster data of non-8bit types.  This rarely
used mechanism is now also being used to support WCS processing which should
not be altering the raster pixel values (rendering via gd *does* alter the
pixel values in many cases).

The changes include:
  o Support for "IMAGEMODE BYTE" in output formats as a raw mode, in
    addition to the existing INT16 and FLOAT32 raw mode raster formats.
  o Support to multi-band raw mode output.
  o Support for using the PROCESSING "BANDS=n,n,n" keyword to control the
    bands being output in rawmode.
  o Support for the FORMATOPTION "BAND_COUNT=n" declaration i OUTPUTFORMAT


The outputFormatObj structure has a new member, the "bands" value.  So anyone
doing a cvs update, should do a clean build as structures have changed in
dangerous ways.


When working on the WCS support, you should now set the BANDS=... processing
option on the layer based on the WCS request.  Also, ensure you reset the
"bands" member in the outputFormatObj being used to match the number of entries
in the bands list.

All the old msautotest tests pass, but I haven't yet added any new ones for
the rawmode adjustments.

Also, I have discovered there is no support at all for OFFSITE or any other
kind of nodata value in rawmode, and a value of zero is always used for the
background.  We should review these in light of the needs of the WCS code.

Best regards,
I set the clouds in motion - turn up   | Frank Warmerdam, warmerdam at pobox.com
light and sound - activate the windows | http://pobox.com/~warmerdam
and watch the world go round - Rush    | Geospatial Programmer for Rent

More information about the mapserver-dev mailing list