IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 8380


Ignore:
Timestamp:
Aug 15, 2006, 6:14:10 PM (20 years ago)
Author:
jhoblitt
Message:

VERSION to 0.0.30

Location:
trunk/ippdb
Files:
18 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippdb/Makefile.am

    r8368 r8380  
    4040    $(top_builddir)/docs/man/man3/detMasterFrameRow.3 \
    4141    $(top_builddir)/docs/man/man3/detMasterImfileRow.3 \
    42     $(top_builddir)/docs/man/man3/detResidImfileAnalysisRow.3 \
    43     $(top_builddir)/docs/man/man3/detResidExpAnalysisRow.3
     42    $(top_builddir)/docs/man/man3/detResidImfileRow.3 \
     43    $(top_builddir)/docs/man/man3/detResidExpRow.3
    4444
    4545
    46 docs/man/man3/ippdb.3 docs/man/man3/weatherRow.3 docs/man/man3/skyp_transparencyRow.3 docs/man/man3/skyp_absorptionRow.3 docs/man/man3/skyp_emissionRow.3 docs/man/man3/dimmRow.3 docs/man/man3/skyp_irRow.3 docs/man/man3/domeRow.3 docs/man/man3/telescopeRow.3 docs/man/man3/summitExpRow.3 docs/man/man3/pzPendingExpRow.3 docs/man/man3/pzPendingImfileRow.3 docs/man/man3/newExpRow.3 docs/man/man3/newImfileRow.3 docs/man/man3/rawDetrendExpRow.3 docs/man/man3/rawScienceExpRow.3 docs/man/man3/rawImfileRow.3 docs/man/man3/p1PendingExpRow.3 docs/man/man3/p2PendingExpRow.3 docs/man/man3/p2PendingImfileRow.3 docs/man/man3/p2DoneExpRow.3 docs/man/man3/p2DoneImfileRow.3 docs/man/man3/p3PendingExpRow.3 docs/man/man3/detRunRow.3 docs/man/man3/detInputExpRow.3 docs/man/man3/detProcessedImfileRow.3 docs/man/man3/detStackedImfileRow.3 docs/man/man3/detNormalizedStatImfileRow.3 docs/man/man3/detNormalizedImfileRow.3 docs/man/man3/detMasterFrameRow.3 docs/man/man3/detMasterImfileRow.3 docs/man/man3/detResidImfileAnalysisRow.3 docs/man/man3/detResidExpAnalysisRow.3:
     46docs/man/man3/ippdb.3 docs/man/man3/weatherRow.3 docs/man/man3/skyp_transparencyRow.3 docs/man/man3/skyp_absorptionRow.3 docs/man/man3/skyp_emissionRow.3 docs/man/man3/dimmRow.3 docs/man/man3/skyp_irRow.3 docs/man/man3/domeRow.3 docs/man/man3/telescopeRow.3 docs/man/man3/summitExpRow.3 docs/man/man3/pzPendingExpRow.3 docs/man/man3/pzPendingImfileRow.3 docs/man/man3/newExpRow.3 docs/man/man3/newImfileRow.3 docs/man/man3/rawDetrendExpRow.3 docs/man/man3/rawScienceExpRow.3 docs/man/man3/rawImfileRow.3 docs/man/man3/p1PendingExpRow.3 docs/man/man3/p2PendingExpRow.3 docs/man/man3/p2PendingImfileRow.3 docs/man/man3/p2DoneExpRow.3 docs/man/man3/p2DoneImfileRow.3 docs/man/man3/p3PendingExpRow.3 docs/man/man3/detRunRow.3 docs/man/man3/detInputExpRow.3 docs/man/man3/detProcessedImfileRow.3 docs/man/man3/detStackedImfileRow.3 docs/man/man3/detNormalizedStatImfileRow.3 docs/man/man3/detNormalizedImfileRow.3 docs/man/man3/detMasterFrameRow.3 docs/man/man3/detMasterImfileRow.3 docs/man/man3/detResidImfileRow.3 docs/man/man3/detResidExpRow.3:
    4747        $(DOXYGEN)
    4848
  • trunk/ippdb/configure.ac

    r8368 r8380  
    11AC_PREREQ(2.59)
    22
    3 AC_INIT([ippdb], [0.0.29], [pan-starrs.ifa.hawaii.edu])
     3AC_INIT([ippdb], [0.0.30], [pan-starrs.ifa.hawaii.edu])
    44AC_CONFIG_SRCDIR([ippdb.pc.in])
    55
  • trunk/ippdb/src/ippdb.c

    r8368 r8380  
    6464#define DETMASTERIMFILE_TABLE_NAME "detMasterImfile"
    6565#define DETMASTERIMFILE_INDEX_NAME IPPDB_DEFAULT_INDEX_NAME
    66 #define DETRESIDIMFILEANALYSIS_TABLE_NAME "detResidImfileAnalysis"
    67 #define DETRESIDIMFILEANALYSIS_INDEX_NAME IPPDB_DEFAULT_INDEX_NAME
    68 #define DETRESIDEXPANALYSIS_TABLE_NAME "detResidExpAnalysis"
    69 #define DETRESIDEXPANALYSIS_INDEX_NAME IPPDB_DEFAULT_INDEX_NAME
     66#define DETRESIDIMFILE_TABLE_NAME "detResidImfile"
     67#define DETRESIDIMFILE_INDEX_NAME IPPDB_DEFAULT_INDEX_NAME
     68#define DETRESIDEXP_TABLE_NAME "detResidExp"
     69#define DETRESIDEXP_INDEX_NAME IPPDB_DEFAULT_INDEX_NAME
    7070#define MAX_STRING_LENGTH 1024
    7171
     
    1505915059static void detNormalizedImfileRowFree(detNormalizedImfileRow *object);
    1506015060
    15061 detNormalizedImfileRow *detNormalizedImfileRowAlloc(psS32 det_id, psS32 iteration, const char *class_id, const char *uri, const char *recipe)
     15061detNormalizedImfileRow *detNormalizedImfileRowAlloc(psS32 det_id, psS32 iteration, const char *class_id, const char *uri)
    1506215062{
    1506315063    detNormalizedImfileRow *object;
     
    1507015070    object->class_id = psStringCopy(class_id);
    1507115071    object->uri = psStringCopy(uri);
    15072     object->recipe = psStringCopy(recipe);
    1507315072
    1507415073    return object;
     
    1507915078    psFree(object->class_id);
    1508015079    psFree(object->uri);
    15081     psFree(object->recipe);
    1508215080}
    1508315081
     
    1511315111        return false;
    1511415112    }
    15115     if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "64")) {
    15116         psError(PS_ERR_UNKNOWN, false, "failed to add item recipe");
    15117         psFree(md);
    15118         return false;
    15119     }
    1512015113
    1512115114    status = psDBCreateTable(dbh, DETNORMALIZEDIMFILE_TABLE_NAME, md);
     
    1513115124}
    1513215125
    15133 bool detNormalizedImfileInsert(psDB * dbh, psS32 det_id, psS32 iteration, const char *class_id, const char *uri, const char *recipe)
     15126bool detNormalizedImfileInsert(psDB * dbh, psS32 det_id, psS32 iteration, const char *class_id, const char *uri)
    1513415127{
    1513515128    psMetadata      *md;
     
    1515415147    if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, uri)) {
    1515515148        psError(PS_ERR_UNKNOWN, false, "failed to add item uri");
    15156         psFree(md);
    15157         return false;
    15158     }
    15159     if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, recipe)) {
    15160         psError(PS_ERR_UNKNOWN, false, "failed to add item recipe");
    1516115149        psFree(md);
    1516215150        return false;
     
    1518315171    return deleted;
    1518415172}
    15185 bool detNormalizedImfilePop(psDB *dbh, psS32 *det_id, psS32 *iteration, char **class_id, char **uri, char **recipe)
     15173bool detNormalizedImfilePop(psDB *dbh, psS32 *det_id, psS32 *iteration, char **class_id, char **uri)
    1518615174{
    1518715175    psArray         *rowSet;
     
    1525115239        return false;
    1525215240    }
    15253     *recipe = psMetadataLookupPtr(&status, row, "recipe");
    15254     if (!status) {
    15255         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item recipe");
    15256         psFree(row);
    15257         return false;
    15258     }
    1525915241
    1526015242    psFree(row);
     
    1526515247bool detNormalizedImfileInsertObject(psDB *dbh, detNormalizedImfileRow *object)
    1526615248{
    15267     return detNormalizedImfileInsert(dbh, object->det_id, object->iteration, object->class_id, object->uri, object->recipe);
     15249    return detNormalizedImfileInsert(dbh, object->det_id, object->iteration, object->class_id, object->uri);
    1526815250}
    1526915251
     
    1528515267    char            class_id[256];
    1528615268    char            uri[256];
    15287     char            recipe[256];
    15288 
    15289     if (!detNormalizedImfilePop(dbh, &det_id, &iteration, (char **)&class_id, (char **)&uri, (char **)&recipe)) {
     15269
     15270    if (!detNormalizedImfilePop(dbh, &det_id, &iteration, (char **)&class_id, (char **)&uri)) {
    1529015271        psError(PS_ERR_UNKNOWN, false, "failed to pop a database row");
    1529115272        return NULL;
    1529215273    }
    1529315274
    15294     return detNormalizedImfileRowAlloc(det_id, iteration, class_id, uri, recipe);
     15275    return detNormalizedImfileRowAlloc(det_id, iteration, class_id, uri);
    1529515276}
    1529615277
     
    1541115392        return NULL;
    1541215393    }
    15413     if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, object->recipe)) {
    15414         psError(PS_ERR_UNKNOWN, false, "failed to add item recipe");
    15415         psFree(md);
    15416         return NULL;
    15417     }
    1541815394
    1541915395    return md;
     
    1542715403    char            *class_id;
    1542815404    char            *uri;
    15429     char            *recipe;
    1543015405
    1543115406    det_id = psMetadataLookupS32(&status, md, "det_id");
     
    1544915424        return false;
    1545015425    }
    15451     recipe = psMetadataLookupPtr(&status, md, "recipe");
    15452     if (!status) {
    15453         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item recipe");
    15454         return false;
    15455     }
    15456 
    15457     return detNormalizedImfileRowAlloc(det_id, iteration, class_id, uri, recipe);
     15426
     15427    return detNormalizedImfileRowAlloc(det_id, iteration, class_id, uri);
    1545815428}
    1545915429psArray *detNormalizedImfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
     
    1647716447    return true;
    1647816448}
    16479 static void detResidImfileAnalysisRowFree(detResidImfileAnalysisRow *object);
    16480 
    16481 detResidImfileAnalysisRow *detResidImfileAnalysisRowAlloc(psS32 det_id, psS32 iteration, const char *exp_id, const char *class_id, const char *recipe, const char *uri, const char *b1_uri, const char *b2_uri)
    16482 {
    16483     detResidImfileAnalysisRow *object;
    16484 
    16485     object = psAlloc(sizeof(detResidImfileAnalysisRow));
    16486     psMemSetDeallocator(object, (psFreeFunc)detResidImfileAnalysisRowFree);
     16449static void detResidImfileRowFree(detResidImfileRow *object);
     16450
     16451detResidImfileRow *detResidImfileRowAlloc(psS32 det_id, psS32 iteration, const char *exp_id, const char *class_id, const char *recipe, const char *uri, const char *b1_uri, const char *b2_uri)
     16452{
     16453    detResidImfileRow *object;
     16454
     16455    object = psAlloc(sizeof(detResidImfileRow));
     16456    psMemSetDeallocator(object, (psFreeFunc)detResidImfileRowFree);
    1648716457
    1648816458    object->det_id = det_id;
     
    1649816468}
    1649916469
    16500 static void detResidImfileAnalysisRowFree(detResidImfileAnalysisRow *object)
     16470static void detResidImfileRowFree(detResidImfileRow *object)
    1650116471{
    1650216472    psFree(object->exp_id);
     
    1650816478}
    1650916479
    16510 bool detResidImfileAnalysisCreateTable(psDB *dbh)
     16480bool detResidImfileCreateTable(psDB *dbh)
    1651116481{
    1651216482    psMetadata      *md;
     
    1651416484
    1651516485    md = psMetadataAlloc();
    16516     if (!psMetadataAdd(md, PS_LIST_TAIL, DETRESIDIMFILEANALYSIS_INDEX_NAME, PS_DATA_S32, "AUTO_INCREMENT", 0.0)) {
    16517         psError(PS_ERR_UNKNOWN, false, "failed to add item %s", DETRESIDIMFILEANALYSIS_INDEX_NAME);
     16486    if (!psMetadataAdd(md, PS_LIST_TAIL, DETRESIDIMFILE_INDEX_NAME, PS_DATA_S32, "AUTO_INCREMENT", 0.0)) {
     16487        psError(PS_ERR_UNKNOWN, false, "failed to add item %s", DETRESIDIMFILE_INDEX_NAME);
    1651816488        psFree(md);
    1651916489        return false;
     
    1656016530    }
    1656116531
    16562     status = psDBCreateTable(dbh, DETRESIDIMFILEANALYSIS_TABLE_NAME, md);
     16532    status = psDBCreateTable(dbh, DETRESIDIMFILE_TABLE_NAME, md);
    1656316533
    1656416534    psFree(md);
     
    1656716537}
    1656816538
    16569 bool detResidImfileAnalysisDropTable(psDB *dbh)
    16570 {
    16571     return psDBDropTable(dbh, DETRESIDIMFILEANALYSIS_TABLE_NAME);
    16572 }
    16573 
    16574 bool detResidImfileAnalysisInsert(psDB * dbh, psS32 det_id, psS32 iteration, const char *exp_id, const char *class_id, const char *recipe, const char *uri, const char *b1_uri, const char *b2_uri)
     16539bool detResidImfileDropTable(psDB *dbh)
     16540{
     16541    return psDBDropTable(dbh, DETRESIDIMFILE_TABLE_NAME);
     16542}
     16543
     16544bool detResidImfileInsert(psDB * dbh, psS32 det_id, psS32 iteration, const char *exp_id, const char *class_id, const char *recipe, const char *uri, const char *b1_uri, const char *b2_uri)
    1657516545{
    1657616546    psMetadata      *md;
     
    1661916589    }
    1662016590
    16621     status = psDBInsertOneRow(dbh, DETRESIDIMFILEANALYSIS_TABLE_NAME, md);
     16591    status = psDBInsertOneRow(dbh, DETRESIDIMFILE_TABLE_NAME, md);
    1662216592    psFree(md);
    1662316593
     
    1662516595}
    1662616596
    16627 long long detResidImfileAnalysisDelete(psDB *dbh, const psMetadata *where, unsigned long long limit)
     16597long long detResidImfileDelete(psDB *dbh, const psMetadata *where, unsigned long long limit)
    1662816598{
    1662916599    long long       deleted = 0;
    1663016600
    16631     long long count = psDBDeleteRows(dbh, DETRESIDIMFILEANALYSIS_TABLE_NAME, where, limit);
     16601    long long count = psDBDeleteRows(dbh, DETRESIDIMFILE_TABLE_NAME, where, limit);
    1663216602    if (count < 0) {
    16633         psError(PS_ERR_UNKNOWN, true, "failed to delete row from detResidImfileAnalysis");
     16603        psError(PS_ERR_UNKNOWN, true, "failed to delete row from detResidImfile");
    1663416604        return count;
    1663516605
     
    1663916609    return deleted;
    1664016610}
    16641 bool detResidImfileAnalysisPop(psDB *dbh, psS32 *det_id, psS32 *iteration, char **exp_id, char **class_id, char **recipe, char **uri, char **b1_uri, char **b2_uri)
     16611bool detResidImfilePop(psDB *dbh, psS32 *det_id, psS32 *iteration, char **exp_id, char **class_id, char **recipe, char **uri, char **b1_uri, char **b2_uri)
    1664216612{
    1664316613    psArray         *rowSet;
     
    1664816618    int             rowID;
    1664916619
    16650     rowSet = psDBSelectRows(dbh, DETRESIDIMFILEANALYSIS_TABLE_NAME, NULL, 1);
     16620    rowSet = psDBSelectRows(dbh, DETRESIDIMFILE_TABLE_NAME, NULL, 1);
    1665116621    if (!rowSet) {
    16652         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item %s", DETRESIDIMFILEANALYSIS_INDEX_NAME);
     16622        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item %s", DETRESIDIMFILE_INDEX_NAME);
    1665316623        psFree(rowSet);
    1665416624        return NULL;
     
    1666316633    psFree(rowSet);
    1666416634
    16665     rowID = psMetadataLookupS32(&status, row, DETRESIDIMFILEANALYSIS_INDEX_NAME);
    16666     if (!status) {
    16667         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item %s", DETRESIDIMFILEANALYSIS_INDEX_NAME);
     16635    rowID = psMetadataLookupS32(&status, row, DETRESIDIMFILE_INDEX_NAME);
     16636    if (!status) {
     16637        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item %s", DETRESIDIMFILE_INDEX_NAME);
    1666816638        psFree(row);
    1666916639        return NULL;
     
    1667116641
    1667216642    popped = psMetadataAlloc();
    16673     psMetadataAddS32(popped, PS_LIST_TAIL, DETRESIDIMFILEANALYSIS_INDEX_NAME, 0, NULL, rowID);
    16674 
    16675     deleted = psDBDeleteRows(dbh, DETRESIDIMFILEANALYSIS_TABLE_NAME, popped, 0);
     16643    psMetadataAddS32(popped, PS_LIST_TAIL, DETRESIDIMFILE_INDEX_NAME, 0, NULL, rowID);
     16644
     16645    deleted = psDBDeleteRows(dbh, DETRESIDIMFILE_TABLE_NAME, popped, 0);
    1667616646    if (deleted != 1) {
    1667716647        psError(PS_ERR_UNKNOWN, false, "database failed to delete row");
     
    1673716707}
    1673816708
    16739 bool detResidImfileAnalysisInsertObject(psDB *dbh, detResidImfileAnalysisRow *object)
    16740 {
    16741     return detResidImfileAnalysisInsert(dbh, object->det_id, object->iteration, object->exp_id, object->class_id, object->recipe, object->uri, object->b1_uri, object->b2_uri);
    16742 }
    16743 
    16744 bool detResidImfileAnalysisInsertObjects(psDB *dbh, psArray *objects)
     16709bool detResidImfileInsertObject(psDB *dbh, detResidImfileRow *object)
     16710{
     16711    return detResidImfileInsert(dbh, object->det_id, object->iteration, object->exp_id, object->class_id, object->recipe, object->uri, object->b1_uri, object->b2_uri);
     16712}
     16713
     16714bool detResidImfileInsertObjects(psDB *dbh, psArray *objects)
    1674516715{
    1674616716    for (long i = 0; i < psArrayLength(objects); i++) {
    16747         if (!detResidImfileAnalysisInsertObject(dbh, objects->data[i])) {
     16717        if (!detResidImfileInsertObject(dbh, objects->data[i])) {
    1674816718            return false;
    1674916719        }
     
    1675316723}
    1675416724
    16755 detResidImfileAnalysisRow *detResidImfileAnalysisPopObject(psDB *dbh)
     16725detResidImfileRow *detResidImfilePopObject(psDB *dbh)
    1675616726{
    1675716727    psS32           det_id;
     
    1676416734    char            b2_uri[256];
    1676516735
    16766     if (!detResidImfileAnalysisPop(dbh, &det_id, &iteration, (char **)&exp_id, (char **)&class_id, (char **)&recipe, (char **)&uri, (char **)&b1_uri, (char **)&b2_uri)) {
     16736    if (!detResidImfilePop(dbh, &det_id, &iteration, (char **)&exp_id, (char **)&class_id, (char **)&recipe, (char **)&uri, (char **)&b1_uri, (char **)&b2_uri)) {
    1676716737        psError(PS_ERR_UNKNOWN, false, "failed to pop a database row");
    1676816738        return NULL;
    1676916739    }
    1677016740
    16771     return detResidImfileAnalysisRowAlloc(det_id, iteration, exp_id, class_id, recipe, uri, b1_uri, b2_uri);
    16772 }
    16773 
    16774 bool detResidImfileAnalysisInsertFits(psDB *dbh, const psFits *fits)
     16741    return detResidImfileRowAlloc(det_id, iteration, exp_id, class_id, recipe, uri, b1_uri, b2_uri);
     16742}
     16743
     16744bool detResidImfileInsertFits(psDB *dbh, const psFits *fits)
    1677516745{
    1677616746    psArray         *rowSet;
    1677716747
    16778     // move to (the first?) extension named  DETRESIDIMFILEANALYSIS_TABLE_NAME
    16779     if (!psFitsMoveExtName(fits, DETRESIDIMFILEANALYSIS_TABLE_NAME)) {
    16780         psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", DETRESIDIMFILEANALYSIS_TABLE_NAME);
     16748    // move to (the first?) extension named  DETRESIDIMFILE_TABLE_NAME
     16749    if (!psFitsMoveExtName(fits, DETRESIDIMFILE_TABLE_NAME)) {
     16750        psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", DETRESIDIMFILE_TABLE_NAME);
    1678116751        return false;
    1678216752    }
     
    1679616766    }
    1679716767
    16798     if (!psDBInsertRows(dbh, DETRESIDIMFILEANALYSIS_TABLE_NAME, rowSet)) {
     16768    if (!psDBInsertRows(dbh, DETRESIDIMFILE_TABLE_NAME, rowSet)) {
    1679916769        psError(PS_ERR_UNKNOWN, false, "databse insert failed");
    1680016770        psFree(rowSet);
     
    1680716777}
    1680816778
    16809 bool detResidImfileAnalysisPopFits(psDB *dbh, psFits *fits, unsigned long long limit)
     16779bool detResidImfilePopFits(psDB *dbh, psFits *fits, unsigned long long limit)
    1681016780{
    1681116781    char            query[MAX_STRING_LENGTH];
    1681216782
    16813     if (!detResidImfileAnalysisSelectRowsFits(dbh, fits, NULL, limit)) {
     16783    if (!detResidImfileSelectRowsFits(dbh, fits, NULL, limit)) {
    1681416784        psError(PS_ERR_UNKNOWN, true, "database error or table is empty");
    1681516785        return false;
     
    1681916789    if (snprintf(query, MAX_STRING_LENGTH,
    1682016790                "DELETE FROM %s ORDER BY %s DESC LIMIT %lld",
    16821                 DETRESIDIMFILEANALYSIS_TABLE_NAME, DETRESIDIMFILEANALYSIS_INDEX_NAME, limit) < 0) {
     16791                DETRESIDIMFILE_TABLE_NAME, DETRESIDIMFILE_INDEX_NAME, limit) < 0) {
    1682216792        psError(PS_ERR_UNKNOWN, true, "query value attempted to exceed %s bytes", MAX_STRING_LENGTH);
    1682316793        return false;
     
    1683216802}
    1683316803
    16834 bool detResidImfileAnalysisSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit)
     16804bool detResidImfileSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit)
    1683516805{
    1683616806    psArray         *rowSet;
    1683716807    psU64           i;
    1683816808
    16839     rowSet = psDBSelectRows(dbh, DETRESIDIMFILEANALYSIS_TABLE_NAME, where, limit);
     16809    rowSet = psDBSelectRows(dbh, DETRESIDIMFILE_TABLE_NAME, where, limit);
    1684016810    if (!rowSet) {
    1684116811        return false;
     
    1684416814    // strip index column
    1684516815    for (i = 0; i < rowSet->n; i++) {
    16846         if (!psMetadataRemove((psMetadata *)rowSet->data[i], 0, DETRESIDIMFILEANALYSIS_INDEX_NAME)) {
    16847             psError(PS_ERR_UNKNOWN, true, "failed to remove item %s", DETRESIDIMFILEANALYSIS_INDEX_NAME);
     16816        if (!psMetadataRemove((psMetadata *)rowSet->data[i], 0, DETRESIDIMFILE_INDEX_NAME)) {
     16817            psError(PS_ERR_UNKNOWN, true, "failed to remove item %s", DETRESIDIMFILE_INDEX_NAME);
    1684816818            psFree(rowSet);
    1684916819            return false;
     
    1685216822
    1685316823    // output to fits
    16854     if (!psFitsWriteTable(fits, NULL, rowSet, DETRESIDIMFILEANALYSIS_TABLE_NAME)) {
     16824    if (!psFitsWriteTable(fits, NULL, rowSet, DETRESIDIMFILE_TABLE_NAME)) {
    1685516825        psError(PS_ERR_UNKNOWN, false, "FITS table write failed");
    1685616826        psFree(rowSet);
     
    1686316833}
    1686416834
    16865 psMetadata *detResidImfileAnalysisMetadataFromObject(const detResidImfileAnalysisRow *object)
     16835psMetadata *detResidImfileMetadataFromObject(const detResidImfileRow *object)
    1686616836{
    1686716837    psMetadata      *md;
     
    1691216882}
    1691316883
    16914 detResidImfileAnalysisRow *detResidImfileAnalysisObjectFromMetadata(psMetadata *md)
     16884detResidImfileRow *detResidImfileObjectFromMetadata(psMetadata *md)
    1691516885{
    1691616886    bool            status;
     
    1696516935    }
    1696616936
    16967     return detResidImfileAnalysisRowAlloc(det_id, iteration, exp_id, class_id, recipe, uri, b1_uri, b2_uri);
    16968 }
    16969 psArray *detResidImfileAnalysisSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
     16937    return detResidImfileRowAlloc(det_id, iteration, exp_id, class_id, recipe, uri, b1_uri, b2_uri);
     16938}
     16939psArray *detResidImfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
    1697016940{
    1697116941    psArray         *rowSet;
     
    1697316943    psU64           i;
    1697416944
    16975     rowSet = psDBSelectRows(dbh, DETRESIDIMFILEANALYSIS_TABLE_NAME, where, limit);
     16945    rowSet = psDBSelectRows(dbh, DETRESIDIMFILE_TABLE_NAME, where, limit);
    1697616946    if (!rowSet) {
    1697716947        return NULL;
     
    1698016950    // strip index column
    1698116951    for (i = 0; i < rowSet->n; i++) {
    16982         if (!psMetadataRemove((psMetadata *)(rowSet->data[i]), 0, DETRESIDIMFILEANALYSIS_INDEX_NAME)) {
    16983             psError(PS_ERR_UNKNOWN, true, "failed to remove item %s", DETRESIDIMFILEANALYSIS_INDEX_NAME);
     16952        if (!psMetadataRemove((psMetadata *)(rowSet->data[i]), 0, DETRESIDIMFILE_INDEX_NAME)) {
     16953            psError(PS_ERR_UNKNOWN, true, "failed to remove item %s", DETRESIDIMFILE_INDEX_NAME);
    1698416954            psFree(rowSet);
    1698516955            return false;
     
    1699316963
    1699416964    for (i = 0; i < rowSet->n; i++) {
    16995         detResidImfileAnalysisRow *object = detResidImfileAnalysisObjectFromMetadata(rowSet->data[i]);
     16965        detResidImfileRow *object = detResidImfileObjectFromMetadata(rowSet->data[i]);
    1699616966        psArrayAdd(returnSet, 0, object);
    1699716967        psFree(object);
     
    1700216972    return returnSet;
    1700316973}
    17004 bool detResidImfileAnalysisDeleteObject(psDB *dbh, const detResidImfileAnalysisRow *object)
    17005 {
    17006     psMetadata *where = detResidImfileAnalysisMetadataFromObject(object);
    17007     long long count = psDBDeleteRows(dbh, DETRESIDIMFILEANALYSIS_TABLE_NAME, where, 0);
     16974bool detResidImfileDeleteObject(psDB *dbh, const detResidImfileRow *object)
     16975{
     16976    psMetadata *where = detResidImfileMetadataFromObject(object);
     16977    long long count = psDBDeleteRows(dbh, DETRESIDIMFILE_TABLE_NAME, where, 0);
    1700816978    psFree(where)
    1700916979    if (count < 0) {
    17010         psError(PS_ERR_UNKNOWN, true, "failed to delete row from detResidImfileAnalysis");
     16980        psError(PS_ERR_UNKNOWN, true, "failed to delete row from detResidImfile");
    1701116981        return false;
    1701216982    }
     
    1701416984        // XXX should this be a psAbort() instead?  It is possible that
    1701516985        // having an object match multiple rows was by design.
    17016         psError(PS_ERR_UNKNOWN, true, "detResidImfileAnalysisRow object matched more then one row.  Check your database schema");
    17017         return false;
    17018     }
    17019 
    17020     return true;
    17021 }
    17022 long long detResidImfileAnalysisDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit)
     16986        psError(PS_ERR_UNKNOWN, true, "detResidImfileRow object matched more then one row.  Check your database schema");
     16987        return false;
     16988    }
     16989
     16990    return true;
     16991}
     16992long long detResidImfileDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit)
    1702316993{
    1702416994    long long       deleted = 0;
    1702516995
    1702616996    for (long long i = 0; i < objects->n; i++) {
    17027         detResidImfileAnalysisRow *object = objects->data[i];
    17028         psMetadata *where = detResidImfileAnalysisMetadataFromObject(object);
    17029         long long count = psDBDeleteRows(dbh, DETRESIDIMFILEANALYSIS_TABLE_NAME, where, limit);
     16997        detResidImfileRow *object = objects->data[i];
     16998        psMetadata *where = detResidImfileMetadataFromObject(object);
     16999        long long count = psDBDeleteRows(dbh, DETRESIDIMFILE_TABLE_NAME, where, limit);
    1703017000        psFree(where)
    1703117001        if (count < 0) {
    17032             psError(PS_ERR_UNKNOWN, true, "failed to delete row from detResidImfileAnalysis");
     17002            psError(PS_ERR_UNKNOWN, true, "failed to delete row from detResidImfile");
    1703317003            return count;
    1703417004        }
     
    1703917009    return deleted;
    1704017010}
    17041 bool detResidImfileAnalysisPrintObjects(FILE *stream, psArray *objects, bool mdcf)
     17011bool detResidImfilePrintObjects(FILE *stream, psArray *objects, bool mdcf)
    1704217012{
    1704317013    PS_ASSERT_PTR_NON_NULL(objects, false);
     
    1704517015    psMetadata *output = psMetadataAlloc();
    1704617016    for (long i = 0; i < psArrayLength(objects); i++) {
    17047         psMetadata *md = detResidImfileAnalysisMetadataFromObject(objects->data[i]);
     17017        psMetadata *md = detResidImfileMetadataFromObject(objects->data[i]);
    1704817018        if (!psMetadataAddMetadata(
    1704917019            output,
    1705017020            PS_LIST_TAIL,
    17051             DETRESIDIMFILEANALYSIS_TABLE_NAME,
     17021            DETRESIDIMFILE_TABLE_NAME,
    1705217022            PS_META_DUPLICATE_OK,
    1705317023            NULL,
     
    1707017040    return true;
    1707117041}
    17072 static void detResidExpAnalysisRowFree(detResidExpAnalysisRow *object);
    17073 
    17074 detResidExpAnalysisRow *detResidExpAnalysisRowAlloc(psS32 det_id, psS32 iteration, const char *exp_id, const char *recipe, bool keep, bool accept)
    17075 {
    17076     detResidExpAnalysisRow *object;
    17077 
    17078     object = psAlloc(sizeof(detResidExpAnalysisRow));
    17079     psMemSetDeallocator(object, (psFreeFunc)detResidExpAnalysisRowFree);
     17042static void detResidExpRowFree(detResidExpRow *object);
     17043
     17044detResidExpRow *detResidExpRowAlloc(psS32 det_id, psS32 iteration, const char *exp_id, const char *recipe, bool keep, bool accept)
     17045{
     17046    detResidExpRow *object;
     17047
     17048    object = psAlloc(sizeof(detResidExpRow));
     17049    psMemSetDeallocator(object, (psFreeFunc)detResidExpRowFree);
    1708017050
    1708117051    object->det_id = det_id;
     
    1708917059}
    1709017060
    17091 static void detResidExpAnalysisRowFree(detResidExpAnalysisRow *object)
     17061static void detResidExpRowFree(detResidExpRow *object)
    1709217062{
    1709317063    psFree(object->exp_id);
     
    1709517065}
    1709617066
    17097 bool detResidExpAnalysisCreateTable(psDB *dbh)
     17067bool detResidExpCreateTable(psDB *dbh)
    1709817068{
    1709917069    psMetadata      *md;
     
    1710117071
    1710217072    md = psMetadataAlloc();
    17103     if (!psMetadataAdd(md, PS_LIST_TAIL, DETRESIDEXPANALYSIS_INDEX_NAME, PS_DATA_S32, "AUTO_INCREMENT", 0.0)) {
    17104         psError(PS_ERR_UNKNOWN, false, "failed to add item %s", DETRESIDEXPANALYSIS_INDEX_NAME);
     17073    if (!psMetadataAdd(md, PS_LIST_TAIL, DETRESIDEXP_INDEX_NAME, PS_DATA_S32, "AUTO_INCREMENT", 0.0)) {
     17074        psError(PS_ERR_UNKNOWN, false, "failed to add item %s", DETRESIDEXP_INDEX_NAME);
    1710517075        psFree(md);
    1710617076        return false;
     
    1713717107    }
    1713817108
    17139     status = psDBCreateTable(dbh, DETRESIDEXPANALYSIS_TABLE_NAME, md);
     17109    status = psDBCreateTable(dbh, DETRESIDEXP_TABLE_NAME, md);
    1714017110
    1714117111    psFree(md);
     
    1714417114}
    1714517115
    17146 bool detResidExpAnalysisDropTable(psDB *dbh)
    17147 {
    17148     return psDBDropTable(dbh, DETRESIDEXPANALYSIS_TABLE_NAME);
    17149 }
    17150 
    17151 bool detResidExpAnalysisInsert(psDB * dbh, psS32 det_id, psS32 iteration, const char *exp_id, const char *recipe, bool keep, bool accept)
     17116bool detResidExpDropTable(psDB *dbh)
     17117{
     17118    return psDBDropTable(dbh, DETRESIDEXP_TABLE_NAME);
     17119}
     17120
     17121bool detResidExpInsert(psDB * dbh, psS32 det_id, psS32 iteration, const char *exp_id, const char *recipe, bool keep, bool accept)
    1715217122{
    1715317123    psMetadata      *md;
     
    1718617156    }
    1718717157
    17188     status = psDBInsertOneRow(dbh, DETRESIDEXPANALYSIS_TABLE_NAME, md);
     17158    status = psDBInsertOneRow(dbh, DETRESIDEXP_TABLE_NAME, md);
    1718917159    psFree(md);
    1719017160
     
    1719217162}
    1719317163
    17194 long long detResidExpAnalysisDelete(psDB *dbh, const psMetadata *where, unsigned long long limit)
     17164long long detResidExpDelete(psDB *dbh, const psMetadata *where, unsigned long long limit)
    1719517165{
    1719617166    long long       deleted = 0;
    1719717167
    17198     long long count = psDBDeleteRows(dbh, DETRESIDEXPANALYSIS_TABLE_NAME, where, limit);
     17168    long long count = psDBDeleteRows(dbh, DETRESIDEXP_TABLE_NAME, where, limit);
    1719917169    if (count < 0) {
    17200         psError(PS_ERR_UNKNOWN, true, "failed to delete row from detResidExpAnalysis");
     17170        psError(PS_ERR_UNKNOWN, true, "failed to delete row from detResidExp");
    1720117171        return count;
    1720217172
     
    1720617176    return deleted;
    1720717177}
    17208 bool detResidExpAnalysisPop(psDB *dbh, psS32 *det_id, psS32 *iteration, char **exp_id, char **recipe, bool *keep, bool *accept)
     17178bool detResidExpPop(psDB *dbh, psS32 *det_id, psS32 *iteration, char **exp_id, char **recipe, bool *keep, bool *accept)
    1720917179{
    1721017180    psArray         *rowSet;
     
    1721517185    int             rowID;
    1721617186
    17217     rowSet = psDBSelectRows(dbh, DETRESIDEXPANALYSIS_TABLE_NAME, NULL, 1);
     17187    rowSet = psDBSelectRows(dbh, DETRESIDEXP_TABLE_NAME, NULL, 1);
    1721817188    if (!rowSet) {
    17219         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item %s", DETRESIDEXPANALYSIS_INDEX_NAME);
     17189        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item %s", DETRESIDEXP_INDEX_NAME);
    1722017190        psFree(rowSet);
    1722117191        return NULL;
     
    1723017200    psFree(rowSet);
    1723117201
    17232     rowID = psMetadataLookupS32(&status, row, DETRESIDEXPANALYSIS_INDEX_NAME);
    17233     if (!status) {
    17234         psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item %s", DETRESIDEXPANALYSIS_INDEX_NAME);
     17202    rowID = psMetadataLookupS32(&status, row, DETRESIDEXP_INDEX_NAME);
     17203    if (!status) {
     17204        psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item %s", DETRESIDEXP_INDEX_NAME);
    1723517205        psFree(row);
    1723617206        return NULL;
     
    1723817208
    1723917209    popped = psMetadataAlloc();
    17240     psMetadataAddS32(popped, PS_LIST_TAIL, DETRESIDEXPANALYSIS_INDEX_NAME, 0, NULL, rowID);
    17241 
    17242     deleted = psDBDeleteRows(dbh, DETRESIDEXPANALYSIS_TABLE_NAME, popped, 0);
     17210    psMetadataAddS32(popped, PS_LIST_TAIL, DETRESIDEXP_INDEX_NAME, 0, NULL, rowID);
     17211
     17212    deleted = psDBDeleteRows(dbh, DETRESIDEXP_TABLE_NAME, popped, 0);
    1724317213    if (deleted != 1) {
    1724417214        psError(PS_ERR_UNKNOWN, false, "database failed to delete row");
     
    1729217262}
    1729317263
    17294 bool detResidExpAnalysisInsertObject(psDB *dbh, detResidExpAnalysisRow *object)
    17295 {
    17296     return detResidExpAnalysisInsert(dbh, object->det_id, object->iteration, object->exp_id, object->recipe, object->keep, object->accept);
    17297 }
    17298 
    17299 bool detResidExpAnalysisInsertObjects(psDB *dbh, psArray *objects)
     17264bool detResidExpInsertObject(psDB *dbh, detResidExpRow *object)
     17265{
     17266    return detResidExpInsert(dbh, object->det_id, object->iteration, object->exp_id, object->recipe, object->keep, object->accept);
     17267}
     17268
     17269bool detResidExpInsertObjects(psDB *dbh, psArray *objects)
    1730017270{
    1730117271    for (long i = 0; i < psArrayLength(objects); i++) {
    17302         if (!detResidExpAnalysisInsertObject(dbh, objects->data[i])) {
     17272        if (!detResidExpInsertObject(dbh, objects->data[i])) {
    1730317273            return false;
    1730417274        }
     
    1730817278}
    1730917279
    17310 detResidExpAnalysisRow *detResidExpAnalysisPopObject(psDB *dbh)
     17280detResidExpRow *detResidExpPopObject(psDB *dbh)
    1731117281{
    1731217282    psS32           det_id;
     
    1731717287    bool            accept;
    1731817288
    17319     if (!detResidExpAnalysisPop(dbh, &det_id, &iteration, (char **)&exp_id, (char **)&recipe, &keep, &accept)) {
     17289    if (!detResidExpPop(dbh, &det_id, &iteration, (char **)&exp_id, (char **)&recipe, &keep, &accept)) {
    1732017290        psError(PS_ERR_UNKNOWN, false, "failed to pop a database row");
    1732117291        return NULL;
    1732217292    }
    1732317293
    17324     return detResidExpAnalysisRowAlloc(det_id, iteration, exp_id, recipe, keep, accept);
    17325 }
    17326 
    17327 bool detResidExpAnalysisInsertFits(psDB *dbh, const psFits *fits)
     17294    return detResidExpRowAlloc(det_id, iteration, exp_id, recipe, keep, accept);
     17295}
     17296
     17297bool detResidExpInsertFits(psDB *dbh, const psFits *fits)
    1732817298{
    1732917299    psArray         *rowSet;
    1733017300
    17331     // move to (the first?) extension named  DETRESIDEXPANALYSIS_TABLE_NAME
    17332     if (!psFitsMoveExtName(fits, DETRESIDEXPANALYSIS_TABLE_NAME)) {
    17333         psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", DETRESIDEXPANALYSIS_TABLE_NAME);
     17301    // move to (the first?) extension named  DETRESIDEXP_TABLE_NAME
     17302    if (!psFitsMoveExtName(fits, DETRESIDEXP_TABLE_NAME)) {
     17303        psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", DETRESIDEXP_TABLE_NAME);
    1733417304        return false;
    1733517305    }
     
    1734917319    }
    1735017320
    17351     if (!psDBInsertRows(dbh, DETRESIDEXPANALYSIS_TABLE_NAME, rowSet)) {
     17321    if (!psDBInsertRows(dbh, DETRESIDEXP_TABLE_NAME, rowSet)) {
    1735217322        psError(PS_ERR_UNKNOWN, false, "databse insert failed");
    1735317323        psFree(rowSet);
     
    1736017330}
    1736117331
    17362 bool detResidExpAnalysisPopFits(psDB *dbh, psFits *fits, unsigned long long limit)
     17332bool detResidExpPopFits(psDB *dbh, psFits *fits, unsigned long long limit)
    1736317333{
    1736417334    char            query[MAX_STRING_LENGTH];
    1736517335
    17366     if (!detResidExpAnalysisSelectRowsFits(dbh, fits, NULL, limit)) {
     17336    if (!detResidExpSelectRowsFits(dbh, fits, NULL, limit)) {
    1736717337        psError(PS_ERR_UNKNOWN, true, "database error or table is empty");
    1736817338        return false;
     
    1737217342    if (snprintf(query, MAX_STRING_LENGTH,
    1737317343                "DELETE FROM %s ORDER BY %s DESC LIMIT %lld",
    17374                 DETRESIDEXPANALYSIS_TABLE_NAME, DETRESIDEXPANALYSIS_INDEX_NAME, limit) < 0) {
     17344                DETRESIDEXP_TABLE_NAME, DETRESIDEXP_INDEX_NAME, limit) < 0) {
    1737517345        psError(PS_ERR_UNKNOWN, true, "query value attempted to exceed %s bytes", MAX_STRING_LENGTH);
    1737617346        return false;
     
    1738517355}
    1738617356
    17387 bool detResidExpAnalysisSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit)
     17357bool detResidExpSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit)
    1738817358{
    1738917359    psArray         *rowSet;
    1739017360    psU64           i;
    1739117361
    17392     rowSet = psDBSelectRows(dbh, DETRESIDEXPANALYSIS_TABLE_NAME, where, limit);
     17362    rowSet = psDBSelectRows(dbh, DETRESIDEXP_TABLE_NAME, where, limit);
    1739317363    if (!rowSet) {
    1739417364        return false;
     
    1739717367    // strip index column
    1739817368    for (i = 0; i < rowSet->n; i++) {
    17399         if (!psMetadataRemove((psMetadata *)rowSet->data[i], 0, DETRESIDEXPANALYSIS_INDEX_NAME)) {
    17400             psError(PS_ERR_UNKNOWN, true, "failed to remove item %s", DETRESIDEXPANALYSIS_INDEX_NAME);
     17369        if (!psMetadataRemove((psMetadata *)rowSet->data[i], 0, DETRESIDEXP_INDEX_NAME)) {
     17370            psError(PS_ERR_UNKNOWN, true, "failed to remove item %s", DETRESIDEXP_INDEX_NAME);
    1740117371            psFree(rowSet);
    1740217372            return false;
     
    1740517375
    1740617376    // output to fits
    17407     if (!psFitsWriteTable(fits, NULL, rowSet, DETRESIDEXPANALYSIS_TABLE_NAME)) {
     17377    if (!psFitsWriteTable(fits, NULL, rowSet, DETRESIDEXP_TABLE_NAME)) {
    1740817378        psError(PS_ERR_UNKNOWN, false, "FITS table write failed");
    1740917379        psFree(rowSet);
     
    1741617386}
    1741717387
    17418 psMetadata *detResidExpAnalysisMetadataFromObject(const detResidExpAnalysisRow *object)
     17388psMetadata *detResidExpMetadataFromObject(const detResidExpRow *object)
    1741917389{
    1742017390    psMetadata      *md;
     
    1745517425}
    1745617426
    17457 detResidExpAnalysisRow *detResidExpAnalysisObjectFromMetadata(psMetadata *md)
     17427detResidExpRow *detResidExpObjectFromMetadata(psMetadata *md)
    1745817428{
    1745917429    bool            status;
     
    1749617466    }
    1749717467
    17498     return detResidExpAnalysisRowAlloc(det_id, iteration, exp_id, recipe, keep, accept);
    17499 }
    17500 psArray *detResidExpAnalysisSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
     17468    return detResidExpRowAlloc(det_id, iteration, exp_id, recipe, keep, accept);
     17469}
     17470psArray *detResidExpSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)
    1750117471{
    1750217472    psArray         *rowSet;
     
    1750417474    psU64           i;
    1750517475
    17506     rowSet = psDBSelectRows(dbh, DETRESIDEXPANALYSIS_TABLE_NAME, where, limit);
     17476    rowSet = psDBSelectRows(dbh, DETRESIDEXP_TABLE_NAME, where, limit);
    1750717477    if (!rowSet) {
    1750817478        return NULL;
     
    1751117481    // strip index column
    1751217482    for (i = 0; i < rowSet->n; i++) {
    17513         if (!psMetadataRemove((psMetadata *)(rowSet->data[i]), 0, DETRESIDEXPANALYSIS_INDEX_NAME)) {
    17514             psError(PS_ERR_UNKNOWN, true, "failed to remove item %s", DETRESIDEXPANALYSIS_INDEX_NAME);
     17483        if (!psMetadataRemove((psMetadata *)(rowSet->data[i]), 0, DETRESIDEXP_INDEX_NAME)) {
     17484            psError(PS_ERR_UNKNOWN, true, "failed to remove item %s", DETRESIDEXP_INDEX_NAME);
    1751517485            psFree(rowSet);
    1751617486            return false;
     
    1752417494
    1752517495    for (i = 0; i < rowSet->n; i++) {
    17526         detResidExpAnalysisRow *object = detResidExpAnalysisObjectFromMetadata(rowSet->data[i]);
     17496        detResidExpRow *object = detResidExpObjectFromMetadata(rowSet->data[i]);
    1752717497        psArrayAdd(returnSet, 0, object);
    1752817498        psFree(object);
     
    1753317503    return returnSet;
    1753417504}
    17535 bool detResidExpAnalysisDeleteObject(psDB *dbh, const detResidExpAnalysisRow *object)
    17536 {
    17537     psMetadata *where = detResidExpAnalysisMetadataFromObject(object);
    17538     long long count = psDBDeleteRows(dbh, DETRESIDEXPANALYSIS_TABLE_NAME, where, 0);
     17505bool detResidExpDeleteObject(psDB *dbh, const detResidExpRow *object)
     17506{
     17507    psMetadata *where = detResidExpMetadataFromObject(object);
     17508    long long count = psDBDeleteRows(dbh, DETRESIDEXP_TABLE_NAME, where, 0);
    1753917509    psFree(where)
    1754017510    if (count < 0) {
    17541         psError(PS_ERR_UNKNOWN, true, "failed to delete row from detResidExpAnalysis");
     17511        psError(PS_ERR_UNKNOWN, true, "failed to delete row from detResidExp");
    1754217512        return false;
    1754317513    }
     
    1754517515        // XXX should this be a psAbort() instead?  It is possible that
    1754617516        // having an object match multiple rows was by design.
    17547         psError(PS_ERR_UNKNOWN, true, "detResidExpAnalysisRow object matched more then one row.  Check your database schema");
    17548         return false;
    17549     }
    17550 
    17551     return true;
    17552 }
    17553 long long detResidExpAnalysisDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit)
     17517        psError(PS_ERR_UNKNOWN, true, "detResidExpRow object matched more then one row.  Check your database schema");
     17518        return false;
     17519    }
     17520
     17521    return true;
     17522}
     17523long long detResidExpDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit)
    1755417524{
    1755517525    long long       deleted = 0;
    1755617526
    1755717527    for (long long i = 0; i < objects->n; i++) {
    17558         detResidExpAnalysisRow *object = objects->data[i];
    17559         psMetadata *where = detResidExpAnalysisMetadataFromObject(object);
    17560         long long count = psDBDeleteRows(dbh, DETRESIDEXPANALYSIS_TABLE_NAME, where, limit);
     17528        detResidExpRow *object = objects->data[i];
     17529        psMetadata *where = detResidExpMetadataFromObject(object);
     17530        long long count = psDBDeleteRows(dbh, DETRESIDEXP_TABLE_NAME, where, limit);
    1756117531        psFree(where)
    1756217532        if (count < 0) {
    17563             psError(PS_ERR_UNKNOWN, true, "failed to delete row from detResidExpAnalysis");
     17533            psError(PS_ERR_UNKNOWN, true, "failed to delete row from detResidExp");
    1756417534            return count;
    1756517535        }
     
    1757017540    return deleted;
    1757117541}
    17572 bool detResidExpAnalysisPrintObjects(FILE *stream, psArray *objects, bool mdcf)
     17542bool detResidExpPrintObjects(FILE *stream, psArray *objects, bool mdcf)
    1757317543{
    1757417544    PS_ASSERT_PTR_NON_NULL(objects, false);
     
    1757617546    psMetadata *output = psMetadataAlloc();
    1757717547    for (long i = 0; i < psArrayLength(objects); i++) {
    17578         psMetadata *md = detResidExpAnalysisMetadataFromObject(objects->data[i]);
     17548        psMetadata *md = detResidExpMetadataFromObject(objects->data[i]);
    1757917549        if (!psMetadataAddMetadata(
    1758017550            output,
    1758117551            PS_LIST_TAIL,
    17582             DETRESIDEXPANALYSIS_TABLE_NAME,
     17552            DETRESIDEXP_TABLE_NAME,
    1758317553            PS_META_DUPLICATE_OK,
    1758417554            NULL,
  • trunk/ippdb/src/ippdb.h

    r8368 r8380  
    65166516    char            *class_id;
    65176517    char            *uri;
    6518     char            *recipe;
    65196518} detNormalizedImfileRow;
    65206519
     
    65286527    psS32           iteration,
    65296528    const char      *class_id,
    6530     const char      *uri,
    6531     const char      *recipe
     6529    const char      *uri
    65326530);
    65336531
     
    65626560    psS32           iteration,
    65636561    const char      *class_id,
    6564     const char      *uri,
    6565     const char      *recipe
     6562    const char      *uri
    65666563);
    65676564
     
    65876584    psS32           *iteration,
    65886585    char            **class_id,
    6589     char            **uri,
    6590     char            **recipe
     6586    char            **uri
    65916587);
    65926588
     
    71877183    bool            mdcf                ///< format as mdconfig or simple
    71887184);
    7189 /** detResidImfileAnalysisRow data structure
    7190  *
    7191  * Structure for representing a single row of detResidImfileAnalysis table data.
     7185/** detResidImfileRow data structure
     7186 *
     7187 * Structure for representing a single row of detResidImfile table data.
    71927188 */
    71937189
     
    72017197    char            *b1_uri;
    72027198    char            *b2_uri;
    7203 } detResidImfileAnalysisRow;
    7204 
    7205 /** Creates a new detResidImfileAnalysisRow object
    7206  *
    7207  *  @return A new detResidImfileAnalysisRow object or NULL on failure.
    7208  */
    7209 
    7210 detResidImfileAnalysisRow *detResidImfileAnalysisRowAlloc(
     7199} detResidImfileRow;
     7200
     7201/** Creates a new detResidImfileRow object
     7202 *
     7203 *  @return A new detResidImfileRow object or NULL on failure.
     7204 */
     7205
     7206detResidImfileRow *detResidImfileRowAlloc(
    72117207    psS32           det_id,
    72127208    psS32           iteration,
     
    72197215);
    72207216
    7221 /** Creates a new detResidImfileAnalysis table
    7222  *
    7223  * @return true on success
    7224  */
    7225 
    7226 bool detResidImfileAnalysisCreateTable(
    7227     psDB            *dbh                ///< Database handle
    7228 );
    7229 
    7230 /** Deletes a detResidImfileAnalysis table
    7231  *
    7232  * @return true on success
    7233  */
    7234 
    7235 bool detResidImfileAnalysisDropTable(
     7217/** Creates a new detResidImfile table
     7218 *
     7219 * @return true on success
     7220 */
     7221
     7222bool detResidImfileCreateTable(
     7223    psDB            *dbh                ///< Database handle
     7224);
     7225
     7226/** Deletes a detResidImfile table
     7227 *
     7228 * @return true on success
     7229 */
     7230
     7231bool detResidImfileDropTable(
    72367232    psDB            *dbh                ///< Database handle
    72377233);
     
    72447240 */
    72457241
    7246 bool detResidImfileAnalysisInsert(
     7242bool detResidImfileInsert(
    72477243    psDB            *dbh,               ///< Database handle
    72487244    psS32           det_id,
     
    72617257 */
    72627258
    7263 long long detResidImfileAnalysisDelete(
     7259long long detResidImfileDelete(
    72647260    psDB            *dbh,               ///< Database handle
    72657261    const psMetadata *where,            ///< Row match criteria
     
    72727268 */
    72737269
    7274 bool detResidImfileAnalysisPop(
     7270bool detResidImfilePop(
    72757271    psDB            *dbh,               ///< Database handle
    72767272    psS32           *det_id,
     
    72847280);
    72857281
    7286 /** Insert a single detResidImfileAnalysisRow object into a table
     7282/** Insert a single detResidImfileRow object into a table
    72877283 *
    72887284 * This function constructs and inserts a single row based on it's parameters.
     
    72917287 */
    72927288
    7293 bool detResidImfileAnalysisInsertObject(
    7294     psDB            *dbh,               ///< Database handle
    7295     detResidImfileAnalysisRow *object             ///< detResidImfileAnalysisRow object
    7296 );
    7297 
    7298 /** Insert an array of detResidImfileAnalysisRow object into a table
     7289bool detResidImfileInsertObject(
     7290    psDB            *dbh,               ///< Database handle
     7291    detResidImfileRow *object             ///< detResidImfileRow object
     7292);
     7293
     7294/** Insert an array of detResidImfileRow object into a table
    72997295 *
    73007296 * This function constructs and inserts multiple rows based on it's parameters.
     
    73037299 */
    73047300
    7305 bool detResidImfileAnalysisInsertObjects(
    7306     psDB            *dbh,               ///< Database handle
    7307     psArray         *objects            ///< array of detResidImfileAnalysisRow objects
     7301bool detResidImfileInsertObjects(
     7302    psDB            *dbh,               ///< Database handle
     7303    psArray         *objects            ///< array of detResidImfileRow objects
    73087304);
    73097305
    73107306/** Removes the last row from the database and returns it
    73117307 *
    7312  * @return A new detResidImfileAnalysisRow on success or NULL on failure.
    7313  */
    7314 
    7315 detResidImfileAnalysisRow *detResidImfileAnalysisPopObject(
    7316     psDB            *dbh                ///< Database handle
    7317 );
    7318 
    7319 /** Insert data from a binary FITS table detResidImfileAnalysisRow into the database
     7308 * @return A new detResidImfileRow on success or NULL on failure.
     7309 */
     7310
     7311detResidImfileRow *detResidImfilePopObject(
     7312    psDB            *dbh                ///< Database handle
     7313);
     7314
     7315/** Insert data from a binary FITS table detResidImfileRow into the database
    73207316 *
    73217317 * This function expects a psFits object with a FITS table as the first
     
    73277323 */
    73287324
    7329 bool detResidImfileAnalysisInsertFits(
     7325bool detResidImfileInsertFits(
    73307326    psDB            *dbh,               ///< Database handle
    73317327    const psFits    *fits               ///< psFits object
     
    73407336 */
    73417337
    7342 bool detResidImfileAnalysisPopFits(
     7338bool detResidImfilePopFits(
    73437339    psDB            *dbh,               ///< Database handle
    73447340    psFits          *fits,              ///< psFits object
     
    73567352 */
    73577353
    7358 bool detResidImfileAnalysisSelectRowsFits(
     7354bool detResidImfileSelectRowsFits(
    73597355    psDB            *dbh,               ///< Database handle
    73607356    psFits          *fits,              ///< psFits object
     
    73637359);
    73647360
    7365 /** Convert a detResidImfileAnalysisRow into an equivalent psMetadata
     7361/** Convert a detResidImfileRow into an equivalent psMetadata
    73667362 *
    73677363 * @return A psMetadata pointer or NULL on error
    73687364 */
    73697365
    7370 psMetadata *detResidImfileAnalysisMetadataFromObject(
    7371     const detResidImfileAnalysisRow *object             ///< fooRow to convert into a psMetadata
     7366psMetadata *detResidImfileMetadataFromObject(
     7367    const detResidImfileRow *object             ///< fooRow to convert into a psMetadata
    73727368);
    73737369
    73747370/** Convert a psMetadata into an equivalent fooRow
    73757371 *
    7376  * @return A detResidImfileAnalysisRow pointer or NULL on error
    7377  */
    7378 
    7379 detResidImfileAnalysisRow *detResidImfileAnalysisObjectFromMetadata(
     7372 * @return A detResidImfileRow pointer or NULL on error
     7373 */
     7374
     7375detResidImfileRow *detResidImfileObjectFromMetadata(
    73807376    psMetadata      *md                 ///< psMetadata to convert into a fooRow
    73817377);
    7382 /** Selects up to limit rows from the database and returns as detResidImfileAnalysisRow objects in a psArray
     7378/** Selects up to limit rows from the database and returns as detResidImfileRow objects in a psArray
    73837379 *
    73847380 *  See psDBSelectRows() for documentation on the format of where.
     
    73877383 */
    73887384
    7389 psArray *detResidImfileAnalysisSelectRowObjects(
    7390     psDB            *dbh,               ///< Database handle
    7391     const psMetadata *where,            ///< Row match criteria
    7392     unsigned long long limit            ///< Maximum number of elements to return
    7393 );
    7394 /** Deletes a row from the database coresponding to an detResidImfileAnalysis
     7385psArray *detResidImfileSelectRowObjects(
     7386    psDB            *dbh,               ///< Database handle
     7387    const psMetadata *where,            ///< Row match criteria
     7388    unsigned long long limit            ///< Maximum number of elements to return
     7389);
     7390/** Deletes a row from the database coresponding to an detResidImfile
    73957391 *
    73967392 *  Note that a 'where' search psMetadata is constructed from each object and
     
    74007396 */
    74017397
    7402 bool detResidImfileAnalysisDeleteObject(
    7403     psDB            *dbh,               ///< Database handle
    7404     const detResidImfileAnalysisRow *object    ///< Object to delete
     7398bool detResidImfileDeleteObject(
     7399    psDB            *dbh,               ///< Database handle
     7400    const detResidImfileRow *object    ///< Object to delete
    74057401);
    74067402/** Deletes up to limit rows from the database and returns the number of rows actually deleted.
     
    74127408 */
    74137409
    7414 long long detResidImfileAnalysisDeleteRowObjects(
     7410long long detResidImfileDeleteRowObjects(
    74157411    psDB            *dbh,               ///< Database handle
    74167412    const psArray   *objects,           ///< Array of objects to delete
    74177413    unsigned long long limit            ///< Maximum number of elements to delete
    74187414);
    7419 /** Formats and prints an array of detResidImfileAnalysisRow objects
     7415/** Formats and prints an array of detResidImfileRow objects
    74207416 *
    74217417 * When mdcf is set the formated output is in psMetadataConfig
     
    74257421 */
    74267422
    7427 bool detResidImfileAnalysisPrintObjects(
     7423bool detResidImfilePrintObjects(
    74287424    FILE            *stream,            ///< a stream
    7429     psArray         *objects,           ///< An array of detResidImfileAnalysisRow objects
     7425    psArray         *objects,           ///< An array of detResidImfileRow objects
    74307426    bool            mdcf                ///< format as mdconfig or simple
    74317427);
    7432 /** detResidExpAnalysisRow data structure
    7433  *
    7434  * Structure for representing a single row of detResidExpAnalysis table data.
     7428/** detResidExpRow data structure
     7429 *
     7430 * Structure for representing a single row of detResidExp table data.
    74357431 */
    74367432
     
    74427438    bool            keep;
    74437439    bool            accept;
    7444 } detResidExpAnalysisRow;
    7445 
    7446 /** Creates a new detResidExpAnalysisRow object
    7447  *
    7448  *  @return A new detResidExpAnalysisRow object or NULL on failure.
    7449  */
    7450 
    7451 detResidExpAnalysisRow *detResidExpAnalysisRowAlloc(
     7440} detResidExpRow;
     7441
     7442/** Creates a new detResidExpRow object
     7443 *
     7444 *  @return A new detResidExpRow object or NULL on failure.
     7445 */
     7446
     7447detResidExpRow *detResidExpRowAlloc(
    74527448    psS32           det_id,
    74537449    psS32           iteration,
     
    74587454);
    74597455
    7460 /** Creates a new detResidExpAnalysis table
    7461  *
    7462  * @return true on success
    7463  */
    7464 
    7465 bool detResidExpAnalysisCreateTable(
    7466     psDB            *dbh                ///< Database handle
    7467 );
    7468 
    7469 /** Deletes a detResidExpAnalysis table
    7470  *
    7471  * @return true on success
    7472  */
    7473 
    7474 bool detResidExpAnalysisDropTable(
     7456/** Creates a new detResidExp table
     7457 *
     7458 * @return true on success
     7459 */
     7460
     7461bool detResidExpCreateTable(
     7462    psDB            *dbh                ///< Database handle
     7463);
     7464
     7465/** Deletes a detResidExp table
     7466 *
     7467 * @return true on success
     7468 */
     7469
     7470bool detResidExpDropTable(
    74757471    psDB            *dbh                ///< Database handle
    74767472);
     
    74837479 */
    74847480
    7485 bool detResidExpAnalysisInsert(
     7481bool detResidExpInsert(
    74867482    psDB            *dbh,               ///< Database handle
    74877483    psS32           det_id,
     
    74987494 */
    74997495
    7500 long long detResidExpAnalysisDelete(
     7496long long detResidExpDelete(
    75017497    psDB            *dbh,               ///< Database handle
    75027498    const psMetadata *where,            ///< Row match criteria
     
    75097505 */
    75107506
    7511 bool detResidExpAnalysisPop(
     7507bool detResidExpPop(
    75127508    psDB            *dbh,               ///< Database handle
    75137509    psS32           *det_id,
     
    75197515);
    75207516
    7521 /** Insert a single detResidExpAnalysisRow object into a table
     7517/** Insert a single detResidExpRow object into a table
    75227518 *
    75237519 * This function constructs and inserts a single row based on it's parameters.
     
    75267522 */
    75277523
    7528 bool detResidExpAnalysisInsertObject(
    7529     psDB            *dbh,               ///< Database handle
    7530     detResidExpAnalysisRow *object             ///< detResidExpAnalysisRow object
    7531 );
    7532 
    7533 /** Insert an array of detResidExpAnalysisRow object into a table
     7524bool detResidExpInsertObject(
     7525    psDB            *dbh,               ///< Database handle
     7526    detResidExpRow  *object             ///< detResidExpRow object
     7527);
     7528
     7529/** Insert an array of detResidExpRow object into a table
    75347530 *
    75357531 * This function constructs and inserts multiple rows based on it's parameters.
     
    75387534 */
    75397535
    7540 bool detResidExpAnalysisInsertObjects(
    7541     psDB            *dbh,               ///< Database handle
    7542     psArray         *objects            ///< array of detResidExpAnalysisRow objects
     7536bool detResidExpInsertObjects(
     7537    psDB            *dbh,               ///< Database handle
     7538    psArray         *objects            ///< array of detResidExpRow objects
    75437539);
    75447540
    75457541/** Removes the last row from the database and returns it
    75467542 *
    7547  * @return A new detResidExpAnalysisRow on success or NULL on failure.
    7548  */
    7549 
    7550 detResidExpAnalysisRow *detResidExpAnalysisPopObject(
    7551     psDB            *dbh                ///< Database handle
    7552 );
    7553 
    7554 /** Insert data from a binary FITS table detResidExpAnalysisRow into the database
     7543 * @return A new detResidExpRow on success or NULL on failure.
     7544 */
     7545
     7546detResidExpRow *detResidExpPopObject(
     7547    psDB            *dbh                ///< Database handle
     7548);
     7549
     7550/** Insert data from a binary FITS table detResidExpRow into the database
    75557551 *
    75567552 * This function expects a psFits object with a FITS table as the first
     
    75627558 */
    75637559
    7564 bool detResidExpAnalysisInsertFits(
     7560bool detResidExpInsertFits(
    75657561    psDB            *dbh,               ///< Database handle
    75667562    const psFits    *fits               ///< psFits object
     
    75757571 */
    75767572
    7577 bool detResidExpAnalysisPopFits(
     7573bool detResidExpPopFits(
    75787574    psDB            *dbh,               ///< Database handle
    75797575    psFits          *fits,              ///< psFits object
     
    75917587 */
    75927588
    7593 bool detResidExpAnalysisSelectRowsFits(
     7589bool detResidExpSelectRowsFits(
    75947590    psDB            *dbh,               ///< Database handle
    75957591    psFits          *fits,              ///< psFits object
     
    75987594);
    75997595
    7600 /** Convert a detResidExpAnalysisRow into an equivalent psMetadata
     7596/** Convert a detResidExpRow into an equivalent psMetadata
    76017597 *
    76027598 * @return A psMetadata pointer or NULL on error
    76037599 */
    76047600
    7605 psMetadata *detResidExpAnalysisMetadataFromObject(
    7606     const detResidExpAnalysisRow *object             ///< fooRow to convert into a psMetadata
     7601psMetadata *detResidExpMetadataFromObject(
     7602    const detResidExpRow *object             ///< fooRow to convert into a psMetadata
    76077603);
    76087604
    76097605/** Convert a psMetadata into an equivalent fooRow
    76107606 *
    7611  * @return A detResidExpAnalysisRow pointer or NULL on error
    7612  */
    7613 
    7614 detResidExpAnalysisRow *detResidExpAnalysisObjectFromMetadata(
     7607 * @return A detResidExpRow pointer or NULL on error
     7608 */
     7609
     7610detResidExpRow *detResidExpObjectFromMetadata(
    76157611    psMetadata      *md                 ///< psMetadata to convert into a fooRow
    76167612);
    7617 /** Selects up to limit rows from the database and returns as detResidExpAnalysisRow objects in a psArray
     7613/** Selects up to limit rows from the database and returns as detResidExpRow objects in a psArray
    76187614 *
    76197615 *  See psDBSelectRows() for documentation on the format of where.
     
    76227618 */
    76237619
    7624 psArray *detResidExpAnalysisSelectRowObjects(
    7625     psDB            *dbh,               ///< Database handle
    7626     const psMetadata *where,            ///< Row match criteria
    7627     unsigned long long limit            ///< Maximum number of elements to return
    7628 );
    7629 /** Deletes a row from the database coresponding to an detResidExpAnalysis
     7620psArray *detResidExpSelectRowObjects(
     7621    psDB            *dbh,               ///< Database handle
     7622    const psMetadata *where,            ///< Row match criteria
     7623    unsigned long long limit            ///< Maximum number of elements to return
     7624);
     7625/** Deletes a row from the database coresponding to an detResidExp
    76307626 *
    76317627 *  Note that a 'where' search psMetadata is constructed from each object and
     
    76357631 */
    76367632
    7637 bool detResidExpAnalysisDeleteObject(
    7638     psDB            *dbh,               ///< Database handle
    7639     const detResidExpAnalysisRow *object    ///< Object to delete
     7633bool detResidExpDeleteObject(
     7634    psDB            *dbh,               ///< Database handle
     7635    const detResidExpRow *object    ///< Object to delete
    76407636);
    76417637/** Deletes up to limit rows from the database and returns the number of rows actually deleted.
     
    76477643 */
    76487644
    7649 long long detResidExpAnalysisDeleteRowObjects(
     7645long long detResidExpDeleteRowObjects(
    76507646    psDB            *dbh,               ///< Database handle
    76517647    const psArray   *objects,           ///< Array of objects to delete
    76527648    unsigned long long limit            ///< Maximum number of elements to delete
    76537649);
    7654 /** Formats and prints an array of detResidExpAnalysisRow objects
     7650/** Formats and prints an array of detResidExpRow objects
    76557651 *
    76567652 * When mdcf is set the formated output is in psMetadataConfig
     
    76607656 */
    76617657
    7662 bool detResidExpAnalysisPrintObjects(
     7658bool detResidExpPrintObjects(
    76637659    FILE            *stream,            ///< a stream
    7664     psArray         *objects,           ///< An array of detResidExpAnalysisRow objects
     7660    psArray         *objects,           ///< An array of detResidExpRow objects
    76657661    bool            mdcf                ///< format as mdconfig or simple
    76667662);
     
    76727668#endif
    76737669
    7674 #endif // DETRESIDEXPANALYSIS_DB_H
     7670#endif // DETRESIDEXP_DB_H
  • trunk/ippdb/tests/alloc.c

    r8368 r8380  
    10731073        detNormalizedImfileRow *object;
    10741074
    1075         object = detNormalizedImfileRowAlloc(-32, -32, "a string", "a string", "a string"    );
     1075        object = detNormalizedImfileRowAlloc(-32, -32, "a string", "a string"    );
    10761076
    10771077        if (!object) {
     
    10951095            exit(EXIT_FAILURE);
    10961096        }
     1097
     1098        psFree(object);
     1099    }
     1100
     1101    {
     1102        detMasterFrameRow *object;
     1103
     1104        object = detMasterFrameRowAlloc(-32, -32, "a string"    );
     1105
     1106        if (!object) {
     1107            exit(EXIT_FAILURE);
     1108        }
     1109
     1110        if (!object->det_id == -32) {
     1111            psFree(object);
     1112            exit(EXIT_FAILURE);
     1113        }
     1114        if (!object->iteration == -32) {
     1115            psFree(object);
     1116            exit(EXIT_FAILURE);
     1117        }
     1118        if (strncmp(object->comment, "a string", MAX_STRING_LENGTH)) {
     1119            psFree(object);
     1120            exit(EXIT_FAILURE);
     1121        }
     1122
     1123        psFree(object);
     1124    }
     1125
     1126    {
     1127        detMasterImfileRow *object;
     1128
     1129        object = detMasterImfileRowAlloc(-32, "a string", "a string", "a string"    );
     1130
     1131        if (!object) {
     1132            exit(EXIT_FAILURE);
     1133        }
     1134
     1135        if (!object->det_id == -32) {
     1136            psFree(object);
     1137            exit(EXIT_FAILURE);
     1138        }
     1139        if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {
     1140            psFree(object);
     1141            exit(EXIT_FAILURE);
     1142        }
     1143        if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {
     1144            psFree(object);
     1145            exit(EXIT_FAILURE);
     1146        }
    10971147        if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
    10981148            psFree(object);
     
    11041154
    11051155    {
    1106         detMasterFrameRow *object;
    1107 
    1108         object = detMasterFrameRowAlloc(-32, -32, "a string"    );
     1156        detResidImfileRow *object;
     1157
     1158        object = detResidImfileRowAlloc(-32, -32, "a string", "a string", "a string", "a string", "a string", "a string"    );
    11091159
    11101160        if (!object) {
     
    11201170            exit(EXIT_FAILURE);
    11211171        }
    1122         if (strncmp(object->comment, "a string", MAX_STRING_LENGTH)) {
    1123             psFree(object);
    1124             exit(EXIT_FAILURE);
    1125         }
    1126 
    1127         psFree(object);
    1128     }
    1129 
    1130     {
    1131         detMasterImfileRow *object;
    1132 
    1133         object = detMasterImfileRowAlloc(-32, "a string", "a string", "a string"    );
    1134 
    1135         if (!object) {
    1136             exit(EXIT_FAILURE);
    1137         }
    1138 
    1139         if (!object->det_id == -32) {
     1172        if (strncmp(object->exp_id, "a string", MAX_STRING_LENGTH)) {
    11401173            psFree(object);
    11411174            exit(EXIT_FAILURE);
     
    11451178            exit(EXIT_FAILURE);
    11461179        }
     1180        if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
     1181            psFree(object);
     1182            exit(EXIT_FAILURE);
     1183        }
    11471184        if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {
    11481185            psFree(object);
    11491186            exit(EXIT_FAILURE);
    11501187        }
    1151         if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
    1152             psFree(object);
    1153             exit(EXIT_FAILURE);
    1154         }
    1155 
    1156         psFree(object);
    1157     }
    1158 
    1159     {
    1160         detResidImfileAnalysisRow *object;
    1161 
    1162         object = detResidImfileAnalysisRowAlloc(-32, -32, "a string", "a string", "a string", "a string", "a string", "a string"    );
    1163 
    1164         if (!object) {
    1165             exit(EXIT_FAILURE);
    1166         }
    1167 
    1168         if (!object->det_id == -32) {
    1169             psFree(object);
    1170             exit(EXIT_FAILURE);
    1171         }
    1172         if (!object->iteration == -32) {
    1173             psFree(object);
    1174             exit(EXIT_FAILURE);
    1175         }
    1176         if (strncmp(object->exp_id, "a string", MAX_STRING_LENGTH)) {
    1177             psFree(object);
    1178             exit(EXIT_FAILURE);
    1179         }
    1180         if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {
    1181             psFree(object);
    1182             exit(EXIT_FAILURE);
    1183         }
    1184         if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
    1185             psFree(object);
    1186             exit(EXIT_FAILURE);
    1187         }
    1188         if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {
    1189             psFree(object);
    1190             exit(EXIT_FAILURE);
    1191         }
    11921188        if (strncmp(object->b1_uri, "a string", MAX_STRING_LENGTH)) {
    11931189            psFree(object);
     
    12031199
    12041200    {
    1205         detResidExpAnalysisRow *object;
    1206 
    1207         object = detResidExpAnalysisRowAlloc(-32, -32, "a string", "a string", true, true    );
     1201        detResidExpRow *object;
     1202
     1203        object = detResidExpRowAlloc(-32, -32, "a string", "a string", true, true    );
    12081204
    12091205        if (!object) {
  • trunk/ippdb/tests/createtable.c

    r8368 r8380  
    463463        }
    464464
    465         if(!detResidImfileAnalysisCreateTable(dbh)) {
    466             exit(EXIT_FAILURE);
    467         }
    468 
    469         psDBCleanup(dbh);
    470     }
    471 
    472     {
    473         psDB            *dbh;
    474 
    475         dbh = psDBInit("localhost", "test", NULL, "test");
    476         if (!dbh) {
    477             exit(EXIT_FAILURE);
    478         }
    479 
    480         if(!detResidExpAnalysisCreateTable(dbh)) {
     465        if(!detResidImfileCreateTable(dbh)) {
     466            exit(EXIT_FAILURE);
     467        }
     468
     469        psDBCleanup(dbh);
     470    }
     471
     472    {
     473        psDB            *dbh;
     474
     475        dbh = psDBInit("localhost", "test", NULL, "test");
     476        if (!dbh) {
     477            exit(EXIT_FAILURE);
     478        }
     479
     480        if(!detResidExpCreateTable(dbh)) {
    481481            exit(EXIT_FAILURE);
    482482        }
  • trunk/ippdb/tests/dbcleanup.c

    r8368 r8380  
    4141    p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detMasterFrame");
    4242    p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detMasterImfile");
    43     p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detResidImfileAnalysis");
    44     p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detResidExpAnalysis");
     43    p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detResidImfile");
     44    p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detResidExp");
    4545
    4646    psDBCleanup(dbh);
  • trunk/ippdb/tests/dbsetup.c

    r8368 r8380  
    103103    detMasterImfileCreateTable(dbh);
    104104
    105     p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detResidImfileAnalysis");
    106     detResidImfileAnalysisCreateTable(dbh);
     105    p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detResidImfile");
     106    detResidImfileCreateTable(dbh);
    107107
    108     p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detResidExpAnalysis");
    109     detResidExpAnalysisCreateTable(dbh);
     108    p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detResidExp");
     109    detResidExpCreateTable(dbh);
    110110
    111111    psDBCleanup(dbh);
  • trunk/ippdb/tests/droptable.c

    r8368 r8380  
    463463        }
    464464
    465         if (!detResidImfileAnalysisDropTable(dbh)) {
    466             exit(EXIT_FAILURE);
    467         }
    468 
    469         psDBCleanup(dbh);
    470     }
    471 
    472     {
    473         psDB            *dbh;
    474 
    475         dbh = psDBInit("localhost", "test", NULL, "test");
    476         if (!dbh) {
    477             exit(EXIT_FAILURE);
    478         }
    479 
    480         if (!detResidExpAnalysisDropTable(dbh)) {
     465        if (!detResidImfileDropTable(dbh)) {
     466            exit(EXIT_FAILURE);
     467        }
     468
     469        psDBCleanup(dbh);
     470    }
     471
     472    {
     473        psDB            *dbh;
     474
     475        dbh = psDBInit("localhost", "test", NULL, "test");
     476        if (!dbh) {
     477            exit(EXIT_FAILURE);
     478        }
     479
     480        if (!detResidExpDropTable(dbh)) {
    481481            exit(EXIT_FAILURE);
    482482        }
  • trunk/ippdb/tests/insert.c

    r8368 r8380  
    418418        }
    419419
    420         if (!detNormalizedImfileInsert(dbh, -32, -32, "a string", "a string", "a string")) {
     420        if (!detNormalizedImfileInsert(dbh, -32, -32, "a string", "a string")) {
    421421            exit(EXIT_FAILURE);
    422422        }
     
    463463        }
    464464
    465         if (!detResidImfileAnalysisInsert(dbh, -32, -32, "a string", "a string", "a string", "a string", "a string", "a string")) {
    466             exit(EXIT_FAILURE);
    467         }
    468 
    469         psDBCleanup(dbh);
    470     }
    471 
    472     {
    473         psDB            *dbh;
    474 
    475         dbh = psDBInit("localhost", "test", NULL, "test");
    476         if (!dbh) {
    477             exit(EXIT_FAILURE);
    478         }
    479 
    480         if (!detResidExpAnalysisInsert(dbh, -32, -32, "a string", "a string", true, true)) {
     465        if (!detResidImfileInsert(dbh, -32, -32, "a string", "a string", "a string", "a string", "a string", "a string")) {
     466            exit(EXIT_FAILURE);
     467        }
     468
     469        psDBCleanup(dbh);
     470    }
     471
     472    {
     473        psDB            *dbh;
     474
     475        dbh = psDBInit("localhost", "test", NULL, "test");
     476        if (!dbh) {
     477            exit(EXIT_FAILURE);
     478        }
     479
     480        if (!detResidExpInsert(dbh, -32, -32, "a string", "a string", true, true)) {
    481481            exit(EXIT_FAILURE);
    482482        }
  • trunk/ippdb/tests/insertfits.c

    r8368 r8380  
    804804        }
    805805
    806         if (!detResidImfileAnalysisInsertFits(dbh, fits)) {
    807             exit(EXIT_FAILURE);
    808         }
    809 
    810         if (!psFitsClose(fits)) {
    811             exit(EXIT_FAILURE);
    812         }
    813 
    814         psDBCleanup(dbh);
    815     }
    816 
    817     {
    818         psDB            *dbh;
    819         psFits          *fits;
    820 
    821         dbh = psDBInit("localhost", "test", NULL, "test");
    822         if (!dbh) {
    823             exit(EXIT_FAILURE);
    824         }
    825 
    826         // open a temp
    827         fits = psFitsOpen(TMP_FILENAME, "r");
    828         if (!fits) {
    829             exit(EXIT_FAILURE);
    830         }
    831 
    832         if (!detResidExpAnalysisInsertFits(dbh, fits)) {
     806        if (!detResidImfileInsertFits(dbh, fits)) {
     807            exit(EXIT_FAILURE);
     808        }
     809
     810        if (!psFitsClose(fits)) {
     811            exit(EXIT_FAILURE);
     812        }
     813
     814        psDBCleanup(dbh);
     815    }
     816
     817    {
     818        psDB            *dbh;
     819        psFits          *fits;
     820
     821        dbh = psDBInit("localhost", "test", NULL, "test");
     822        if (!dbh) {
     823            exit(EXIT_FAILURE);
     824        }
     825
     826        // open a temp
     827        fits = psFitsOpen(TMP_FILENAME, "r");
     828        if (!fits) {
     829            exit(EXIT_FAILURE);
     830        }
     831
     832        if (!detResidExpInsertFits(dbh, fits)) {
    833833            exit(EXIT_FAILURE);
    834834        }
  • trunk/ippdb/tests/insertobject.c

    r8368 r8380  
    608608        }
    609609
    610         object = detNormalizedImfileRowAlloc(-32, -32, "a string", "a string", "a string");
     610        object = detNormalizedImfileRowAlloc(-32, -32, "a string", "a string");
    611611        if (!object) {
    612612            exit(EXIT_FAILURE);
     
    667667    {
    668668        psDB            *dbh;
    669         detResidImfileAnalysisRow *object;
    670 
    671         dbh = psDBInit("localhost", "test", NULL, "test");
    672         if (!dbh) {
    673             exit(EXIT_FAILURE);
    674         }
    675 
    676         object = detResidImfileAnalysisRowAlloc(-32, -32, "a string", "a string", "a string", "a string", "a string", "a string");
    677         if (!object) {
    678             exit(EXIT_FAILURE);
    679         }
    680 
    681         if (!detResidImfileAnalysisInsertObject(dbh, object)) {
    682             exit(EXIT_FAILURE);
    683         }
    684 
    685         psFree(object);
    686         psDBCleanup(dbh);
    687     }
    688 
    689     {
    690         psDB            *dbh;
    691         detResidExpAnalysisRow *object;
    692 
    693         dbh = psDBInit("localhost", "test", NULL, "test");
    694         if (!dbh) {
    695             exit(EXIT_FAILURE);
    696         }
    697 
    698         object = detResidExpAnalysisRowAlloc(-32, -32, "a string", "a string", true, true);
    699         if (!object) {
    700             exit(EXIT_FAILURE);
    701         }
    702 
    703         if (!detResidExpAnalysisInsertObject(dbh, object)) {
     669        detResidImfileRow *object;
     670
     671        dbh = psDBInit("localhost", "test", NULL, "test");
     672        if (!dbh) {
     673            exit(EXIT_FAILURE);
     674        }
     675
     676        object = detResidImfileRowAlloc(-32, -32, "a string", "a string", "a string", "a string", "a string", "a string");
     677        if (!object) {
     678            exit(EXIT_FAILURE);
     679        }
     680
     681        if (!detResidImfileInsertObject(dbh, object)) {
     682            exit(EXIT_FAILURE);
     683        }
     684
     685        psFree(object);
     686        psDBCleanup(dbh);
     687    }
     688
     689    {
     690        psDB            *dbh;
     691        detResidExpRow *object;
     692
     693        dbh = psDBInit("localhost", "test", NULL, "test");
     694        if (!dbh) {
     695            exit(EXIT_FAILURE);
     696        }
     697
     698        object = detResidExpRowAlloc(-32, -32, "a string", "a string", true, true);
     699        if (!object) {
     700            exit(EXIT_FAILURE);
     701        }
     702
     703        if (!detResidExpInsertObject(dbh, object)) {
    704704            exit(EXIT_FAILURE);
    705705        }
  • trunk/ippdb/tests/metadatafromobject.c

    r8368 r8380  
    12921292        bool            status;
    12931293
    1294         object = detNormalizedImfileRowAlloc(-32, -32, "a string", "a string", "a string");
     1294        object = detNormalizedImfileRowAlloc(-32, -32, "a string", "a string");
    12951295        if (!object) {
    12961296            exit(EXIT_FAILURE);
     
    13201320            exit(EXIT_FAILURE);
    13211321        }
     1322
     1323        psFree(md);
     1324    }
     1325
     1326    {
     1327        psMetadata      *md;
     1328        detMasterFrameRow *object;
     1329        bool            status;
     1330
     1331        object = detMasterFrameRowAlloc(-32, -32, "a string");
     1332        if (!object) {
     1333            exit(EXIT_FAILURE);
     1334        }
     1335
     1336        md = detMasterFrameMetadataFromObject(object);
     1337        if (!md) {
     1338            exit(EXIT_FAILURE);
     1339        }
     1340
     1341        psFree(object);
     1342
     1343        if (!psMetadataLookupS32(&status, md, "det_id") == -32) {
     1344            psFree(md);
     1345            exit(EXIT_FAILURE);
     1346        }
     1347        if (!psMetadataLookupS32(&status, md, "iteration") == -32) {
     1348            psFree(md);
     1349            exit(EXIT_FAILURE);
     1350        }
     1351        if (strncmp(psMetadataLookupPtr(&status, md, "comment"), "a string", MAX_STRING_LENGTH)) {
     1352            psFree(md);
     1353            exit(EXIT_FAILURE);
     1354        }
     1355
     1356        psFree(md);
     1357    }
     1358
     1359    {
     1360        psMetadata      *md;
     1361        detMasterImfileRow *object;
     1362        bool            status;
     1363
     1364        object = detMasterImfileRowAlloc(-32, "a string", "a string", "a string");
     1365        if (!object) {
     1366            exit(EXIT_FAILURE);
     1367        }
     1368
     1369        md = detMasterImfileMetadataFromObject(object);
     1370        if (!md) {
     1371            exit(EXIT_FAILURE);
     1372        }
     1373
     1374        psFree(object);
     1375
     1376        if (!psMetadataLookupS32(&status, md, "det_id") == -32) {
     1377            psFree(md);
     1378            exit(EXIT_FAILURE);
     1379        }
     1380        if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) {
     1381            psFree(md);
     1382            exit(EXIT_FAILURE);
     1383        }
     1384        if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) {
     1385            psFree(md);
     1386            exit(EXIT_FAILURE);
     1387        }
    13221388        if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) {
    13231389            psFree(md);
     
    13301396    {
    13311397        psMetadata      *md;
    1332         detMasterFrameRow *object;
    1333         bool            status;
    1334 
    1335         object = detMasterFrameRowAlloc(-32, -32, "a string");
    1336         if (!object) {
    1337             exit(EXIT_FAILURE);
    1338         }
    1339 
    1340         md = detMasterFrameMetadataFromObject(object);
     1398        detResidImfileRow *object;
     1399        bool            status;
     1400
     1401        object = detResidImfileRowAlloc(-32, -32, "a string", "a string", "a string", "a string", "a string", "a string");
     1402        if (!object) {
     1403            exit(EXIT_FAILURE);
     1404        }
     1405
     1406        md = detResidImfileMetadataFromObject(object);
    13411407        if (!md) {
    13421408            exit(EXIT_FAILURE);
     
    13531419            exit(EXIT_FAILURE);
    13541420        }
    1355         if (strncmp(psMetadataLookupPtr(&status, md, "comment"), "a string", MAX_STRING_LENGTH)) {
    1356             psFree(md);
    1357             exit(EXIT_FAILURE);
    1358         }
    1359 
    1360         psFree(md);
    1361     }
    1362 
    1363     {
    1364         psMetadata      *md;
    1365         detMasterImfileRow *object;
    1366         bool            status;
    1367 
    1368         object = detMasterImfileRowAlloc(-32, "a string", "a string", "a string");
    1369         if (!object) {
    1370             exit(EXIT_FAILURE);
    1371         }
    1372 
    1373         md = detMasterImfileMetadataFromObject(object);
    1374         if (!md) {
    1375             exit(EXIT_FAILURE);
    1376         }
    1377 
    1378         psFree(object);
    1379 
    1380         if (!psMetadataLookupS32(&status, md, "det_id") == -32) {
     1421        if (strncmp(psMetadataLookupPtr(&status, md, "exp_id"), "a string", MAX_STRING_LENGTH)) {
    13811422            psFree(md);
    13821423            exit(EXIT_FAILURE);
     
    13861427            exit(EXIT_FAILURE);
    13871428        }
     1429        if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) {
     1430            psFree(md);
     1431            exit(EXIT_FAILURE);
     1432        }
    13881433        if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) {
    13891434            psFree(md);
    13901435            exit(EXIT_FAILURE);
    13911436        }
    1392         if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) {
    1393             psFree(md);
    1394             exit(EXIT_FAILURE);
    1395         }
    1396 
    1397         psFree(md);
    1398     }
    1399 
    1400     {
    1401         psMetadata      *md;
    1402         detResidImfileAnalysisRow *object;
    1403         bool            status;
    1404 
    1405         object = detResidImfileAnalysisRowAlloc(-32, -32, "a string", "a string", "a string", "a string", "a string", "a string");
    1406         if (!object) {
    1407             exit(EXIT_FAILURE);
    1408         }
    1409 
    1410         md = detResidImfileAnalysisMetadataFromObject(object);
    1411         if (!md) {
    1412             exit(EXIT_FAILURE);
    1413         }
    1414 
    1415         psFree(object);
    1416 
    1417         if (!psMetadataLookupS32(&status, md, "det_id") == -32) {
    1418             psFree(md);
    1419             exit(EXIT_FAILURE);
    1420         }
    1421         if (!psMetadataLookupS32(&status, md, "iteration") == -32) {
    1422             psFree(md);
    1423             exit(EXIT_FAILURE);
    1424         }
    1425         if (strncmp(psMetadataLookupPtr(&status, md, "exp_id"), "a string", MAX_STRING_LENGTH)) {
    1426             psFree(md);
    1427             exit(EXIT_FAILURE);
    1428         }
    1429         if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) {
    1430             psFree(md);
    1431             exit(EXIT_FAILURE);
    1432         }
    1433         if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) {
    1434             psFree(md);
    1435             exit(EXIT_FAILURE);
    1436         }
    1437         if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) {
    1438             psFree(md);
    1439             exit(EXIT_FAILURE);
    1440         }
    14411437        if (strncmp(psMetadataLookupPtr(&status, md, "b1_uri"), "a string", MAX_STRING_LENGTH)) {
    14421438            psFree(md);
     
    14531449    {
    14541450        psMetadata      *md;
    1455         detResidExpAnalysisRow *object;
    1456         bool            status;
    1457 
    1458         object = detResidExpAnalysisRowAlloc(-32, -32, "a string", "a string", true, true);
    1459         if (!object) {
    1460             exit(EXIT_FAILURE);
    1461         }
    1462 
    1463         md = detResidExpAnalysisMetadataFromObject(object);
     1451        detResidExpRow *object;
     1452        bool            status;
     1453
     1454        object = detResidExpRowAlloc(-32, -32, "a string", "a string", true, true);
     1455        if (!object) {
     1456            exit(EXIT_FAILURE);
     1457        }
     1458
     1459        md = detResidExpMetadataFromObject(object);
    14641460        if (!md) {
    14651461            exit(EXIT_FAILURE);
  • trunk/ippdb/tests/objectfrommetadata.c

    r8368 r8380  
    19391939            exit(EXIT_FAILURE);
    19401940        }
     1941
     1942        object = detNormalizedImfileObjectFromMetadata(md);
     1943        if (!object) {
     1944            psFree(md);
     1945            exit(EXIT_FAILURE);
     1946        }
     1947
     1948        psFree(md);
     1949
     1950        if (!object->det_id == -32) {
     1951            psFree(object);
     1952            exit(EXIT_FAILURE);
     1953        }
     1954        if (!object->iteration == -32) {
     1955            psFree(object);
     1956            exit(EXIT_FAILURE);
     1957        }
     1958        if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {
     1959            psFree(object);
     1960            exit(EXIT_FAILURE);
     1961        }
     1962        if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {
     1963            psFree(object);
     1964            exit(EXIT_FAILURE);
     1965        }
     1966
     1967        psFree(object);
     1968    }
     1969
     1970    {
     1971        psMetadata      *md;
     1972        detMasterFrameRow *object;
     1973
     1974        md = psMetadataAlloc();
     1975        if (!psMetadataAddS32(md, PS_LIST_TAIL, "det_id", 0, NULL, -32)) {
     1976            psFree(md);
     1977            exit(EXIT_FAILURE);
     1978        }
     1979        if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {
     1980            psFree(md);
     1981            exit(EXIT_FAILURE);
     1982        }
     1983        if (!psMetadataAddStr(md, PS_LIST_TAIL, "comment", 0, NULL, "a string")) {
     1984            psFree(md);
     1985            exit(EXIT_FAILURE);
     1986        }
     1987
     1988        object = detMasterFrameObjectFromMetadata(md);
     1989        if (!object) {
     1990            psFree(md);
     1991            exit(EXIT_FAILURE);
     1992        }
     1993
     1994        psFree(md);
     1995
     1996        if (!object->det_id == -32) {
     1997            psFree(object);
     1998            exit(EXIT_FAILURE);
     1999        }
     2000        if (!object->iteration == -32) {
     2001            psFree(object);
     2002            exit(EXIT_FAILURE);
     2003        }
     2004        if (strncmp(object->comment, "a string", MAX_STRING_LENGTH)) {
     2005            psFree(object);
     2006            exit(EXIT_FAILURE);
     2007        }
     2008
     2009        psFree(object);
     2010    }
     2011
     2012    {
     2013        psMetadata      *md;
     2014        detMasterImfileRow *object;
     2015
     2016        md = psMetadataAlloc();
     2017        if (!psMetadataAddS32(md, PS_LIST_TAIL, "det_id", 0, NULL, -32)) {
     2018            psFree(md);
     2019            exit(EXIT_FAILURE);
     2020        }
     2021        if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) {
     2022            psFree(md);
     2023            exit(EXIT_FAILURE);
     2024        }
     2025        if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) {
     2026            psFree(md);
     2027            exit(EXIT_FAILURE);
     2028        }
    19412029        if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) {
    19422030            psFree(md);
     
    19442032        }
    19452033
    1946         object = detNormalizedImfileObjectFromMetadata(md);
     2034        object = detMasterImfileObjectFromMetadata(md);
    19472035        if (!object) {
    19482036            psFree(md);
     
    19562044            exit(EXIT_FAILURE);
    19572045        }
     2046        if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {
     2047            psFree(object);
     2048            exit(EXIT_FAILURE);
     2049        }
     2050        if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {
     2051            psFree(object);
     2052            exit(EXIT_FAILURE);
     2053        }
     2054        if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
     2055            psFree(object);
     2056            exit(EXIT_FAILURE);
     2057        }
     2058
     2059        psFree(object);
     2060    }
     2061
     2062    {
     2063        psMetadata      *md;
     2064        detResidImfileRow *object;
     2065
     2066        md = psMetadataAlloc();
     2067        if (!psMetadataAddS32(md, PS_LIST_TAIL, "det_id", 0, NULL, -32)) {
     2068            psFree(md);
     2069            exit(EXIT_FAILURE);
     2070        }
     2071        if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {
     2072            psFree(md);
     2073            exit(EXIT_FAILURE);
     2074        }
     2075        if (!psMetadataAddStr(md, PS_LIST_TAIL, "exp_id", 0, NULL, "a string")) {
     2076            psFree(md);
     2077            exit(EXIT_FAILURE);
     2078        }
     2079        if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) {
     2080            psFree(md);
     2081            exit(EXIT_FAILURE);
     2082        }
     2083        if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) {
     2084            psFree(md);
     2085            exit(EXIT_FAILURE);
     2086        }
     2087        if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) {
     2088            psFree(md);
     2089            exit(EXIT_FAILURE);
     2090        }
     2091        if (!psMetadataAddStr(md, PS_LIST_TAIL, "b1_uri", 0, NULL, "a string")) {
     2092            psFree(md);
     2093            exit(EXIT_FAILURE);
     2094        }
     2095        if (!psMetadataAddStr(md, PS_LIST_TAIL, "b2_uri", 0, NULL, "a string")) {
     2096            psFree(md);
     2097            exit(EXIT_FAILURE);
     2098        }
     2099
     2100        object = detResidImfileObjectFromMetadata(md);
     2101        if (!object) {
     2102            psFree(md);
     2103            exit(EXIT_FAILURE);
     2104        }
     2105
     2106        psFree(md);
     2107
     2108        if (!object->det_id == -32) {
     2109            psFree(object);
     2110            exit(EXIT_FAILURE);
     2111        }
    19582112        if (!object->iteration == -32) {
    19592113            psFree(object);
    19602114            exit(EXIT_FAILURE);
    19612115        }
     2116        if (strncmp(object->exp_id, "a string", MAX_STRING_LENGTH)) {
     2117            psFree(object);
     2118            exit(EXIT_FAILURE);
     2119        }
    19622120        if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {
    19632121            psFree(object);
    19642122            exit(EXIT_FAILURE);
    19652123        }
     2124        if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
     2125            psFree(object);
     2126            exit(EXIT_FAILURE);
     2127        }
    19662128        if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {
    19672129            psFree(object);
    19682130            exit(EXIT_FAILURE);
    19692131        }
    1970         if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
    1971             psFree(object);
    1972             exit(EXIT_FAILURE);
    1973         }
    1974 
    1975         psFree(object);
    1976     }
    1977 
    1978     {
    1979         psMetadata      *md;
    1980         detMasterFrameRow *object;
     2132        if (strncmp(object->b1_uri, "a string", MAX_STRING_LENGTH)) {
     2133            psFree(object);
     2134            exit(EXIT_FAILURE);
     2135        }
     2136        if (strncmp(object->b2_uri, "a string", MAX_STRING_LENGTH)) {
     2137            psFree(object);
     2138            exit(EXIT_FAILURE);
     2139        }
     2140
     2141        psFree(object);
     2142    }
     2143
     2144    {
     2145        psMetadata      *md;
     2146        detResidExpRow  *object;
    19812147
    19822148        md = psMetadataAlloc();
     
    19892155            exit(EXIT_FAILURE);
    19902156        }
    1991         if (!psMetadataAddStr(md, PS_LIST_TAIL, "comment", 0, NULL, "a string")) {
    1992             psFree(md);
    1993             exit(EXIT_FAILURE);
    1994         }
    1995 
    1996         object = detMasterFrameObjectFromMetadata(md);
    1997         if (!object) {
    1998             psFree(md);
    1999             exit(EXIT_FAILURE);
    2000         }
    2001 
    2002         psFree(md);
    2003 
    2004         if (!object->det_id == -32) {
    2005             psFree(object);
    2006             exit(EXIT_FAILURE);
    2007         }
    2008         if (!object->iteration == -32) {
    2009             psFree(object);
    2010             exit(EXIT_FAILURE);
    2011         }
    2012         if (strncmp(object->comment, "a string", MAX_STRING_LENGTH)) {
    2013             psFree(object);
    2014             exit(EXIT_FAILURE);
    2015         }
    2016 
    2017         psFree(object);
    2018     }
    2019 
    2020     {
    2021         psMetadata      *md;
    2022         detMasterImfileRow *object;
    2023 
    2024         md = psMetadataAlloc();
    2025         if (!psMetadataAddS32(md, PS_LIST_TAIL, "det_id", 0, NULL, -32)) {
    2026             psFree(md);
    2027             exit(EXIT_FAILURE);
    2028         }
    2029         if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) {
    2030             psFree(md);
    2031             exit(EXIT_FAILURE);
    2032         }
    2033         if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) {
     2157        if (!psMetadataAddStr(md, PS_LIST_TAIL, "exp_id", 0, NULL, "a string")) {
    20342158            psFree(md);
    20352159            exit(EXIT_FAILURE);
     
    20392163            exit(EXIT_FAILURE);
    20402164        }
    2041 
    2042         object = detMasterImfileObjectFromMetadata(md);
    2043         if (!object) {
    2044             psFree(md);
    2045             exit(EXIT_FAILURE);
    2046         }
    2047 
    2048         psFree(md);
    2049 
    2050         if (!object->det_id == -32) {
    2051             psFree(object);
    2052             exit(EXIT_FAILURE);
    2053         }
    2054         if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {
    2055             psFree(object);
    2056             exit(EXIT_FAILURE);
    2057         }
    2058         if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {
    2059             psFree(object);
    2060             exit(EXIT_FAILURE);
    2061         }
    2062         if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
    2063             psFree(object);
    2064             exit(EXIT_FAILURE);
    2065         }
    2066 
    2067         psFree(object);
    2068     }
    2069 
    2070     {
    2071         psMetadata      *md;
    2072         detResidImfileAnalysisRow *object;
    2073 
    2074         md = psMetadataAlloc();
    2075         if (!psMetadataAddS32(md, PS_LIST_TAIL, "det_id", 0, NULL, -32)) {
    2076             psFree(md);
    2077             exit(EXIT_FAILURE);
    2078         }
    2079         if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {
    2080             psFree(md);
    2081             exit(EXIT_FAILURE);
    2082         }
    2083         if (!psMetadataAddStr(md, PS_LIST_TAIL, "exp_id", 0, NULL, "a string")) {
    2084             psFree(md);
    2085             exit(EXIT_FAILURE);
    2086         }
    2087         if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) {
    2088             psFree(md);
    2089             exit(EXIT_FAILURE);
    2090         }
    2091         if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) {
    2092             psFree(md);
    2093             exit(EXIT_FAILURE);
    2094         }
    2095         if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) {
    2096             psFree(md);
    2097             exit(EXIT_FAILURE);
    2098         }
    2099         if (!psMetadataAddStr(md, PS_LIST_TAIL, "b1_uri", 0, NULL, "a string")) {
    2100             psFree(md);
    2101             exit(EXIT_FAILURE);
    2102         }
    2103         if (!psMetadataAddStr(md, PS_LIST_TAIL, "b2_uri", 0, NULL, "a string")) {
    2104             psFree(md);
    2105             exit(EXIT_FAILURE);
    2106         }
    2107 
    2108         object = detResidImfileAnalysisObjectFromMetadata(md);
    2109         if (!object) {
    2110             psFree(md);
    2111             exit(EXIT_FAILURE);
    2112         }
    2113 
    2114         psFree(md);
    2115 
    2116         if (!object->det_id == -32) {
    2117             psFree(object);
    2118             exit(EXIT_FAILURE);
    2119         }
    2120         if (!object->iteration == -32) {
    2121             psFree(object);
    2122             exit(EXIT_FAILURE);
    2123         }
    2124         if (strncmp(object->exp_id, "a string", MAX_STRING_LENGTH)) {
    2125             psFree(object);
    2126             exit(EXIT_FAILURE);
    2127         }
    2128         if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {
    2129             psFree(object);
    2130             exit(EXIT_FAILURE);
    2131         }
    2132         if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
    2133             psFree(object);
    2134             exit(EXIT_FAILURE);
    2135         }
    2136         if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {
    2137             psFree(object);
    2138             exit(EXIT_FAILURE);
    2139         }
    2140         if (strncmp(object->b1_uri, "a string", MAX_STRING_LENGTH)) {
    2141             psFree(object);
    2142             exit(EXIT_FAILURE);
    2143         }
    2144         if (strncmp(object->b2_uri, "a string", MAX_STRING_LENGTH)) {
    2145             psFree(object);
    2146             exit(EXIT_FAILURE);
    2147         }
    2148 
    2149         psFree(object);
    2150     }
    2151 
    2152     {
    2153         psMetadata      *md;
    2154         detResidExpAnalysisRow *object;
    2155 
    2156         md = psMetadataAlloc();
    2157         if (!psMetadataAddS32(md, PS_LIST_TAIL, "det_id", 0, NULL, -32)) {
    2158             psFree(md);
    2159             exit(EXIT_FAILURE);
    2160         }
    2161         if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {
    2162             psFree(md);
    2163             exit(EXIT_FAILURE);
    2164         }
    2165         if (!psMetadataAddStr(md, PS_LIST_TAIL, "exp_id", 0, NULL, "a string")) {
    2166             psFree(md);
    2167             exit(EXIT_FAILURE);
    2168         }
    2169         if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) {
    2170             psFree(md);
    2171             exit(EXIT_FAILURE);
    2172         }
    21732165        if (!psMetadataAdd(md, PS_LIST_TAIL, "keep", PS_DATA_BOOL, NULL, true)) {
    21742166            psFree(md);
     
    21802172        }
    21812173
    2182         object = detResidExpAnalysisObjectFromMetadata(md);
     2174        object = detResidExpObjectFromMetadata(md);
    21832175        if (!object) {
    21842176            psFree(md);
  • trunk/ippdb/tests/pop.c

    r8368 r8380  
    594594        char            class_id[256];
    595595        char            uri[256];
    596         char            recipe[256];
    597 
    598         dbh = psDBInit("localhost", "test", NULL, "test");
    599         if (!dbh) {
    600             exit(EXIT_FAILURE);
    601         }
    602 
    603         if (!detNormalizedImfilePop(dbh, &det_id, &iteration, (char **)&class_id, (char **)&uri, (char **)&recipe)) {
     596
     597        dbh = psDBInit("localhost", "test", NULL, "test");
     598        if (!dbh) {
     599            exit(EXIT_FAILURE);
     600        }
     601
     602        if (!detNormalizedImfilePop(dbh, &det_id, &iteration, (char **)&class_id, (char **)&uri)) {
    604603            exit(EXIT_FAILURE);
    605604        }
     
    661660        }
    662661
    663         if (!detResidImfileAnalysisPop(dbh, &det_id, &iteration, (char **)&exp_id, (char **)&class_id, (char **)&recipe, (char **)&uri, (char **)&b1_uri, (char **)&b2_uri)) {
     662        if (!detResidImfilePop(dbh, &det_id, &iteration, (char **)&exp_id, (char **)&class_id, (char **)&recipe, (char **)&uri, (char **)&b1_uri, (char **)&b2_uri)) {
    664663            exit(EXIT_FAILURE);
    665664        }
     
    682681        }
    683682
    684         if (!detResidExpAnalysisPop(dbh, &det_id, &iteration, (char **)&exp_id, (char **)&recipe, &keep, &accept)) {
     683        if (!detResidExpPop(dbh, &det_id, &iteration, (char **)&exp_id, (char **)&recipe, &keep, &accept)) {
    685684            exit(EXIT_FAILURE);
    686685        }
  • trunk/ippdb/tests/popfits.c

    r8368 r8380  
    804804        }
    805805
    806         if (!detResidImfileAnalysisPopFits(dbh, fits, 1)) {
    807             exit(EXIT_FAILURE);
    808         }
    809 
    810         if (!psFitsClose(fits)) {
    811             exit(EXIT_FAILURE);
    812         }
    813 
    814         psDBCleanup(dbh);
    815     }
    816 
    817     {
    818         psDB            *dbh;
    819         psFits          *fits;
    820 
    821         dbh = psDBInit("localhost", "test", NULL, "test");
    822         if (!dbh) {
    823             exit(EXIT_FAILURE);
    824         }
    825 
    826         // allocate a temp
    827         fits = psFitsOpen(TMP_FILENAME, "w");
    828         if (!fits) {
    829             exit(EXIT_FAILURE);
    830         }
    831 
    832         if (!detResidExpAnalysisPopFits(dbh, fits, 1)) {
     806        if (!detResidImfilePopFits(dbh, fits, 1)) {
     807            exit(EXIT_FAILURE);
     808        }
     809
     810        if (!psFitsClose(fits)) {
     811            exit(EXIT_FAILURE);
     812        }
     813
     814        psDBCleanup(dbh);
     815    }
     816
     817    {
     818        psDB            *dbh;
     819        psFits          *fits;
     820
     821        dbh = psDBInit("localhost", "test", NULL, "test");
     822        if (!dbh) {
     823            exit(EXIT_FAILURE);
     824        }
     825
     826        // allocate a temp
     827        fits = psFitsOpen(TMP_FILENAME, "w");
     828        if (!fits) {
     829            exit(EXIT_FAILURE);
     830        }
     831
     832        if (!detResidExpPopFits(dbh, fits, 1)) {
    833833            exit(EXIT_FAILURE);
    834834        }
  • trunk/ippdb/tests/popobject.c

    r8368 r8380  
    547547    {
    548548        psDB            *dbh;
    549         detResidImfileAnalysisRow *object;
    550 
    551         dbh = psDBInit("localhost", "test", NULL, "test");
    552         if (!dbh) {
    553             exit(EXIT_FAILURE);
    554         }
    555 
    556         object = detResidImfileAnalysisPopObject(dbh);
    557         if (!object) {
    558             exit(EXIT_FAILURE);
    559         }
    560 
    561         psFree(object);
    562         psDBCleanup(dbh);
    563     }
    564 
    565     {
    566         psDB            *dbh;
    567         detResidExpAnalysisRow *object;
    568 
    569         dbh = psDBInit("localhost", "test", NULL, "test");
    570         if (!dbh) {
    571             exit(EXIT_FAILURE);
    572         }
    573 
    574         object = detResidExpAnalysisPopObject(dbh);
     549        detResidImfileRow *object;
     550
     551        dbh = psDBInit("localhost", "test", NULL, "test");
     552        if (!dbh) {
     553            exit(EXIT_FAILURE);
     554        }
     555
     556        object = detResidImfilePopObject(dbh);
     557        if (!object) {
     558            exit(EXIT_FAILURE);
     559        }
     560
     561        psFree(object);
     562        psDBCleanup(dbh);
     563    }
     564
     565    {
     566        psDB            *dbh;
     567        detResidExpRow *object;
     568
     569        dbh = psDBInit("localhost", "test", NULL, "test");
     570        if (!dbh) {
     571            exit(EXIT_FAILURE);
     572        }
     573
     574        object = detResidExpPopObject(dbh);
    575575        if (!object) {
    576576            exit(EXIT_FAILURE);
  • trunk/ippdb/tests/selectrowsfits.c

    r8368 r8380  
    681681        }
    682682
    683         if (!detResidImfileAnalysisSelectRowsFits(dbh, fits, NULL, 1)) {
    684             exit(EXIT_FAILURE);
    685         }
    686 
    687         psFree(fits);
    688         psDBCleanup(dbh);
    689     }
    690 
    691     {
    692         psDB            *dbh;
    693         psFits          *fits;
    694 
    695         dbh = psDBInit("localhost", "test", NULL, "test");
    696         if (!dbh) {
    697             exit(EXIT_FAILURE);
    698         }
    699 
    700         fits = psFitsOpen(TMP_FILENAME, "w");
    701         if (!fits) {
    702             exit(EXIT_FAILURE);
    703         }
    704 
    705         if (!detResidExpAnalysisSelectRowsFits(dbh, fits, NULL, 1)) {
     683        if (!detResidImfileSelectRowsFits(dbh, fits, NULL, 1)) {
     684            exit(EXIT_FAILURE);
     685        }
     686
     687        psFree(fits);
     688        psDBCleanup(dbh);
     689    }
     690
     691    {
     692        psDB            *dbh;
     693        psFits          *fits;
     694
     695        dbh = psDBInit("localhost", "test", NULL, "test");
     696        if (!dbh) {
     697            exit(EXIT_FAILURE);
     698        }
     699
     700        fits = psFitsOpen(TMP_FILENAME, "w");
     701        if (!fits) {
     702            exit(EXIT_FAILURE);
     703        }
     704
     705        if (!detResidExpSelectRowsFits(dbh, fits, NULL, 1)) {
    706706            exit(EXIT_FAILURE);
    707707        }
Note: See TracChangeset for help on using the changeset viewer.