Radim Blazek Radim.Blazek at dhv.cz
Tue May 2 08:43:24 EDT 2000

(sorry if you received this twice, Markus Neteler recommended me to send it here too) 

I work on ODBC (http://www.unixodbc.org/) driver for DBMI (src/libes/dbmi)
+ some modules based on DBMI.
Work is not finished but most of old modules (src/libes/dbmi/clients) and new
v.db.reclass run.

I want discuss following list of changes before commiting to CVS:

- add to src/include/dbmi.h structures:

  typedef struct _db_connection
      char *driverName;
      char *databaseName;
      char *location;
      char *user;
      char *password;
      char *keycol;        // name of default key column

  typedef struct
      int  count;     // number of defined rules
      int  alloc;     // size of allocated array
      char *table;    // table name
      char *key;      // key column name
      int  *cat;      // array of new category numbers
      char **where;   // array of SQL WHERE conditions
      char **label;   // array of new category labels

- add to DBMILIB functions:

  int   db_set_connection        (dbConnection *connection );
  int   db_get_connection        (dbConnection *connection );
  void        db_rcls_rule_extend       (dbRclsRule *rule , int n );
  dbRclsRule * db_rcls_rule_init        (int n );
  int         db_rcls                   (dbRclsRule *rule , CatValI **new );

- add to /src/libes/dbmi/lib/start.c reading from dbConnection if driver
  was not specified

- modify command parameters in src/libes/dbmi/clients modules
  to not required if defined in dbConnection (use default)

- change in src/libes/dbmi/clients/Gmakefile:
  and remove
  if [ ! -d $(GISBASE)/etc/dbmi ]; then mkdir $(GISBASE)/etc/dbmi; fi; \
  if [ ! -d $(HOME) ]; then mkdir $(HOME); fi;

- add src/libes/dbmi/drivers/odbc - ODBC driver

- add src/libes/dbmi/clients/db.connect - similar as g.select.pg but
  module name db.select is already used, problem: password is saved
  in file

- add src/mapdev/v.db.reclass

- add to VECTLIB_REAL functions for reclassification - may be used in future also
  by v.reclass (I am not satisfied with creating reclass file and running
  from DB reclass modules):

  int V_rcls_line (char *in_name, char *out_name, CatValI *new, int ncat, int
  int V_rcls_area (char *in_name, char *out_name, CatValI *new, int ncat, int
append, int dissolve);

- add to src/include/gis.h structures for storing values for cats
  ( new category value, number of elements in cat, area, length, x,y, ...)

  typedef struct
      int  min,max;  // array range
      int  *val;  // array of integers

  typedef struct
      int  min,max;  // array range
      double *val;  // array of doubles

- add to GISLIB functions:

  CatValI *G_catvali_init( int min, int max);
  void G_catvali_extend( CatValI *, int max);


If you want to unsubscribe from GRASS Development
Team internal mailing list write to:
minordomo at geog.uni-hannover.de with
subject 'unsubscribe grass5'
length: 3835
max: 0

More information about the grass-dev mailing list