
ToDo list for the AVC Library:
-----------------------------


==== ????? ====

- There are still a couple of values inside arc.dir for which I don't know
  the meaning.  Setting them to zero seems to work... but these could be 
  investigated a little more to try to find their meaning.

- Potential collision problem if 2 processes try to add an info table to
  the ARC.DIR at the same time.  Does Arc/Info have any way to lock the
  ARC.DIR???

- ??? Add support to explicitly specify the precision when creating a new 
  coverage.  For now AVCE00WriteOpen() only supports AVC_DEFAULT_PREC, but
  if we added some code to convert the INFO TABLE fields precision from
  single to double precision and vice-versa then we should be able to
  create a coverage using a precision different from the one in the source
  E00.

- Interesting problem: sometimes tol.adf have missing tolerance index 
  (ex: 2 and 3), and they appear to be replaced by index 11 and 12 at the 
  end of the file.  However, Arc/Info still exports a normal TOL section,
   with 10 values with indexes going from 1 to 10... 
  (see single precision annotation.e00 coverage)



==== What's new  ====

Current Version:
----------------

Version 1.0 (1999-12-04):
-------------------------

- Improved parsing of integer values in E00... big numbers in INFO table
  headers were sometimes merged and this resulted in unpredictable behavior.

Version 0.6 (1999-08-26):
-------------------------

- Added AVCE00DeleteCoverage()

- Fixed problem with handling of attribs of type 40 in E00 input/output

- Fixed VC++ warnings

- Fixed some memory leaks.

- Fixed a Windows-specific bug: the arc.dir was sometimes overwritten when
  several coverages were created by the same process... likely a buffering 
  issue.

Version 0.5 (1999-06-10):
-------------------------

- Overwrite existing arc.dir entries when necessary while creating INFO
  tables.
  The problem was that when same coverage name was used twice with the
  same info directory... we ended up with 2 sets of tables with the 
  same names.
  This happened if a user deleted a coverage directory using "rm".
  In this case, IMPORT71 reuses and overwrites the old table entry with 
  the same name in the ARC.DIR... our lib now does the same.

- Created NMAKE makefile.vc for Windows

- Tested on Windows


Version 0.4 (1999-05-17):
-------------------------

- Added TXT/TX6/TX7 write support.

- Added RXP write support

- Fixed problem with double precision RPL sections: the second PAL 
  termination line confused the parser.

- The write library now detects the E00's precision and generate
  a coverage using that precision by default when AVCE00WriteOpen()
  is called using AVC_DEFAULT_PREC.  (That's also the only valid
  option.)

- Added a check for maximum coverage name length (13 chars) when creating
  a new one.  Also force name to contain only alnum() and '_'.

- INFO TABLES: the name of the system attributes (COVER#/COVER-ID) are
               now changed to the new coverage name when creating a new 
	       info table.

- Fixed problem parsing an E00 INFO table that contains 0 records
  (yes, they exist!)


Version 0.3 (1999-05-10):
-------------------------

- Added support to create coverages from E00 (alpha version).  Most file 
  types are supported, but only single precision has been tested on Linux.
  There are still a number of known problems with the write support.

- Added proper support and tested with tables containing 16 bits integers
  (type 50, size=2)

- Fixed problem with 8 bytes floats in single-prec. tables, and 4 bytes
  floats in double-precision tables.

- Fixed the following problem:
   In some cases, the "number of records" field for a table in the 
   arc.dir does not correspond to the real number of records 
   in the data file.  In this kind of situation, the number of
   records returned by Arc/Info in an E00 file will be based
   on the real data file size, and not on the value from the arc.dir.

- Tested on a CPL_MSB system

 
Version 0.2 (1999-02-24):
-------------------------

- Added support for Annotations:
   - TXT
   - TX6
   - TX7 (Handled as TX6)

- Added support for coverages with regions (RXP/RPL sections)

- Tested with routes coverage

- Added support for "par.adf": Double precision coverages have their 
  tolerances stored in a file named "par.adf" which is different from 
  the "tol.adf" we find in single precision coverages...

- PRJ section: remove '\r' at end of lines when coverage generated on
  DOS systems is read on Unix.

- Support centroids (CNT) with more than one label attached to them.

- Do not skip INFO Tables with 0 records.  Since Arc/Info exports them,
  we should probably do it as well!

- Changed AVCE00ReadOpen() so that the coverage name does not absolutely
  have to be terminated by a "/".  Now, you can either pass the name of 
  the coverage directory (with or without a '/' at the end), or the path
  to one of the files in the coverage directory. 

- Added extra line after the end of PAL sections in double precision
  coverages: 
        -1         0         0         0         0         0         0
 0.00000000000000E+00 0.00000000000000E+00
  Even if I consider this second line to be a glitch, I guess I have to
  mimic this behavior and add this extra line one as well!

- Modified "avcconv" command-line program to accept an output_filename
  as a its second argument.  Until now its output was always sent to stdout.

- Updated documentation, mainly the list of error codes.


Version 0.1 (1999-01-31):
-------------------------

First version, supports the most common file types, still several 
know problems.