IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jan 10, 2006, 4:39:16 PM (21 years ago)
Author:
jhoblitt
Message:

doc update
2006 copyright update

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/glueforge/glueforge.in

    r5962 r5965  
    11#!/usr/bin/env perl
    22
    3 # Copyright (C) 2005  Joshua Hoblitt
     3# Copyright (C) 2005-2006  Joshua Hoblitt
    44#
    5 # $Id: glueforge.in,v 1.41 2006-01-11 02:06:24 jhoblitt Exp $
     5# $Id: glueforge.in,v 1.42 2006-01-11 02:39:16 jhoblitt Exp $
    66
    77use strict;
     
    297297=head1 NAME
    298298
    299 @PACKAGE_NAME@ - auto-generate 'meta' database bindings
     299@PACKAGE_NAME@ - auto-generate Pan-STARRS IPP 'meta' database bindings
    300300
    301301=head1 SYNOPSIS
     
    305305=head1 DESCRIPTION
    306306
    307 This program generates a set of database table specific bindings in the ANSI C
    308 language.  The code generated is largely just wrapper functions around the
    309 C<pslib> C<DB> API.  A simple table description is read in and a directory
    310 containing a complete, distributable software package is created.
     307This program generates a set of database table format specific bindings in the
     308ANSI C language.  The code generated is largely just wrapper functions around
     309the C<pslib> C<psDB> API.  Table information is read in from a configuration
     310file in the pslib C<MetadataConfig> format.  A complete autotools configured
     311package that builds both static & shared libraries is generated.
    311312
    312313=head2 Features
     
    320321=item * Installs a pkgconfig C<.pc> data file.
    321322
    322 =item * Includes a table specific autotest test suite.
     323=item * Includes a table format specific autotest test suite.
    323324
    324325=item * Builds both shared and static libraries by default.
     
    338339=item * Functions to insert, select, and pop to/from FITS files.
    339340
    340 =item * Functions to convert between row structs and C<psMetadata>s.
     341=item * Functions to convert between row structs and pslib C<psMetadata>s.
    341342
    342343=back
     
    344345=head1 TABLE DESCRIPTION FORMAT
    345346
    346 A simple config files specifies the name of the table, the name and types of
    347 all columns, and can optional specify which column are to be used as indexes.
    348 These C<Table Description> files are in the C<Configuration files> format as
    349 described in C<PSDC-430-007>.
    350 
    351 =head2 Example table description
     347There are two slightly different configuration file forms.  A C<simple> format
     348for describing a single table and a C<complex> format for describing more then
     349one table and/or configuring specific details as to how the package is
     350generated.  The syntax for both of these forms follows the C<Configuration
     351files> format as described in C<PSDC-430-007>.
     352
     353=head2 Simple configuration
     354
     355A simple config file specifies the name of the table, the name and types of all
     356columns, and can optionally specify which column(s) are to be used as indexes.
     357
     358=head2 Example simple configuration
    352359
    353360    table   STR     foo
     
    372379database bindings.
    373380
     381=head2 Complex configuration
     382
     383A complex config file consists of a series of C<METADATA> blocks.  One (and
     384only one) of these blocks I<must> be named C<glueforge>. This block
     385contains the global package configuration data.  Only the keys C<pkg_name> and
     386C<pkg_namespace> are allowed in this block and they are both required.
     387
     388All other C<METADATA> blocks describe a single table with the name of the
     389C<METATA> block being the tables name.  Otherwise, the format of items
     390contained in a C<METADATA> block is the same as for the simple configuration.
     391
     392Note that nested C<METADATA> blocks are not allowed.
     393
     394=head2 Example complex configuration
     395
     396glueforge METADATA
     397    pkg_name        STR  foodb
     398    pkg_namespace   STR  foo
     399END
     400
     401foo METADATA
     402    foo     STR     60      # Primary Key
     403    bar     S32     0
     404    baz     F32     0.0
     405    boing   F64     0.0
     406    zot     BOOL    t       # Key
     407END
     408
     409bar METADATA
     410    zot     BOOL    t       # Key
     411    boing   F64     0.0
     412    baz     F32     0.0
     413    bar     S32     0
     414    foo     STR     60      # Primary Key
     415END
     416
    374417=head1 OPTIONS
    375418
     
    394437=back
    395438
     439=head1 BUGS
     440
     441The format of configuration files is not rigorously checked.  Improperly
     442formatted files may not be caught and cause random (possibly silent) errors
     443and/or improperly code generation.
     444
    396445=head1 CREDITS
    397446
     
    408457=head1 COPYRIGHT
    409458
    410 Copyright (C) 2005  Joshua Hoblitt.  All rights reserved.
     459Copyright (C) 2005-2006  Joshua Hoblitt.  All rights reserved.
    411460
    412461This program is free software; you can redistribute it and/or modify it under
     
    428477=head1 SEE ALSO
    429478
    430 L<PS:IPP::Metadata::Config>
     479C<pslib>, C<PSDC-430-007>. L<PS:IPP::Metadata::Config>
    431480
    432481=cut
Note: See TracChangeset for help on using the changeset viewer.