[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ldmMcidas #FQZ-585386]: compress AREA



Hi Valentijn,

re:
> What file in the McIDAS distro should we look for that takes
> care of the ADDE serving of regular AREA files, what code is
> handeling the reading of the AREA formatted files? For MSG this
> is msgtaget2.for

The toplevel ADDE server for images is agetserv.fp (Fortran).  This
routine will examine the user request and startup the appropriate
server if necessary.  For AREA files, it does not start another
server; rather, it calls the internal subroutine AGET where all the
work is done.

re: updated msgtaget2.for
> OK, once it is finished I'll send you the code. The modified MSG
> server code i'll send you tomorrow...

Sounds good, thanks.

> You mentioned earlier you figured out how to skip the header, and
> jump to the compressed part in the AREA file for the PNG code to do
> its work. Can you share with us your insights?

The code is contained in the pnga2area.c file which is in the ldm-mcidas
source distribution. It will be easier for you to read the code than for
me to describe what it does (it is very straightforward).  That being
said, I can tell you that 'pnga2area' understands the contents of a
McIDAS AREA header.  It reads appropriate words to find out where the
image portion of the file starts, and then reads all header portions
up to the beginning of the PNG-compressed portion of the image.  The PNG
header is then read to find out how many lines are represented, and then
a decompression loop is executed to uncompress the compressed part of the
image.  Please remember that the routine was written to be able to decode
data from a disk file or from a stream.  The reading of all of the header
up to the beginning of the PNG compressed section is done instead of jumping
to the appropriate location mainly to handle streams.

Cheers,

Tom
****************************************************************************
Unidata User Support                                    UCAR Unidata Program
(303) 497-8642                                                 P.O. Box 3000
address@hidden                                   Boulder, CO 80307
----------------------------------------------------------------------------
Unidata HomePage                       http://www.unidata.ucar.edu
****************************************************************************


Ticket Details
===================
Ticket ID: FQZ-585386
Department: Support ldm-mcidas
Priority: Normal
Status: Closed