Changeset 15421
- Timestamp:
- Oct 30, 2007, 4:45:31 PM (19 years ago)
- Location:
- trunk/ippdb
- Files:
-
- 15 edited
-
Makefile.am (modified) (3 diffs)
-
configure.ac (modified) (1 diff)
-
src/ippdb.c (modified) (136 diffs)
-
src/ippdb.h (modified) (37 diffs)
-
tests/alloc.c (modified) (10 diffs)
-
tests/createtable.c (modified) (3 diffs)
-
tests/dbcleanup.c (modified) (3 diffs)
-
tests/dbsetup.c (modified) (3 diffs)
-
tests/droptable.c (modified) (3 diffs)
-
tests/insert.c (modified) (10 diffs)
-
tests/insertfits.c (modified) (3 diffs)
-
tests/insertobject.c (modified) (14 diffs)
-
tests/metadatafromobject.c (modified) (19 diffs)
-
tests/objectfrommetadata.c (modified) (26 diffs)
-
tests/selectrowsfits.c (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/ippdb/Makefile.am
r15420 r15421 10 10 man_MANS = \ 11 11 $(top_builddir)/docs/man/man3/ippdb.3 \ 12 $(top_builddir)/docs/man/man3/pzDataStoreRow.3 \ 12 13 $(top_builddir)/docs/man/man3/summitExpRow.3 \ 13 14 $(top_builddir)/docs/man/man3/summitImfileRow.3 \ … … 22 23 $(top_builddir)/docs/man/man3/guidePendingExpRow.3 \ 23 24 $(top_builddir)/docs/man/man3/chipRunRow.3 \ 24 $(top_builddir)/docs/man/man3/chipInputImfileRow.3 \25 25 $(top_builddir)/docs/man/man3/chipProcessedImfileRow.3 \ 26 26 $(top_builddir)/docs/man/man3/chipMaskRow.3 \ … … 48 48 $(top_builddir)/docs/man/man3/detResidImfileRow.3 \ 49 49 $(top_builddir)/docs/man/man3/detResidExpRow.3 \ 50 $(top_builddir)/docs/man/man3/detRunSummaryRow.3 50 $(top_builddir)/docs/man/man3/detRunSummaryRow.3 \ 51 $(top_builddir)/docs/man/man3/detRegisteredImfileRow.3 \ 52 $(top_builddir)/docs/man/man3/detCorrectedExpRow.3 \ 53 $(top_builddir)/docs/man/man3/detCorrectedImfileRow.3 \ 54 $(top_builddir)/docs/man/man3/magicRunRow.3 \ 55 $(top_builddir)/docs/man/man3/magicInputSkyfileRow.3 \ 56 $(top_builddir)/docs/man/man3/magicTreeRow.3 \ 57 $(top_builddir)/docs/man/man3/magicNodeResultRow.3 \ 58 $(top_builddir)/docs/man/man3/magicMaskRow.3 \ 59 $(top_builddir)/docs/man/man3/magicSkyfileMaskRow.3 51 60 52 61 53 docs/man/man3/ippdb.3 docs/man/man3/ summitExpRow.3 docs/man/man3/summitImfileRow.3 docs/man/man3/pzPendingExpRow.3 docs/man/man3/pzPendingImfileRow.3 docs/man/man3/pzDoneExpRow.3 docs/man/man3/pzDoneImfileRow.3 docs/man/man3/newExpRow.3 docs/man/man3/newImfileRow.3 docs/man/man3/rawExpRow.3 docs/man/man3/rawImfileRow.3 docs/man/man3/guidePendingExpRow.3 docs/man/man3/chipRunRow.3 docs/man/man3/chipInputImfileRow.3 docs/man/man3/chipProcessedImfileRow.3 docs/man/man3/chipMaskRow.3 docs/man/man3/camRunRow.3 docs/man/man3/camProcessedExpRow.3 docs/man/man3/camMaskRow.3 docs/man/man3/warpRunRow.3 docs/man/man3/warpInputExpRow.3 docs/man/man3/warpSkyCellMapRow.3 docs/man/man3/warpSkyfileRow.3 docs/man/man3/diffRunRow.3 docs/man/man3/diffInputSkyfileRow.3 docs/man/man3/diffSkyfileRow.3 docs/man/man3/stackRunRow.3 docs/man/man3/stackInputSkyfileRow.3 docs/man/man3/stackSumSkyfileRow.3 docs/man/man3/detRunRow.3 docs/man/man3/detInputExpRow.3 docs/man/man3/detProcessedImfileRow.3 docs/man/man3/detProcessedExpRow.3 docs/man/man3/detStackedImfileRow.3 docs/man/man3/detNormalizedStatImfileRow.3 docs/man/man3/detNormalizedImfileRow.3 docs/man/man3/detNormalizedExpRow.3 docs/man/man3/detResidImfileRow.3 docs/man/man3/detResidExpRow.3 docs/man/man3/detRunSummaryRow.3:62 docs/man/man3/ippdb.3 docs/man/man3/pzDataStoreRow.3 docs/man/man3/summitExpRow.3 docs/man/man3/summitImfileRow.3 docs/man/man3/pzPendingExpRow.3 docs/man/man3/pzPendingImfileRow.3 docs/man/man3/pzDoneExpRow.3 docs/man/man3/pzDoneImfileRow.3 docs/man/man3/newExpRow.3 docs/man/man3/newImfileRow.3 docs/man/man3/rawExpRow.3 docs/man/man3/rawImfileRow.3 docs/man/man3/guidePendingExpRow.3 docs/man/man3/chipRunRow.3 docs/man/man3/chipProcessedImfileRow.3 docs/man/man3/chipMaskRow.3 docs/man/man3/camRunRow.3 docs/man/man3/camProcessedExpRow.3 docs/man/man3/camMaskRow.3 docs/man/man3/warpRunRow.3 docs/man/man3/warpInputExpRow.3 docs/man/man3/warpSkyCellMapRow.3 docs/man/man3/warpSkyfileRow.3 docs/man/man3/diffRunRow.3 docs/man/man3/diffInputSkyfileRow.3 docs/man/man3/diffSkyfileRow.3 docs/man/man3/stackRunRow.3 docs/man/man3/stackInputSkyfileRow.3 docs/man/man3/stackSumSkyfileRow.3 docs/man/man3/detRunRow.3 docs/man/man3/detInputExpRow.3 docs/man/man3/detProcessedImfileRow.3 docs/man/man3/detProcessedExpRow.3 docs/man/man3/detStackedImfileRow.3 docs/man/man3/detNormalizedStatImfileRow.3 docs/man/man3/detNormalizedImfileRow.3 docs/man/man3/detNormalizedExpRow.3 docs/man/man3/detResidImfileRow.3 docs/man/man3/detResidExpRow.3 docs/man/man3/detRunSummaryRow.3 docs/man/man3/detRegisteredImfileRow.3 docs/man/man3/detCorrectedExpRow.3 docs/man/man3/detCorrectedImfileRow.3 docs/man/man3/magicRunRow.3 docs/man/man3/magicInputSkyfileRow.3 docs/man/man3/magicTreeRow.3 docs/man/man3/magicNodeResultRow.3 docs/man/man3/magicMaskRow.3 docs/man/man3/magicSkyfileMaskRow.3: 54 63 $(DOXYGEN) 55 64 -
trunk/ippdb/configure.ac
r15420 r15421 7 7 AC_PREREQ(2.61) 8 8 9 AC_INIT([ippdb], [1.1.2 3], [pan-starrs.ifa.hawaii.edu])9 AC_INIT([ippdb], [1.1.28], [pan-starrs.ifa.hawaii.edu]) 10 10 AC_CONFIG_SRCDIR([ippdb.pc.in]) 11 11 -
trunk/ippdb/src/ippdb.c
r15420 r15421 31 31 #include "ippdb.h" 32 32 33 #define PZDATASTORE_TABLE_NAME "pzDataStore" 33 34 #define SUMMITEXP_TABLE_NAME "summitExp" 34 35 #define SUMMITIMFILE_TABLE_NAME "summitImfile" … … 43 44 #define GUIDEPENDINGEXP_TABLE_NAME "guidePendingExp" 44 45 #define CHIPRUN_TABLE_NAME "chipRun" 45 #define CHIPINPUTIMFILE_TABLE_NAME "chipInputImfile"46 46 #define CHIPPROCESSEDIMFILE_TABLE_NAME "chipProcessedImfile" 47 47 #define CHIPMASK_TABLE_NAME "chipMask" … … 70 70 #define DETRESIDEXP_TABLE_NAME "detResidExp" 71 71 #define DETRUNSUMMARY_TABLE_NAME "detRunSummary" 72 #define DETREGISTEREDIMFILE_TABLE_NAME "detRegisteredImfile" 73 #define DETCORRECTEDEXP_TABLE_NAME "detCorrectedExp" 74 #define DETCORRECTEDIMFILE_TABLE_NAME "detCorrectedImfile" 75 #define MAGICRUN_TABLE_NAME "magicRun" 76 #define MAGICINPUTSKYFILE_TABLE_NAME "magicInputSkyfile" 77 #define MAGICTREE_TABLE_NAME "magicTree" 78 #define MAGICNODERESULT_TABLE_NAME "magicNodeResult" 79 #define MAGICMASK_TABLE_NAME "magicMask" 80 #define MAGICSKYFILEMASK_TABLE_NAME "magicSkyfileMask" 72 81 #define MAX_STRING_LENGTH 1024 73 82 … … 246 255 } 247 256 257 static void pzDataStoreRowFree(pzDataStoreRow *object); 258 259 pzDataStoreRow *pzDataStoreRowAlloc(const char *camera, const char *telescope, const char *uri) 260 { 261 pzDataStoreRow *_object; 262 263 _object = psAlloc(sizeof(pzDataStoreRow)); 264 psMemSetDeallocator(_object, (psFreeFunc)pzDataStoreRowFree); 265 266 _object->camera = psStringCopy(camera); 267 _object->telescope = psStringCopy(telescope); 268 _object->uri = psStringCopy(uri); 269 270 return _object; 271 } 272 273 static void pzDataStoreRowFree(pzDataStoreRow *object) 274 { 275 psFree(object->camera); 276 psFree(object->telescope); 277 psFree(object->uri); 278 } 279 280 bool pzDataStoreCreateTable(psDB *dbh) 281 { 282 psMetadata *md = psMetadataAlloc(); 283 if (!psMetadataAdd(md, PS_LIST_TAIL, "camera", PS_DATA_STRING, "Primary Key", "64")) { 284 psError(PS_ERR_UNKNOWN, false, "failed to add item camera"); 285 psFree(md); 286 return false; 287 } 288 if (!psMetadataAdd(md, PS_LIST_TAIL, "telescope", PS_DATA_STRING, "Primary Key", "64")) { 289 psError(PS_ERR_UNKNOWN, false, "failed to add item telescope"); 290 psFree(md); 291 return false; 292 } 293 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, "255")) { 294 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 295 psFree(md); 296 return false; 297 } 298 299 bool status = psDBCreateTable(dbh, PZDATASTORE_TABLE_NAME, md); 300 301 psFree(md); 302 303 return status; 304 } 305 306 bool pzDataStoreDropTable(psDB *dbh) 307 { 308 return psDBDropTable(dbh, PZDATASTORE_TABLE_NAME); 309 } 310 311 bool pzDataStoreInsert(psDB * dbh, const char *camera, const char *telescope, const char *uri) 312 { 313 psMetadata *md = psMetadataAlloc(); 314 if (!psMetadataAdd(md, PS_LIST_TAIL, "camera", PS_DATA_STRING, NULL, camera)) { 315 psError(PS_ERR_UNKNOWN, false, "failed to add item camera"); 316 psFree(md); 317 return false; 318 } 319 if (!psMetadataAdd(md, PS_LIST_TAIL, "telescope", PS_DATA_STRING, NULL, telescope)) { 320 psError(PS_ERR_UNKNOWN, false, "failed to add item telescope"); 321 psFree(md); 322 return false; 323 } 324 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, uri)) { 325 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 326 psFree(md); 327 return false; 328 } 329 330 bool status = psDBInsertOneRow(dbh, PZDATASTORE_TABLE_NAME, md); 331 psFree(md); 332 333 return status; 334 } 335 336 long long pzDataStoreDelete(psDB *dbh, const psMetadata *where, unsigned long long limit) 337 { 338 long long deleted = 0; 339 340 long long count = psDBDeleteRows(dbh, PZDATASTORE_TABLE_NAME, where, limit); 341 if (count < 0) { 342 psError(PS_ERR_UNKNOWN, true, "failed to delete row from pzDataStore"); 343 return count; 344 345 deleted += count; 346 } 347 348 return deleted; 349 } 350 bool pzDataStoreInsertObject(psDB *dbh, pzDataStoreRow *object) 351 { 352 return pzDataStoreInsert(dbh, object->camera, object->telescope, object->uri); 353 } 354 355 bool pzDataStoreInsertObjects(psDB *dbh, psArray *objects) 356 { 357 for (long i = 0; i < psArrayLength(objects); i++) { 358 if (!pzDataStoreInsertObject(dbh, objects->data[i])) { 359 return false; 360 } 361 } 362 363 return true; 364 } 365 366 bool pzDataStoreInsertFits(psDB *dbh, const psFits *fits) 367 { 368 psArray *rowSet; 369 370 // move to (the first?) extension named PZDATASTORE_TABLE_NAME 371 if (!psFitsMoveExtName(fits, PZDATASTORE_TABLE_NAME)) { 372 psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", PZDATASTORE_TABLE_NAME); 373 return false; 374 } 375 376 // check HDU type 377 if (psFitsGetExtType(fits) != PS_FITS_TYPE_BINARY_TABLE) { 378 psError(PS_ERR_UNKNOWN, true, "FITS HDU type is not PS_FITS_TYPE_BINARY_TABLE"); 379 return false; 380 } 381 382 // read fits table 383 rowSet = psFitsReadTable(fits); 384 if (!rowSet) { 385 psError(PS_ERR_UNKNOWN, true, "FITS read error or FITS table is empty"); 386 psFree(rowSet); 387 return false; 388 } 389 390 if (!psDBInsertRows(dbh, PZDATASTORE_TABLE_NAME, rowSet)) { 391 psError(PS_ERR_UNKNOWN, false, "databse insert failed"); 392 psFree(rowSet); 393 return false; 394 } 395 396 psFree(rowSet); 397 398 return true; 399 } 400 401 bool pzDataStoreSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit) 402 { 403 psArray *rowSet; 404 405 rowSet = psDBSelectRows(dbh, PZDATASTORE_TABLE_NAME, where, limit); 406 if (!rowSet) { 407 return false; 408 } 409 410 // output to fits 411 if (!psFitsWriteTable(fits, NULL, rowSet, PZDATASTORE_TABLE_NAME)) { 412 psError(PS_ERR_UNKNOWN, false, "FITS table write failed"); 413 psFree(rowSet); 414 return false; 415 } 416 417 psFree(rowSet); 418 419 return true; 420 } 421 422 psMetadata *pzDataStoreMetadataFromObject(const pzDataStoreRow *object) 423 { 424 psMetadata *md = psMetadataAlloc(); 425 if (!psMetadataAdd(md, PS_LIST_TAIL, "camera", PS_DATA_STRING, NULL, object->camera)) { 426 psError(PS_ERR_UNKNOWN, false, "failed to add item camera"); 427 psFree(md); 428 return false; 429 } 430 if (!psMetadataAdd(md, PS_LIST_TAIL, "telescope", PS_DATA_STRING, NULL, object->telescope)) { 431 psError(PS_ERR_UNKNOWN, false, "failed to add item telescope"); 432 psFree(md); 433 return false; 434 } 435 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, object->uri)) { 436 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 437 psFree(md); 438 return false; 439 } 440 441 442 return md; 443 } 444 445 pzDataStoreRow *pzDataStoreObjectFromMetadata(psMetadata *md) 446 { 447 448 bool status = false; 449 char* camera = psMetadataLookupPtr(&status, md, "camera"); 450 if (!status) { 451 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item camera"); 452 return false; 453 } 454 char* telescope = psMetadataLookupPtr(&status, md, "telescope"); 455 if (!status) { 456 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item telescope"); 457 return false; 458 } 459 char* uri = psMetadataLookupPtr(&status, md, "uri"); 460 if (!status) { 461 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item uri"); 462 return false; 463 } 464 465 return pzDataStoreRowAlloc(camera, telescope, uri); 466 } 467 psArray *pzDataStoreSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) 468 { 469 psArray *rowSet; 470 psArray *returnSet; 471 psU64 i; 472 473 rowSet = psDBSelectRows(dbh, PZDATASTORE_TABLE_NAME, where, limit); 474 if (!rowSet) { 475 return NULL; 476 } 477 478 // convert psMetadata rows to row objects 479 480 returnSet = psArrayAllocEmpty(rowSet->n); 481 482 for (i = 0; i < rowSet->n; i++) { 483 pzDataStoreRow *object = pzDataStoreObjectFromMetadata(rowSet->data[i]); 484 psArrayAdd(returnSet, 0, object); 485 psFree(object); 486 } 487 488 psFree(rowSet); 489 490 return returnSet; 491 } 492 bool pzDataStoreDeleteObject(psDB *dbh, const pzDataStoreRow *object) 493 { 494 psMetadata *where = pzDataStoreMetadataFromObject(object); 495 long long count = psDBDeleteRows(dbh, PZDATASTORE_TABLE_NAME, where, 0); 496 psFree(where); 497 if (count < 0) { 498 psError(PS_ERR_UNKNOWN, true, "failed to delete row from pzDataStore"); 499 return false; 500 } 501 if (count > 1) { 502 // XXX should this be a psAbort() instead? It is possible that 503 // having an object match multiple rows was by design. 504 psError(PS_ERR_UNKNOWN, true, "pzDataStoreRow object matched more then one row. Check your database schema"); 505 return false; 506 } 507 508 return true; 509 } 510 long long pzDataStoreDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit) 511 { 512 long long deleted = 0; 513 514 for (long long i = 0; i < objects->n; i++) { 515 pzDataStoreRow *object = objects->data[i]; 516 psMetadata *where = pzDataStoreMetadataFromObject(object); 517 long long count = psDBDeleteRows(dbh, PZDATASTORE_TABLE_NAME, where, limit); 518 psFree(where); 519 if (count < 0) { 520 psError(PS_ERR_UNKNOWN, true, "failed to delete row from pzDataStore"); 521 return count; 522 } 523 524 deleted += count; 525 } 526 527 return deleted; 528 } 529 bool pzDataStorePrintObjects(FILE *stream, psArray *objects, bool mdcf) 530 { 531 PS_ASSERT_PTR_NON_NULL(objects, false); 532 533 psMetadata *output = psMetadataAlloc(); 534 for (long i = 0; i < psArrayLength(objects); i++) { 535 psMetadata *md = pzDataStoreMetadataFromObject(objects->data[i]); 536 if (!psMetadataAddMetadata( 537 output, 538 PS_LIST_TAIL, 539 PZDATASTORE_TABLE_NAME, 540 PS_META_DUPLICATE_OK, 541 NULL, 542 md 543 )) { 544 psError(PS_ERR_UNKNOWN, false, "failed to add metadata"); 545 psFree(md); 546 psFree(output); 547 return false; 548 } 549 psFree(md); 550 } 551 552 if (!ippdbPrintMetadataRaw(stream, output, mdcf)) { 553 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 554 psFree(output); 555 } 556 psFree(output); 557 558 return true; 559 } 560 bool pzDataStorePrintObject(FILE *stream, pzDataStoreRow *object, bool mdcf) 561 { 562 PS_ASSERT_PTR_NON_NULL(object, false); 563 564 psMetadata *md = pzDataStoreMetadataFromObject(object); 565 566 if (!ippdbPrintMetadataRaw(stream, md, mdcf)) { 567 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 568 psFree(md); 569 } 570 571 psFree(md); 572 573 return true; 574 } 248 575 static void summitExpRowFree(summitExpRow *object); 249 576 … … 1420 1747 static void pzPendingImfileRowFree(pzPendingImfileRow *object); 1421 1748 1422 pzPendingImfileRow *pzPendingImfileRowAlloc(const char *exp_name, const char *camera, const char *telescope, const char *class, const char *class_id , psS64 exp_id)1749 pzPendingImfileRow *pzPendingImfileRowAlloc(const char *exp_name, const char *camera, const char *telescope, const char *class, const char *class_id) 1423 1750 { 1424 1751 pzPendingImfileRow *_object; … … 1432 1759 _object->class = psStringCopy(class); 1433 1760 _object->class_id = psStringCopy(class_id); 1434 _object->exp_id = exp_id;1435 1761 1436 1762 return _object; … … 1474 1800 return false; 1475 1801 } 1476 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Unique Key", 64)) {1477 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");1478 psFree(md);1479 return false;1480 }1481 1802 1482 1803 bool status = psDBCreateTable(dbh, PZPENDINGIMFILE_TABLE_NAME, md); … … 1492 1813 } 1493 1814 1494 bool pzPendingImfileInsert(psDB * dbh, const char *exp_name, const char *camera, const char *telescope, const char *class, const char *class_id , psS64 exp_id)1815 bool pzPendingImfileInsert(psDB * dbh, const char *exp_name, const char *camera, const char *telescope, const char *class, const char *class_id) 1495 1816 { 1496 1817 psMetadata *md = psMetadataAlloc(); … … 1517 1838 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, NULL, class_id)) { 1518 1839 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id"); 1519 psFree(md);1520 return false;1521 }1522 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, NULL, exp_id)) {1523 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");1524 1840 psFree(md); 1525 1841 return false; … … 1548 1864 bool pzPendingImfileInsertObject(psDB *dbh, pzPendingImfileRow *object) 1549 1865 { 1550 return pzPendingImfileInsert(dbh, object->exp_name, object->camera, object->telescope, object->class, object->class_id , object->exp_id);1866 return pzPendingImfileInsert(dbh, object->exp_name, object->camera, object->telescope, object->class, object->class_id); 1551 1867 } 1552 1868 … … 1646 1962 return false; 1647 1963 } 1648 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, NULL, object->exp_id)) {1649 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");1650 psFree(md);1651 return false;1652 }1653 1964 1654 1965 … … 1685 1996 return false; 1686 1997 } 1687 psS64 exp_id = psMetadataLookupS64(&status, md, "exp_id"); 1688 if (!status) { 1689 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item exp_id"); 1690 return false; 1691 } 1692 1693 return pzPendingImfileRowAlloc(exp_name, camera, telescope, class, class_id, exp_id); 1998 1999 return pzPendingImfileRowAlloc(exp_name, camera, telescope, class, class_id); 1694 2000 } 1695 2001 psArray *pzPendingImfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) … … 2121 2427 static void pzDoneImfileRowFree(pzDoneImfileRow *object); 2122 2428 2123 pzDoneImfileRow *pzDoneImfileRowAlloc(const char *exp_name, const char *camera, const char *telescope, const char *class, const char *class_id, psS64 exp_id,const char *uri)2429 pzDoneImfileRow *pzDoneImfileRowAlloc(const char *exp_name, const char *camera, const char *telescope, const char *class, const char *class_id, const char *uri) 2124 2430 { 2125 2431 pzDoneImfileRow *_object; … … 2133 2439 _object->class = psStringCopy(class); 2134 2440 _object->class_id = psStringCopy(class_id); 2135 _object->exp_id = exp_id;2136 2441 _object->uri = psStringCopy(uri); 2137 2442 … … 2177 2482 return false; 2178 2483 } 2179 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Unique Key", 64)) {2180 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");2181 psFree(md);2182 return false;2183 }2184 2484 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, "255")) { 2185 2485 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); … … 2200 2500 } 2201 2501 2202 bool pzDoneImfileInsert(psDB * dbh, const char *exp_name, const char *camera, const char *telescope, const char *class, const char *class_id, psS64 exp_id,const char *uri)2502 bool pzDoneImfileInsert(psDB * dbh, const char *exp_name, const char *camera, const char *telescope, const char *class, const char *class_id, const char *uri) 2203 2503 { 2204 2504 psMetadata *md = psMetadataAlloc(); … … 2225 2525 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, NULL, class_id)) { 2226 2526 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id"); 2227 psFree(md);2228 return false;2229 }2230 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, NULL, exp_id)) {2231 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");2232 2527 psFree(md); 2233 2528 return false; … … 2261 2556 bool pzDoneImfileInsertObject(psDB *dbh, pzDoneImfileRow *object) 2262 2557 { 2263 return pzDoneImfileInsert(dbh, object->exp_name, object->camera, object->telescope, object->class, object->class_id, object-> exp_id, object->uri);2558 return pzDoneImfileInsert(dbh, object->exp_name, object->camera, object->telescope, object->class, object->class_id, object->uri); 2264 2559 } 2265 2560 … … 2359 2654 return false; 2360 2655 } 2361 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, NULL, object->exp_id)) {2362 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");2363 psFree(md);2364 return false;2365 }2366 2656 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, object->uri)) { 2367 2657 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); … … 2403 2693 return false; 2404 2694 } 2405 psS64 exp_id = psMetadataLookupS64(&status, md, "exp_id");2406 if (!status) {2407 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item exp_id");2408 return false;2409 }2410 2695 char* uri = psMetadataLookupPtr(&status, md, "uri"); 2411 2696 if (!status) { … … 2414 2699 } 2415 2700 2416 return pzDoneImfileRowAlloc(exp_name, camera, telescope, class, class_id, exp_id,uri);2701 return pzDoneImfileRowAlloc(exp_name, camera, telescope, class, class_id, uri); 2417 2702 } 2418 2703 psArray *pzDoneImfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) … … 2526 2811 static void newExpRowFree(newExpRow *object); 2527 2812 2528 newExpRow *newExpRowAlloc(psS64 exp_id, const char *tmp_exp_name, const char *tmp_camera, const char *tmp_telescope, const char *state, psS32 imfiles, const char *workdir, const char *workdir_state)2813 newExpRow *newExpRowAlloc(psS64 exp_id, const char *tmp_exp_name, const char *tmp_camera, const char *tmp_telescope, const char *state, const char *workdir, const char *workdir_state, const char *reduction) 2529 2814 { 2530 2815 newExpRow *_object; … … 2538 2823 _object->tmp_telescope = psStringCopy(tmp_telescope); 2539 2824 _object->state = psStringCopy(state); 2540 _object->imfiles = imfiles;2541 2825 _object->workdir = psStringCopy(workdir); 2542 2826 _object->workdir_state = psStringCopy(workdir_state); 2827 _object->reduction = psStringCopy(reduction); 2543 2828 2544 2829 return _object; … … 2553 2838 psFree(object->workdir); 2554 2839 psFree(object->workdir_state); 2840 psFree(object->reduction); 2555 2841 } 2556 2842 … … 2583 2869 return false; 2584 2870 } 2585 if (!psMetadataAdd(md, PS_LIST_TAIL, "imfiles", PS_DATA_S32, NULL, 0)) {2586 psError(PS_ERR_UNKNOWN, false, "failed to add item imfiles");2587 psFree(md);2588 return false;2589 }2590 2871 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir", PS_DATA_STRING, "destination for output files", "255")) { 2591 2872 psError(PS_ERR_UNKNOWN, false, "failed to add item workdir"); … … 2598 2879 return false; 2599 2880 } 2881 if (!psMetadataAdd(md, PS_LIST_TAIL, "reduction", PS_DATA_STRING, "Reduction class", "64")) { 2882 psError(PS_ERR_UNKNOWN, false, "failed to add item reduction"); 2883 psFree(md); 2884 return false; 2885 } 2600 2886 2601 2887 bool status = psDBCreateTable(dbh, NEWEXP_TABLE_NAME, md); … … 2611 2897 } 2612 2898 2613 bool newExpInsert(psDB * dbh, psS64 exp_id, const char *tmp_exp_name, const char *tmp_camera, const char *tmp_telescope, const char *state, psS32 imfiles, const char *workdir, const char *workdir_state)2899 bool newExpInsert(psDB * dbh, psS64 exp_id, const char *tmp_exp_name, const char *tmp_camera, const char *tmp_telescope, const char *state, const char *workdir, const char *workdir_state, const char *reduction) 2614 2900 { 2615 2901 psMetadata *md = psMetadataAlloc(); … … 2639 2925 return false; 2640 2926 } 2641 if (!psMetadataAdd(md, PS_LIST_TAIL, "imfiles", PS_DATA_S32, NULL, imfiles)) {2642 psError(PS_ERR_UNKNOWN, false, "failed to add item imfiles");2643 psFree(md);2644 return false;2645 }2646 2927 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir", PS_DATA_STRING, NULL, workdir)) { 2647 2928 psError(PS_ERR_UNKNOWN, false, "failed to add item workdir"); … … 2651 2932 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir_state", PS_DATA_STRING, NULL, workdir_state)) { 2652 2933 psError(PS_ERR_UNKNOWN, false, "failed to add item workdir_state"); 2934 psFree(md); 2935 return false; 2936 } 2937 if (!psMetadataAdd(md, PS_LIST_TAIL, "reduction", PS_DATA_STRING, NULL, reduction)) { 2938 psError(PS_ERR_UNKNOWN, false, "failed to add item reduction"); 2653 2939 psFree(md); 2654 2940 return false; … … 2677 2963 bool newExpInsertObject(psDB *dbh, newExpRow *object) 2678 2964 { 2679 return newExpInsert(dbh, object->exp_id, object->tmp_exp_name, object->tmp_camera, object->tmp_telescope, object->state, object-> imfiles, object->workdir, object->workdir_state);2965 return newExpInsert(dbh, object->exp_id, object->tmp_exp_name, object->tmp_camera, object->tmp_telescope, object->state, object->workdir, object->workdir_state, object->reduction); 2680 2966 } 2681 2967 … … 2775 3061 return false; 2776 3062 } 2777 if (!psMetadataAdd(md, PS_LIST_TAIL, "imfiles", PS_DATA_S32, NULL, object->imfiles)) {2778 psError(PS_ERR_UNKNOWN, false, "failed to add item imfiles");2779 psFree(md);2780 return false;2781 }2782 3063 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir", PS_DATA_STRING, NULL, object->workdir)) { 2783 3064 psError(PS_ERR_UNKNOWN, false, "failed to add item workdir"); … … 2790 3071 return false; 2791 3072 } 3073 if (!psMetadataAdd(md, PS_LIST_TAIL, "reduction", PS_DATA_STRING, NULL, object->reduction)) { 3074 psError(PS_ERR_UNKNOWN, false, "failed to add item reduction"); 3075 psFree(md); 3076 return false; 3077 } 2792 3078 2793 3079 … … 2824 3110 return false; 2825 3111 } 2826 psS32 imfiles = psMetadataLookupS32(&status, md, "imfiles");2827 if (!status) {2828 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item imfiles");2829 return false;2830 }2831 3112 char* workdir = psMetadataLookupPtr(&status, md, "workdir"); 2832 3113 if (!status) { … … 2839 3120 return false; 2840 3121 } 2841 2842 return newExpRowAlloc(exp_id, tmp_exp_name, tmp_camera, tmp_telescope, state, imfiles, workdir, workdir_state); 3122 char* reduction = psMetadataLookupPtr(&status, md, "reduction"); 3123 if (!status) { 3124 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item reduction"); 3125 return false; 3126 } 3127 3128 return newExpRowAlloc(exp_id, tmp_exp_name, tmp_camera, tmp_telescope, state, workdir, workdir_state, reduction); 2843 3129 } 2844 3130 psArray *newExpSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) … … 3269 3555 static void rawExpRowFree(rawExpRow *object); 3270 3556 3271 rawExpRow *rawExpRowAlloc(psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *exp_tag, const char *exp_type, psS32 imfiles, const char *filelevel, const char *workdir, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psF32 solang, psS16 fault)3557 rawExpRow *rawExpRowAlloc(psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *exp_tag, const char *exp_type, const char *filelevel, const char *workdir, const char *reduction, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psF32 solang, psS16 fault) 3272 3558 { 3273 3559 rawExpRow *_object; … … 3283 3569 _object->exp_tag = psStringCopy(exp_tag); 3284 3570 _object->exp_type = psStringCopy(exp_type); 3285 _object->imfiles = imfiles;3286 3571 _object->filelevel = psStringCopy(filelevel); 3287 3572 _object->workdir = psStringCopy(workdir); 3573 _object->reduction = psStringCopy(reduction); 3288 3574 _object->filter = psStringCopy(filter); 3289 3575 _object->airmass = airmass; … … 3321 3607 psFree(object->filelevel); 3322 3608 psFree(object->workdir); 3609 psFree(object->reduction); 3323 3610 psFree(object->filter); 3324 3611 psFree(object->object); … … 3363 3650 return false; 3364 3651 } 3365 if (!psMetadataAdd(md, PS_LIST_TAIL, "imfiles", PS_DATA_S32, NULL, 0)) {3366 psError(PS_ERR_UNKNOWN, false, "failed to add item imfiles");3367 psFree(md);3368 return false;3369 }3370 3652 if (!psMetadataAdd(md, PS_LIST_TAIL, "filelevel", PS_DATA_STRING, NULL, "64")) { 3371 3653 psError(PS_ERR_UNKNOWN, false, "failed to add item filelevel"); … … 3378 3660 return false; 3379 3661 } 3662 if (!psMetadataAdd(md, PS_LIST_TAIL, "reduction", PS_DATA_STRING, "Reduction class", "64")) { 3663 psError(PS_ERR_UNKNOWN, false, "failed to add item reduction"); 3664 psFree(md); 3665 return false; 3666 } 3380 3667 if (!psMetadataAdd(md, PS_LIST_TAIL, "filter", PS_DATA_STRING, NULL, "64")) { 3381 3668 psError(PS_ERR_UNKNOWN, false, "failed to add item filter"); … … 3496 3783 } 3497 3784 3498 bool rawExpInsert(psDB * dbh, psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *exp_tag, const char *exp_type, psS32 imfiles, const char *filelevel, const char *workdir, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psF32 solang, psS16 fault)3785 bool rawExpInsert(psDB * dbh, psS64 exp_id, const char *exp_name, const char *camera, const char *telescope, psTime* dateobs, const char *exp_tag, const char *exp_type, const char *filelevel, const char *workdir, const char *reduction, const char *filter, psF32 airmass, psF64 ra, psF64 decl, psF32 exp_time, psF32 sat_pixel_frac, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 alt, psF64 az, psF32 ccd_temp, psF64 posang, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *object, psF32 solang, psS16 fault) 3499 3786 { 3500 3787 psMetadata *md = psMetadataAlloc(); … … 3534 3821 return false; 3535 3822 } 3536 if (!psMetadataAdd(md, PS_LIST_TAIL, "imfiles", PS_DATA_S32, NULL, imfiles)) {3537 psError(PS_ERR_UNKNOWN, false, "failed to add item imfiles");3538 psFree(md);3539 return false;3540 }3541 3823 if (!psMetadataAdd(md, PS_LIST_TAIL, "filelevel", PS_DATA_STRING, NULL, filelevel)) { 3542 3824 psError(PS_ERR_UNKNOWN, false, "failed to add item filelevel"); … … 3546 3828 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir", PS_DATA_STRING, NULL, workdir)) { 3547 3829 psError(PS_ERR_UNKNOWN, false, "failed to add item workdir"); 3830 psFree(md); 3831 return false; 3832 } 3833 if (!psMetadataAdd(md, PS_LIST_TAIL, "reduction", PS_DATA_STRING, NULL, reduction)) { 3834 psError(PS_ERR_UNKNOWN, false, "failed to add item reduction"); 3548 3835 psFree(md); 3549 3836 return false; … … 3677 3964 bool rawExpInsertObject(psDB *dbh, rawExpRow *object) 3678 3965 { 3679 return rawExpInsert(dbh, object->exp_id, object->exp_name, object->camera, object->telescope, object->dateobs, object->exp_tag, object->exp_type, object-> imfiles, object->filelevel, object->workdir, object->filter, object->airmass, object->ra, object->decl, object->exp_time, object->sat_pixel_frac, object->bg, object->bg_stdev, object->bg_mean_stdev, object->alt, object->az, object->ccd_temp, object->posang, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->object, object->solang, object->fault);3966 return rawExpInsert(dbh, object->exp_id, object->exp_name, object->camera, object->telescope, object->dateobs, object->exp_tag, object->exp_type, object->filelevel, object->workdir, object->reduction, object->filter, object->airmass, object->ra, object->decl, object->exp_time, object->sat_pixel_frac, object->bg, object->bg_stdev, object->bg_mean_stdev, object->alt, object->az, object->ccd_temp, object->posang, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->object, object->solang, object->fault); 3680 3967 } 3681 3968 … … 3785 4072 return false; 3786 4073 } 3787 if (!psMetadataAdd(md, PS_LIST_TAIL, "imfiles", PS_DATA_S32, NULL, object->imfiles)) {3788 psError(PS_ERR_UNKNOWN, false, "failed to add item imfiles");3789 psFree(md);3790 return false;3791 }3792 4074 if (!psMetadataAdd(md, PS_LIST_TAIL, "filelevel", PS_DATA_STRING, NULL, object->filelevel)) { 3793 4075 psError(PS_ERR_UNKNOWN, false, "failed to add item filelevel"); … … 3800 4082 return false; 3801 4083 } 4084 if (!psMetadataAdd(md, PS_LIST_TAIL, "reduction", PS_DATA_STRING, NULL, object->reduction)) { 4085 psError(PS_ERR_UNKNOWN, false, "failed to add item reduction"); 4086 psFree(md); 4087 return false; 4088 } 3802 4089 if (!psMetadataAdd(md, PS_LIST_TAIL, "filter", PS_DATA_STRING, NULL, object->filter)) { 3803 4090 psError(PS_ERR_UNKNOWN, false, "failed to add item filter"); … … 3949 4236 return false; 3950 4237 } 3951 psS32 imfiles = psMetadataLookupS32(&status, md, "imfiles");3952 if (!status) {3953 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item imfiles");3954 return false;3955 }3956 4238 char* filelevel = psMetadataLookupPtr(&status, md, "filelevel"); 3957 4239 if (!status) { … … 3964 4246 return false; 3965 4247 } 4248 char* reduction = psMetadataLookupPtr(&status, md, "reduction"); 4249 if (!status) { 4250 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item reduction"); 4251 return false; 4252 } 3966 4253 char* filter = psMetadataLookupPtr(&status, md, "filter"); 3967 4254 if (!status) { … … 4070 4357 } 4071 4358 4072 return rawExpRowAlloc(exp_id, exp_name, camera, telescope, dateobs, exp_tag, exp_type, imfiles, filelevel, workdir, filter, airmass, ra, decl, exp_time, sat_pixel_frac, bg, bg_stdev, bg_mean_stdev, alt, az, ccd_temp, posang, user_1, user_2, user_3, user_4, user_5, object, solang, fault);4359 return rawExpRowAlloc(exp_id, exp_name, camera, telescope, dateobs, exp_tag, exp_type, filelevel, workdir, reduction, filter, airmass, ra, decl, exp_time, sat_pixel_frac, bg, bg_stdev, bg_mean_stdev, alt, az, ccd_temp, posang, user_1, user_2, user_3, user_4, user_5, object, solang, fault); 4073 4360 } 4074 4361 psArray *rawExpSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) … … 5391 5678 static void chipRunRowFree(chipRunRow *object); 5392 5679 5393 chipRunRow *chipRunRowAlloc(psS64 chip_id, const char *state, const char *workdir, const char *workdir_state, const char *label, const char *reduction, const char *expgroup, const char *dvodb)5680 chipRunRow *chipRunRowAlloc(psS64 chip_id, psS64 exp_id, const char *state, const char *workdir, const char *workdir_state, const char *label, const char *reduction, const char *expgroup, const char *dvodb) 5394 5681 { 5395 5682 chipRunRow *_object; … … 5399 5686 5400 5687 _object->chip_id = chip_id; 5688 _object->exp_id = exp_id; 5401 5689 _object->state = psStringCopy(state); 5402 5690 _object->workdir = psStringCopy(workdir); … … 5429 5717 return false; 5430 5718 } 5431 if (!psMetadataAdd(md, PS_LIST_TAIL, "state", PS_DATA_STRING, "key", "64")) { 5719 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Key INDEX(chip_id, exp_id) fkey (exp_id) ref rawExp(exp_id)", 64)) { 5720 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 5721 psFree(md); 5722 return false; 5723 } 5724 if (!psMetadataAdd(md, PS_LIST_TAIL, "state", PS_DATA_STRING, "Key", "64")) { 5432 5725 psError(PS_ERR_UNKNOWN, false, "failed to add item state"); 5433 5726 psFree(md); … … 5439 5732 return false; 5440 5733 } 5441 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir_state", PS_DATA_STRING, " key", "64")) {5734 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir_state", PS_DATA_STRING, "Key", "64")) { 5442 5735 psError(PS_ERR_UNKNOWN, false, "failed to add item workdir_state"); 5443 5736 psFree(md); 5444 5737 return false; 5445 5738 } 5446 if (!psMetadataAdd(md, PS_LIST_TAIL, "label", PS_DATA_STRING, " key", "64")) {5739 if (!psMetadataAdd(md, PS_LIST_TAIL, "label", PS_DATA_STRING, "Key", "64")) { 5447 5740 psError(PS_ERR_UNKNOWN, false, "failed to add item label"); 5448 5741 psFree(md); … … 5454 5747 return false; 5455 5748 } 5456 if (!psMetadataAdd(md, PS_LIST_TAIL, "expgroup", PS_DATA_STRING, " key", "64")) {5749 if (!psMetadataAdd(md, PS_LIST_TAIL, "expgroup", PS_DATA_STRING, "Key", "64")) { 5457 5750 psError(PS_ERR_UNKNOWN, false, "failed to add item expgroup"); 5458 5751 psFree(md); … … 5477 5770 } 5478 5771 5479 bool chipRunInsert(psDB * dbh, psS64 chip_id, const char *state, const char *workdir, const char *workdir_state, const char *label, const char *reduction, const char *expgroup, const char *dvodb)5772 bool chipRunInsert(psDB * dbh, psS64 chip_id, psS64 exp_id, const char *state, const char *workdir, const char *workdir_state, const char *label, const char *reduction, const char *expgroup, const char *dvodb) 5480 5773 { 5481 5774 psMetadata *md = psMetadataAlloc(); 5482 5775 if (!psMetadataAdd(md, PS_LIST_TAIL, "chip_id", PS_DATA_S64, NULL, chip_id)) { 5483 5776 psError(PS_ERR_UNKNOWN, false, "failed to add item chip_id"); 5777 psFree(md); 5778 return false; 5779 } 5780 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, NULL, exp_id)) { 5781 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 5484 5782 psFree(md); 5485 5783 return false; … … 5543 5841 bool chipRunInsertObject(psDB *dbh, chipRunRow *object) 5544 5842 { 5545 return chipRunInsert(dbh, object->chip_id, object-> state, object->workdir, object->workdir_state, object->label, object->reduction, object->expgroup, object->dvodb);5843 return chipRunInsert(dbh, object->chip_id, object->exp_id, object->state, object->workdir, object->workdir_state, object->label, object->reduction, object->expgroup, object->dvodb); 5546 5844 } 5547 5845 … … 5621 5919 return false; 5622 5920 } 5921 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, NULL, object->exp_id)) { 5922 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 5923 psFree(md); 5924 return false; 5925 } 5623 5926 if (!psMetadataAdd(md, PS_LIST_TAIL, "state", PS_DATA_STRING, NULL, object->state)) { 5624 5927 psError(PS_ERR_UNKNOWN, false, "failed to add item state"); … … 5670 5973 return false; 5671 5974 } 5975 psS64 exp_id = psMetadataLookupS64(&status, md, "exp_id"); 5976 if (!status) { 5977 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item exp_id"); 5978 return false; 5979 } 5672 5980 char* state = psMetadataLookupPtr(&status, md, "state"); 5673 5981 if (!status) { … … 5706 6014 } 5707 6015 5708 return chipRunRowAlloc(chip_id, state, workdir, workdir_state, label, reduction, expgroup, dvodb);6016 return chipRunRowAlloc(chip_id, exp_id, state, workdir, workdir_state, label, reduction, expgroup, dvodb); 5709 6017 } 5710 6018 psArray *chipRunSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) … … 5806 6114 5807 6115 psMetadata *md = chipRunMetadataFromObject(object); 5808 5809 if (!ippdbPrintMetadataRaw(stream, md, mdcf)) {5810 psError(PS_ERR_UNKNOWN, false, "failed to print metadata");5811 psFree(md);5812 }5813 5814 psFree(md);5815 5816 return true;5817 }5818 static void chipInputImfileRowFree(chipInputImfileRow *object);5819 5820 chipInputImfileRow *chipInputImfileRowAlloc(psS64 chip_id, psS64 exp_id, const char *class_id)5821 {5822 chipInputImfileRow *_object;5823 5824 _object = psAlloc(sizeof(chipInputImfileRow));5825 psMemSetDeallocator(_object, (psFreeFunc)chipInputImfileRowFree);5826 5827 _object->chip_id = chip_id;5828 _object->exp_id = exp_id;5829 _object->class_id = psStringCopy(class_id);5830 5831 return _object;5832 }5833 5834 static void chipInputImfileRowFree(chipInputImfileRow *object)5835 {5836 psFree(object->class_id);5837 }5838 5839 bool chipInputImfileCreateTable(psDB *dbh)5840 {5841 psMetadata *md = psMetadataAlloc();5842 if (!psMetadataAdd(md, PS_LIST_TAIL, "chip_id", PS_DATA_S64, "Primary Key fkey (chip_id) ref chipRun(chip_id)", 0)) {5843 psError(PS_ERR_UNKNOWN, false, "failed to add item chip_id");5844 psFree(md);5845 return false;5846 }5847 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key fkey (exp_id, class_id) ref rawImfile (exp_id, class_id)", 64)) {5848 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");5849 psFree(md);5850 return false;5851 }5852 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, "Primary Key", "64")) {5853 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id");5854 psFree(md);5855 return false;5856 }5857 5858 bool status = psDBCreateTable(dbh, CHIPINPUTIMFILE_TABLE_NAME, md);5859 5860 psFree(md);5861 5862 return status;5863 }5864 5865 bool chipInputImfileDropTable(psDB *dbh)5866 {5867 return psDBDropTable(dbh, CHIPINPUTIMFILE_TABLE_NAME);5868 }5869 5870 bool chipInputImfileInsert(psDB * dbh, psS64 chip_id, psS64 exp_id, const char *class_id)5871 {5872 psMetadata *md = psMetadataAlloc();5873 if (!psMetadataAdd(md, PS_LIST_TAIL, "chip_id", PS_DATA_S64, NULL, chip_id)) {5874 psError(PS_ERR_UNKNOWN, false, "failed to add item chip_id");5875 psFree(md);5876 return false;5877 }5878 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, NULL, exp_id)) {5879 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");5880 psFree(md);5881 return false;5882 }5883 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, NULL, class_id)) {5884 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id");5885 psFree(md);5886 return false;5887 }5888 5889 bool status = psDBInsertOneRow(dbh, CHIPINPUTIMFILE_TABLE_NAME, md);5890 psFree(md);5891 5892 return status;5893 }5894 5895 long long chipInputImfileDelete(psDB *dbh, const psMetadata *where, unsigned long long limit)5896 {5897 long long deleted = 0;5898 5899 long long count = psDBDeleteRows(dbh, CHIPINPUTIMFILE_TABLE_NAME, where, limit);5900 if (count < 0) {5901 psError(PS_ERR_UNKNOWN, true, "failed to delete row from chipInputImfile");5902 return count;5903 5904 deleted += count;5905 }5906 5907 return deleted;5908 }5909 bool chipInputImfileInsertObject(psDB *dbh, chipInputImfileRow *object)5910 {5911 return chipInputImfileInsert(dbh, object->chip_id, object->exp_id, object->class_id);5912 }5913 5914 bool chipInputImfileInsertObjects(psDB *dbh, psArray *objects)5915 {5916 for (long i = 0; i < psArrayLength(objects); i++) {5917 if (!chipInputImfileInsertObject(dbh, objects->data[i])) {5918 return false;5919 }5920 }5921 5922 return true;5923 }5924 5925 bool chipInputImfileInsertFits(psDB *dbh, const psFits *fits)5926 {5927 psArray *rowSet;5928 5929 // move to (the first?) extension named CHIPINPUTIMFILE_TABLE_NAME5930 if (!psFitsMoveExtName(fits, CHIPINPUTIMFILE_TABLE_NAME)) {5931 psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", CHIPINPUTIMFILE_TABLE_NAME);5932 return false;5933 }5934 5935 // check HDU type5936 if (psFitsGetExtType(fits) != PS_FITS_TYPE_BINARY_TABLE) {5937 psError(PS_ERR_UNKNOWN, true, "FITS HDU type is not PS_FITS_TYPE_BINARY_TABLE");5938 return false;5939 }5940 5941 // read fits table5942 rowSet = psFitsReadTable(fits);5943 if (!rowSet) {5944 psError(PS_ERR_UNKNOWN, true, "FITS read error or FITS table is empty");5945 psFree(rowSet);5946 return false;5947 }5948 5949 if (!psDBInsertRows(dbh, CHIPINPUTIMFILE_TABLE_NAME, rowSet)) {5950 psError(PS_ERR_UNKNOWN, false, "databse insert failed");5951 psFree(rowSet);5952 return false;5953 }5954 5955 psFree(rowSet);5956 5957 return true;5958 }5959 5960 bool chipInputImfileSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit)5961 {5962 psArray *rowSet;5963 5964 rowSet = psDBSelectRows(dbh, CHIPINPUTIMFILE_TABLE_NAME, where, limit);5965 if (!rowSet) {5966 return false;5967 }5968 5969 // output to fits5970 if (!psFitsWriteTable(fits, NULL, rowSet, CHIPINPUTIMFILE_TABLE_NAME)) {5971 psError(PS_ERR_UNKNOWN, false, "FITS table write failed");5972 psFree(rowSet);5973 return false;5974 }5975 5976 psFree(rowSet);5977 5978 return true;5979 }5980 5981 psMetadata *chipInputImfileMetadataFromObject(const chipInputImfileRow *object)5982 {5983 psMetadata *md = psMetadataAlloc();5984 if (!psMetadataAdd(md, PS_LIST_TAIL, "chip_id", PS_DATA_S64, NULL, object->chip_id)) {5985 psError(PS_ERR_UNKNOWN, false, "failed to add item chip_id");5986 psFree(md);5987 return false;5988 }5989 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, NULL, object->exp_id)) {5990 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id");5991 psFree(md);5992 return false;5993 }5994 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, NULL, object->class_id)) {5995 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id");5996 psFree(md);5997 return false;5998 }5999 6000 6001 return md;6002 }6003 6004 chipInputImfileRow *chipInputImfileObjectFromMetadata(psMetadata *md)6005 {6006 6007 bool status = false;6008 psS64 chip_id = psMetadataLookupS64(&status, md, "chip_id");6009 if (!status) {6010 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item chip_id");6011 return false;6012 }6013 psS64 exp_id = psMetadataLookupS64(&status, md, "exp_id");6014 if (!status) {6015 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item exp_id");6016 return false;6017 }6018 char* class_id = psMetadataLookupPtr(&status, md, "class_id");6019 if (!status) {6020 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item class_id");6021 return false;6022 }6023 6024 return chipInputImfileRowAlloc(chip_id, exp_id, class_id);6025 }6026 psArray *chipInputImfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit)6027 {6028 psArray *rowSet;6029 psArray *returnSet;6030 psU64 i;6031 6032 rowSet = psDBSelectRows(dbh, CHIPINPUTIMFILE_TABLE_NAME, where, limit);6033 if (!rowSet) {6034 return NULL;6035 }6036 6037 // convert psMetadata rows to row objects6038 6039 returnSet = psArrayAllocEmpty(rowSet->n);6040 6041 for (i = 0; i < rowSet->n; i++) {6042 chipInputImfileRow *object = chipInputImfileObjectFromMetadata(rowSet->data[i]);6043 psArrayAdd(returnSet, 0, object);6044 psFree(object);6045 }6046 6047 psFree(rowSet);6048 6049 return returnSet;6050 }6051 bool chipInputImfileDeleteObject(psDB *dbh, const chipInputImfileRow *object)6052 {6053 psMetadata *where = chipInputImfileMetadataFromObject(object);6054 long long count = psDBDeleteRows(dbh, CHIPINPUTIMFILE_TABLE_NAME, where, 0);6055 psFree(where);6056 if (count < 0) {6057 psError(PS_ERR_UNKNOWN, true, "failed to delete row from chipInputImfile");6058 return false;6059 }6060 if (count > 1) {6061 // XXX should this be a psAbort() instead? It is possible that6062 // having an object match multiple rows was by design.6063 psError(PS_ERR_UNKNOWN, true, "chipInputImfileRow object matched more then one row. Check your database schema");6064 return false;6065 }6066 6067 return true;6068 }6069 long long chipInputImfileDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit)6070 {6071 long long deleted = 0;6072 6073 for (long long i = 0; i < objects->n; i++) {6074 chipInputImfileRow *object = objects->data[i];6075 psMetadata *where = chipInputImfileMetadataFromObject(object);6076 long long count = psDBDeleteRows(dbh, CHIPINPUTIMFILE_TABLE_NAME, where, limit);6077 psFree(where);6078 if (count < 0) {6079 psError(PS_ERR_UNKNOWN, true, "failed to delete row from chipInputImfile");6080 return count;6081 }6082 6083 deleted += count;6084 }6085 6086 return deleted;6087 }6088 bool chipInputImfilePrintObjects(FILE *stream, psArray *objects, bool mdcf)6089 {6090 PS_ASSERT_PTR_NON_NULL(objects, false);6091 6092 psMetadata *output = psMetadataAlloc();6093 for (long i = 0; i < psArrayLength(objects); i++) {6094 psMetadata *md = chipInputImfileMetadataFromObject(objects->data[i]);6095 if (!psMetadataAddMetadata(6096 output,6097 PS_LIST_TAIL,6098 CHIPINPUTIMFILE_TABLE_NAME,6099 PS_META_DUPLICATE_OK,6100 NULL,6101 md6102 )) {6103 psError(PS_ERR_UNKNOWN, false, "failed to add metadata");6104 psFree(md);6105 psFree(output);6106 return false;6107 }6108 psFree(md);6109 }6110 6111 if (!ippdbPrintMetadataRaw(stream, output, mdcf)) {6112 psError(PS_ERR_UNKNOWN, false, "failed to print metadata");6113 psFree(output);6114 }6115 psFree(output);6116 6117 return true;6118 }6119 bool chipInputImfilePrintObject(FILE *stream, chipInputImfileRow *object, bool mdcf)6120 {6121 PS_ASSERT_PTR_NON_NULL(object, false);6122 6123 psMetadata *md = chipInputImfileMetadataFromObject(object);6124 6116 6125 6117 if (!ippdbPrintMetadataRaw(stream, md, mdcf)) { … … 6179 6171 { 6180 6172 psMetadata *md = psMetadataAlloc(); 6181 if (!psMetadataAdd(md, PS_LIST_TAIL, "chip_id", PS_DATA_S64, "Primary Key fkey (chip_id, exp_id , class_id) ref chipInputImfile(chip_id, exp_id, class_id)", 0)) {6173 if (!psMetadataAdd(md, PS_LIST_TAIL, "chip_id", PS_DATA_S64, "Primary Key fkey (chip_id, exp_id) ref chipRun(chip_id, exp_id)", 0)) { 6182 6174 psError(PS_ERR_UNKNOWN, false, "failed to add item chip_id"); 6183 6175 psFree(md); 6184 6176 return false; 6185 6177 } 6186 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key ", 64)) {6178 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key fkey (exp_id, class_id) ref rawImfile(exp_id, class_id)", 64)) { 6187 6179 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 6188 6180 psFree(md); … … 6259 6251 return false; 6260 6252 } 6261 if (!psMetadataAdd(md, PS_LIST_TAIL, "fwhm", PS_DATA_F32, NULL, 0.0)) {6253 if (!psMetadataAdd(md, PS_LIST_TAIL, "fwhm", PS_DATA_F32, "# replace this with fwhm_major", 0.0)) { 6262 6254 psError(PS_ERR_UNKNOWN, false, "failed to add item fwhm"); 6263 6255 psFree(md); 6264 6256 return false; 6265 6257 } 6266 if (!psMetadataAdd(md, PS_LIST_TAIL, "fwhm_range", PS_DATA_F32, NULL, 0.0)) {6258 if (!psMetadataAdd(md, PS_LIST_TAIL, "fwhm_range", PS_DATA_F32, "# replace this with fwhm_minor", 0.0)) { 6267 6259 psError(PS_ERR_UNKNOWN, false, "failed to add item fwhm_range"); 6268 6260 psFree(md); … … 7206 7198 return false; 7207 7199 } 7208 if (!psMetadataAdd(md, PS_LIST_TAIL, "chip_id", PS_DATA_S64, " Primary Keyfkey(chip_id) ref chipRun(chip_id)", 0)) {7200 if (!psMetadataAdd(md, PS_LIST_TAIL, "chip_id", PS_DATA_S64, "Key INDEX(cam_id, chip_id) fkey(chip_id) ref chipRun(chip_id)", 0)) { 7209 7201 psError(PS_ERR_UNKNOWN, false, "failed to add item chip_id"); 7210 7202 psFree(md); … … 9600 9592 static void warpSkyfileRowFree(warpSkyfileRow *object); 9601 9593 9602 warpSkyfileRow *warpSkyfileRowAlloc(psS64 warp_id, const char *skycell_id, const char *tess_id, const char *uri, const char *path_base, psF64 bg, psF64 bg_stdev )9594 warpSkyfileRow *warpSkyfileRowAlloc(psS64 warp_id, const char *skycell_id, const char *tess_id, const char *uri, const char *path_base, psF64 bg, psF64 bg_stdev, psF64 good_frac, psS16 fault) 9603 9595 { 9604 9596 warpSkyfileRow *_object; … … 9614 9606 _object->bg = bg; 9615 9607 _object->bg_stdev = bg_stdev; 9608 _object->good_frac = good_frac; 9609 _object->fault = fault; 9616 9610 9617 9611 return _object; … … 9664 9658 return false; 9665 9659 } 9660 if (!psMetadataAdd(md, PS_LIST_TAIL, "good_frac", PS_DATA_F64, "Key", 0.0)) { 9661 psError(PS_ERR_UNKNOWN, false, "failed to add item good_frac"); 9662 psFree(md); 9663 return false; 9664 } 9665 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, "Key", 0)) { 9666 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 9667 psFree(md); 9668 return false; 9669 } 9666 9670 9667 9671 bool status = psDBCreateTable(dbh, WARPSKYFILE_TABLE_NAME, md); … … 9677 9681 } 9678 9682 9679 bool warpSkyfileInsert(psDB * dbh, psS64 warp_id, const char *skycell_id, const char *tess_id, const char *uri, const char *path_base, psF64 bg, psF64 bg_stdev )9683 bool warpSkyfileInsert(psDB * dbh, psS64 warp_id, const char *skycell_id, const char *tess_id, const char *uri, const char *path_base, psF64 bg, psF64 bg_stdev, psF64 good_frac, psS16 fault) 9680 9684 { 9681 9685 psMetadata *md = psMetadataAlloc(); … … 9712 9716 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_stdev", PS_DATA_F64, NULL, bg_stdev)) { 9713 9717 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_stdev"); 9718 psFree(md); 9719 return false; 9720 } 9721 if (!psMetadataAdd(md, PS_LIST_TAIL, "good_frac", PS_DATA_F64, NULL, good_frac)) { 9722 psError(PS_ERR_UNKNOWN, false, "failed to add item good_frac"); 9723 psFree(md); 9724 return false; 9725 } 9726 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, NULL, fault)) { 9727 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 9714 9728 psFree(md); 9715 9729 return false; … … 9738 9752 bool warpSkyfileInsertObject(psDB *dbh, warpSkyfileRow *object) 9739 9753 { 9740 return warpSkyfileInsert(dbh, object->warp_id, object->skycell_id, object->tess_id, object->uri, object->path_base, object->bg, object->bg_stdev );9754 return warpSkyfileInsert(dbh, object->warp_id, object->skycell_id, object->tess_id, object->uri, object->path_base, object->bg, object->bg_stdev, object->good_frac, object->fault); 9741 9755 } 9742 9756 … … 9846 9860 return false; 9847 9861 } 9862 if (!psMetadataAdd(md, PS_LIST_TAIL, "good_frac", PS_DATA_F64, NULL, object->good_frac)) { 9863 psError(PS_ERR_UNKNOWN, false, "failed to add item good_frac"); 9864 psFree(md); 9865 return false; 9866 } 9867 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, NULL, object->fault)) { 9868 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 9869 psFree(md); 9870 return false; 9871 } 9848 9872 9849 9873 … … 9890 9914 return false; 9891 9915 } 9892 9893 return warpSkyfileRowAlloc(warp_id, skycell_id, tess_id, uri, path_base, bg, bg_stdev); 9916 psF64 good_frac = psMetadataLookupF64(&status, md, "good_frac"); 9917 if (!status) { 9918 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item good_frac"); 9919 return false; 9920 } 9921 psS16 fault = psMetadataLookupS16(&status, md, "fault"); 9922 if (!status) { 9923 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item fault"); 9924 return false; 9925 } 9926 9927 return warpSkyfileRowAlloc(warp_id, skycell_id, tess_id, uri, path_base, bg, bg_stdev, good_frac, fault); 9894 9928 } 9895 9929 psArray *warpSkyfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) … … 10408 10442 static void diffInputSkyfileRowFree(diffInputSkyfileRow *object); 10409 10443 10410 diffInputSkyfileRow *diffInputSkyfileRowAlloc(psS64 diff_id, psS64 warp_id, const char *skycell_id, const char *tess_id, const char *kind, bool template)10444 diffInputSkyfileRow *diffInputSkyfileRowAlloc(psS64 diff_id, bool template, psS64 stack_id, psS64 warp_id, const char *skycell_id, const char *tess_id, const char *kind) 10411 10445 { 10412 10446 diffInputSkyfileRow *_object; … … 10416 10450 10417 10451 _object->diff_id = diff_id; 10452 _object->template = template; 10453 _object->stack_id = stack_id; 10418 10454 _object->warp_id = warp_id; 10419 10455 _object->skycell_id = psStringCopy(skycell_id); 10420 10456 _object->tess_id = psStringCopy(tess_id); 10421 10457 _object->kind = psStringCopy(kind); 10422 _object->template = template;10423 10458 10424 10459 return _object; … … 10440 10475 return false; 10441 10476 } 10442 if (!psMetadataAdd(md, PS_LIST_TAIL, "warp_id", PS_DATA_S64, "Primary Key fkey(warp_id, skycell_id, tess_id) ref warpSkyfile(warp_id, skycell_id, tess_id)", 0)) { 10477 if (!psMetadataAdd(md, PS_LIST_TAIL, "template", PS_DATA_BOOL, "Primary Key", 0)) { 10478 psError(PS_ERR_UNKNOWN, false, "failed to add item template"); 10479 psFree(md); 10480 return false; 10481 } 10482 if (!psMetadataAdd(md, PS_LIST_TAIL, "stack_id", PS_DATA_S64, "fkey(stack_id) ref stackSumSkyfile(stack_id)", 0)) { 10483 psError(PS_ERR_UNKNOWN, false, "failed to add item stack_id"); 10484 psFree(md); 10485 return false; 10486 } 10487 if (!psMetadataAdd(md, PS_LIST_TAIL, "warp_id", PS_DATA_S64, "fkey(warp_id, skycell_id, tess_id) ref warpSkyfile(warp_id, skycell_id, tess_id)", 0)) { 10443 10488 psError(PS_ERR_UNKNOWN, false, "failed to add item warp_id"); 10444 10489 psFree(md); 10445 10490 return false; 10446 10491 } 10447 if (!psMetadataAdd(md, PS_LIST_TAIL, "skycell_id", PS_DATA_STRING, " PrimaryKey", "64")) {10492 if (!psMetadataAdd(md, PS_LIST_TAIL, "skycell_id", PS_DATA_STRING, "Key", "64")) { 10448 10493 psError(PS_ERR_UNKNOWN, false, "failed to add item skycell_id"); 10449 10494 psFree(md); 10450 10495 return false; 10451 10496 } 10452 if (!psMetadataAdd(md, PS_LIST_TAIL, "tess_id", PS_DATA_STRING, " PrimaryKey", "64")) {10497 if (!psMetadataAdd(md, PS_LIST_TAIL, "tess_id", PS_DATA_STRING, "Key", "64")) { 10453 10498 psError(PS_ERR_UNKNOWN, false, "failed to add item tess_id"); 10454 10499 psFree(md); … … 10460 10505 return false; 10461 10506 } 10462 if (!psMetadataAdd(md, PS_LIST_TAIL, "template", PS_DATA_BOOL, NULL, 0)) {10463 psError(PS_ERR_UNKNOWN, false, "failed to add item template");10464 psFree(md);10465 return false;10466 }10467 10507 10468 10508 bool status = psDBCreateTable(dbh, DIFFINPUTSKYFILE_TABLE_NAME, md); … … 10478 10518 } 10479 10519 10480 bool diffInputSkyfileInsert(psDB * dbh, psS64 diff_id, psS64 warp_id, const char *skycell_id, const char *tess_id, const char *kind, bool template)10520 bool diffInputSkyfileInsert(psDB * dbh, psS64 diff_id, bool template, psS64 stack_id, psS64 warp_id, const char *skycell_id, const char *tess_id, const char *kind) 10481 10521 { 10482 10522 psMetadata *md = psMetadataAlloc(); … … 10486 10526 return false; 10487 10527 } 10528 if (!psMetadataAdd(md, PS_LIST_TAIL, "template", PS_DATA_BOOL, NULL, template)) { 10529 psError(PS_ERR_UNKNOWN, false, "failed to add item template"); 10530 psFree(md); 10531 return false; 10532 } 10533 if (!psMetadataAdd(md, PS_LIST_TAIL, "stack_id", PS_DATA_S64, NULL, stack_id)) { 10534 psError(PS_ERR_UNKNOWN, false, "failed to add item stack_id"); 10535 psFree(md); 10536 return false; 10537 } 10488 10538 if (!psMetadataAdd(md, PS_LIST_TAIL, "warp_id", PS_DATA_S64, NULL, warp_id)) { 10489 10539 psError(PS_ERR_UNKNOWN, false, "failed to add item warp_id"); … … 10503 10553 if (!psMetadataAdd(md, PS_LIST_TAIL, "kind", PS_DATA_STRING, NULL, kind)) { 10504 10554 psError(PS_ERR_UNKNOWN, false, "failed to add item kind"); 10505 psFree(md);10506 return false;10507 }10508 if (!psMetadataAdd(md, PS_LIST_TAIL, "template", PS_DATA_BOOL, NULL, template)) {10509 psError(PS_ERR_UNKNOWN, false, "failed to add item template");10510 10555 psFree(md); 10511 10556 return false; … … 10534 10579 bool diffInputSkyfileInsertObject(psDB *dbh, diffInputSkyfileRow *object) 10535 10580 { 10536 return diffInputSkyfileInsert(dbh, object->diff_id, object-> warp_id, object->skycell_id, object->tess_id, object->kind, object->template);10581 return diffInputSkyfileInsert(dbh, object->diff_id, object->template, object->stack_id, object->warp_id, object->skycell_id, object->tess_id, object->kind); 10537 10582 } 10538 10583 … … 10612 10657 return false; 10613 10658 } 10659 if (!psMetadataAdd(md, PS_LIST_TAIL, "template", PS_DATA_BOOL, NULL, object->template)) { 10660 psError(PS_ERR_UNKNOWN, false, "failed to add item template"); 10661 psFree(md); 10662 return false; 10663 } 10664 if (!psMetadataAdd(md, PS_LIST_TAIL, "stack_id", PS_DATA_S64, NULL, object->stack_id)) { 10665 psError(PS_ERR_UNKNOWN, false, "failed to add item stack_id"); 10666 psFree(md); 10667 return false; 10668 } 10614 10669 if (!psMetadataAdd(md, PS_LIST_TAIL, "warp_id", PS_DATA_S64, NULL, object->warp_id)) { 10615 10670 psError(PS_ERR_UNKNOWN, false, "failed to add item warp_id"); … … 10632 10687 return false; 10633 10688 } 10634 if (!psMetadataAdd(md, PS_LIST_TAIL, "template", PS_DATA_BOOL, NULL, object->template)) {10635 psError(PS_ERR_UNKNOWN, false, "failed to add item template");10636 psFree(md);10637 return false;10638 }10639 10689 10640 10690 … … 10651 10701 return false; 10652 10702 } 10703 bool template = psMetadataLookupBool(&status, md, "template"); 10704 if (!status) { 10705 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item template"); 10706 return false; 10707 } 10708 psS64 stack_id = psMetadataLookupS64(&status, md, "stack_id"); 10709 if (!status) { 10710 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item stack_id"); 10711 return false; 10712 } 10653 10713 psS64 warp_id = psMetadataLookupS64(&status, md, "warp_id"); 10654 10714 if (!status) { … … 10671 10731 return false; 10672 10732 } 10673 bool template = psMetadataLookupBool(&status, md, "template"); 10674 if (!status) { 10675 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item template"); 10676 return false; 10677 } 10678 10679 return diffInputSkyfileRowAlloc(diff_id, warp_id, skycell_id, tess_id, kind, template); 10733 10734 return diffInputSkyfileRowAlloc(diff_id, template, stack_id, warp_id, skycell_id, tess_id, kind); 10680 10735 } 10681 10736 psArray *diffInputSkyfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) … … 10789 10844 static void diffSkyfileRowFree(diffSkyfileRow *object); 10790 10845 10791 diffSkyfileRow *diffSkyfileRowAlloc(psS64 diff_id, const char *uri, const char *path_base, psF64 bg, psF64 bg_stdev )10846 diffSkyfileRow *diffSkyfileRowAlloc(psS64 diff_id, const char *uri, const char *path_base, psF64 bg, psF64 bg_stdev, psF64 good_frac, psS16 fault) 10792 10847 { 10793 10848 diffSkyfileRow *_object; … … 10801 10856 _object->bg = bg; 10802 10857 _object->bg_stdev = bg_stdev; 10858 _object->good_frac = good_frac; 10859 _object->fault = fault; 10803 10860 10804 10861 return _object; … … 10839 10896 return false; 10840 10897 } 10898 if (!psMetadataAdd(md, PS_LIST_TAIL, "good_frac", PS_DATA_F64, "Key", 0.0)) { 10899 psError(PS_ERR_UNKNOWN, false, "failed to add item good_frac"); 10900 psFree(md); 10901 return false; 10902 } 10903 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, "Key", 0)) { 10904 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 10905 psFree(md); 10906 return false; 10907 } 10841 10908 10842 10909 bool status = psDBCreateTable(dbh, DIFFSKYFILE_TABLE_NAME, md); … … 10852 10919 } 10853 10920 10854 bool diffSkyfileInsert(psDB * dbh, psS64 diff_id, const char *uri, const char *path_base, psF64 bg, psF64 bg_stdev )10921 bool diffSkyfileInsert(psDB * dbh, psS64 diff_id, const char *uri, const char *path_base, psF64 bg, psF64 bg_stdev, psF64 good_frac, psS16 fault) 10855 10922 { 10856 10923 psMetadata *md = psMetadataAlloc(); … … 10877 10944 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_stdev", PS_DATA_F64, NULL, bg_stdev)) { 10878 10945 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_stdev"); 10946 psFree(md); 10947 return false; 10948 } 10949 if (!psMetadataAdd(md, PS_LIST_TAIL, "good_frac", PS_DATA_F64, NULL, good_frac)) { 10950 psError(PS_ERR_UNKNOWN, false, "failed to add item good_frac"); 10951 psFree(md); 10952 return false; 10953 } 10954 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, NULL, fault)) { 10955 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 10879 10956 psFree(md); 10880 10957 return false; … … 10903 10980 bool diffSkyfileInsertObject(psDB *dbh, diffSkyfileRow *object) 10904 10981 { 10905 return diffSkyfileInsert(dbh, object->diff_id, object->uri, object->path_base, object->bg, object->bg_stdev );10982 return diffSkyfileInsert(dbh, object->diff_id, object->uri, object->path_base, object->bg, object->bg_stdev, object->good_frac, object->fault); 10906 10983 } 10907 10984 … … 11001 11078 return false; 11002 11079 } 11080 if (!psMetadataAdd(md, PS_LIST_TAIL, "good_frac", PS_DATA_F64, NULL, object->good_frac)) { 11081 psError(PS_ERR_UNKNOWN, false, "failed to add item good_frac"); 11082 psFree(md); 11083 return false; 11084 } 11085 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, NULL, object->fault)) { 11086 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 11087 psFree(md); 11088 return false; 11089 } 11003 11090 11004 11091 … … 11035 11122 return false; 11036 11123 } 11037 11038 return diffSkyfileRowAlloc(diff_id, uri, path_base, bg, bg_stdev); 11124 psF64 good_frac = psMetadataLookupF64(&status, md, "good_frac"); 11125 if (!status) { 11126 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item good_frac"); 11127 return false; 11128 } 11129 psS16 fault = psMetadataLookupS16(&status, md, "fault"); 11130 if (!status) { 11131 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item fault"); 11132 return false; 11133 } 11134 11135 return diffSkyfileRowAlloc(diff_id, uri, path_base, bg, bg_stdev, good_frac, fault); 11039 11136 } 11040 11137 psArray *diffSkyfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) … … 11847 11944 static void stackSumSkyfileRowFree(stackSumSkyfileRow *object); 11848 11945 11849 stackSumSkyfileRow *stackSumSkyfileRowAlloc(psS64 stack_id, const char *uri, const char *path_base, psF64 bg, psF64 bg_stdev )11946 stackSumSkyfileRow *stackSumSkyfileRowAlloc(psS64 stack_id, const char *uri, const char *path_base, psF64 bg, psF64 bg_stdev, psF64 good_frac, psS16 fault) 11850 11947 { 11851 11948 stackSumSkyfileRow *_object; … … 11859 11956 _object->bg = bg; 11860 11957 _object->bg_stdev = bg_stdev; 11958 _object->good_frac = good_frac; 11959 _object->fault = fault; 11861 11960 11862 11961 return _object; … … 11897 11996 return false; 11898 11997 } 11998 if (!psMetadataAdd(md, PS_LIST_TAIL, "good_frac", PS_DATA_F64, "Key", 0.0)) { 11999 psError(PS_ERR_UNKNOWN, false, "failed to add item good_frac"); 12000 psFree(md); 12001 return false; 12002 } 12003 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, "Key", 0)) { 12004 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 12005 psFree(md); 12006 return false; 12007 } 11899 12008 11900 12009 bool status = psDBCreateTable(dbh, STACKSUMSKYFILE_TABLE_NAME, md); … … 11910 12019 } 11911 12020 11912 bool stackSumSkyfileInsert(psDB * dbh, psS64 stack_id, const char *uri, const char *path_base, psF64 bg, psF64 bg_stdev )12021 bool stackSumSkyfileInsert(psDB * dbh, psS64 stack_id, const char *uri, const char *path_base, psF64 bg, psF64 bg_stdev, psF64 good_frac, psS16 fault) 11913 12022 { 11914 12023 psMetadata *md = psMetadataAlloc(); … … 11935 12044 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_stdev", PS_DATA_F64, NULL, bg_stdev)) { 11936 12045 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_stdev"); 12046 psFree(md); 12047 return false; 12048 } 12049 if (!psMetadataAdd(md, PS_LIST_TAIL, "good_frac", PS_DATA_F64, NULL, good_frac)) { 12050 psError(PS_ERR_UNKNOWN, false, "failed to add item good_frac"); 12051 psFree(md); 12052 return false; 12053 } 12054 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, NULL, fault)) { 12055 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 11937 12056 psFree(md); 11938 12057 return false; … … 11961 12080 bool stackSumSkyfileInsertObject(psDB *dbh, stackSumSkyfileRow *object) 11962 12081 { 11963 return stackSumSkyfileInsert(dbh, object->stack_id, object->uri, object->path_base, object->bg, object->bg_stdev );12082 return stackSumSkyfileInsert(dbh, object->stack_id, object->uri, object->path_base, object->bg, object->bg_stdev, object->good_frac, object->fault); 11964 12083 } 11965 12084 … … 12059 12178 return false; 12060 12179 } 12180 if (!psMetadataAdd(md, PS_LIST_TAIL, "good_frac", PS_DATA_F64, NULL, object->good_frac)) { 12181 psError(PS_ERR_UNKNOWN, false, "failed to add item good_frac"); 12182 psFree(md); 12183 return false; 12184 } 12185 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, NULL, object->fault)) { 12186 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 12187 psFree(md); 12188 return false; 12189 } 12061 12190 12062 12191 … … 12093 12222 return false; 12094 12223 } 12095 12096 return stackSumSkyfileRowAlloc(stack_id, uri, path_base, bg, bg_stdev); 12224 psF64 good_frac = psMetadataLookupF64(&status, md, "good_frac"); 12225 if (!status) { 12226 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item good_frac"); 12227 return false; 12228 } 12229 psS16 fault = psMetadataLookupS16(&status, md, "fault"); 12230 if (!status) { 12231 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item fault"); 12232 return false; 12233 } 12234 12235 return stackSumSkyfileRowAlloc(stack_id, uri, path_base, bg, bg_stdev, good_frac, fault); 12097 12236 } 12098 12237 psArray *stackSumSkyfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) … … 12274 12413 return false; 12275 12414 } 12276 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Key ", 0)) {12415 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Key INDEX(det_id, iteration)", 0)) { 12277 12416 psError(PS_ERR_UNKNOWN, false, "failed to add item iteration"); 12278 12417 psFree(md); … … 13105 13244 { 13106 13245 psMetadata *md = psMetadataAlloc(); 13107 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key ", 0)) {13246 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id) ref detRun(det_id)", 0)) { 13108 13247 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 13109 13248 psFree(md); 13110 13249 return false; 13111 13250 } 13112 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key ", 0)) {13251 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key fkey(exp_id) ref rawExp(exp_id)", 0)) { 13113 13252 psError(PS_ERR_UNKNOWN, false, "failed to add item iteration"); 13114 13253 psFree(md); 13115 13254 return false; 13116 13255 } 13117 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key ", 64)) {13256 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key INDEX(det_id, exp_id)", 64)) { 13118 13257 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 13119 13258 psFree(md); 13120 13259 return false; 13121 13260 } 13122 if (!psMetadataAdd(md, PS_LIST_TAIL, "include", PS_DATA_BOOL, NULL, 0)) {13261 if (!psMetadataAdd(md, PS_LIST_TAIL, "include", PS_DATA_BOOL, "INDEX(det_id, iteration)", 0)) { 13123 13262 psError(PS_ERR_UNKNOWN, false, "failed to add item include"); 13124 13263 psFree(md); … … 13459 13598 { 13460 13599 psMetadata *md = psMetadataAlloc(); 13461 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key ", 0)) {13600 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id, exp_id) ref detInputExp(det_id, exp_id)", 0)) { 13462 13601 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 13463 13602 psFree(md); 13464 13603 return false; 13465 13604 } 13466 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key ", 64)) {13605 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key fkey(exp_id, class_id) ref rawImfile(exp_id, class_id)", 64)) { 13467 13606 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 13468 13607 psFree(md); 13469 13608 return false; 13470 13609 } 13471 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, "Primary Key ", "64")) {13610 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, "Primary Key INDEX(det_id, class_id)", "64")) { 13472 13611 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id"); 13473 13612 psFree(md); 13474 13613 return false; 13475 13614 } 13476 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, "255")) {13615 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, "INDEX(det_id, exp_id)", "255")) { 13477 13616 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 13478 13617 psFree(md); … … 14089 14228 { 14090 14229 psMetadata *md = psMetadataAlloc(); 14091 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key ", 0)) {14230 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id, exp_id) ref detInputExp(det_id, exp_id)", 0)) { 14092 14231 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 14093 14232 psFree(md); 14094 14233 return false; 14095 14234 } 14096 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key ", 64)) {14235 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key fkey(det_id, exp_id) ref detProcessedImfile(det_id, exp_id)", 64)) { 14097 14236 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 14098 14237 psFree(md); … … 14678 14817 { 14679 14818 psMetadata *md = psMetadataAlloc(); 14680 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key ", 0)) {14819 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id, iteration) ref detInputExp(det_id, iteration)", 0)) { 14681 14820 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 14682 14821 psFree(md); 14683 14822 return false; 14684 14823 } 14685 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key ", 0)) {14824 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key fkey(det_id, class_id) ref detProcessedImfile(det_id, class_id)", 0)) { 14686 14825 psError(PS_ERR_UNKNOWN, false, "failed to add item iteration"); 14687 14826 psFree(md); … … 15216 15355 { 15217 15356 psMetadata *md = psMetadataAlloc(); 15218 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key ", 0)) {15357 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id, iteration) ref detInputExp(det_id, iteration)", 0)) { 15219 15358 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 15220 15359 psFree(md); 15221 15360 return false; 15222 15361 } 15223 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key ", 0)) {15362 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key fkey(det_id, iteration, class_id) ref detStackedImfile(det_id, iteration, class_id)", 0)) { 15224 15363 psError(PS_ERR_UNKNOWN, false, "failed to add item iteration"); 15225 15364 psFree(md); … … 15585 15724 { 15586 15725 psMetadata *md = psMetadataAlloc(); 15587 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key ", 0)) {15726 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id) ref detInputExp(det_id)", 0)) { 15588 15727 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 15589 15728 psFree(md); 15590 15729 return false; 15591 15730 } 15592 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key ", 0)) {15731 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key fkey(det_id, iteration, class_id) ref detNormalizedStatImfile(det_id, iteration, class_id)", 0)) { 15593 15732 psError(PS_ERR_UNKNOWN, false, "failed to add item iteration"); 15594 15733 psFree(md); 15595 15734 return false; 15596 15735 } 15597 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, "Primary Key ", "64")) {15736 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, "Primary Key INDEX(det_id, iteration)", "64")) { 15598 15737 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id"); 15599 15738 psFree(md); … … 16132 16271 { 16133 16272 psMetadata *md = psMetadataAlloc(); 16134 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key ", 0)) {16273 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id, iteration) ref detInputExp(det_id, iteration)", 0)) { 16135 16274 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 16136 16275 psFree(md); 16137 16276 return false; 16138 16277 } 16139 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key ", 0)) {16278 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key fkey(det_id, iteration) ref detNormalizedImfile(det_id, iteration)", 0)) { 16140 16279 psError(PS_ERR_UNKNOWN, false, "failed to add item iteration"); 16141 16280 psFree(md); … … 16626 16765 static void detResidImfileRowFree(detResidImfileRow *object); 16627 16766 16628 detResidImfileRow *detResidImfileRowAlloc(psS64 det_id, psS32 iteration, psS64 exp_id, const char *class_id, const char *uri, const char *recipe, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 b in_stdev, psF64 fringe_0, psF64 fringe_1, psF64 fringe_2, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *path_base, psS16 fault)16767 detResidImfileRow *detResidImfileRowAlloc(psS64 det_id, psS32 iteration, psS64 exp_id, const char *class_id, const char *uri, const char *recipe, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 bg_skewness, psF64 bg_kurtosis, psF64 bin_stdev, psF64 fringe_0, psF64 fringe_1, psF64 fringe_2, psF64 fringe_resid_0, psF64 fringe_resid_1, psF64 fringe_resid_2, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *path_base, psS16 fault) 16629 16768 { 16630 16769 detResidImfileRow *_object; … … 16642 16781 _object->bg_stdev = bg_stdev; 16643 16782 _object->bg_mean_stdev = bg_mean_stdev; 16783 _object->bg_skewness = bg_skewness; 16784 _object->bg_kurtosis = bg_kurtosis; 16644 16785 _object->bin_stdev = bin_stdev; 16645 16786 _object->fringe_0 = fringe_0; 16646 16787 _object->fringe_1 = fringe_1; 16647 16788 _object->fringe_2 = fringe_2; 16789 _object->fringe_resid_0 = fringe_resid_0; 16790 _object->fringe_resid_1 = fringe_resid_1; 16791 _object->fringe_resid_2 = fringe_resid_2; 16648 16792 _object->user_1 = user_1; 16649 16793 _object->user_2 = user_2; … … 16668 16812 { 16669 16813 psMetadata *md = psMetadataAlloc(); 16670 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key ", 0)) {16814 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id, iteration, exp_id) ref detInputExp(det_id, iteration, exp_id)", 0)) { 16671 16815 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 16672 16816 psFree(md); 16673 16817 return false; 16674 16818 } 16675 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key ", 0)) {16819 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key fkey(det_id, exp_id, class_id) ref detProcessedImfile(det_id, exp_id, class_id)", 0)) { 16676 16820 psError(PS_ERR_UNKNOWN, false, "failed to add item iteration"); 16677 16821 psFree(md); 16678 16822 return false; 16679 16823 } 16680 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key ", 64)) {16824 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key fkey(det_id, iteration) ref detNormalizedExp(det_id, iteration)", 64)) { 16681 16825 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 16682 16826 psFree(md); 16683 16827 return false; 16684 16828 } 16685 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, "Primary Key ", "64")) {16829 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, "Primary Key INDEX(det_id, iteration, exp_id)", "64")) { 16686 16830 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id"); 16687 16831 psFree(md); … … 16713 16857 return false; 16714 16858 } 16859 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_skewness", PS_DATA_F64, NULL, 0.0)) { 16860 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_skewness"); 16861 psFree(md); 16862 return false; 16863 } 16864 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_kurtosis", PS_DATA_F64, NULL, 0.0)) { 16865 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_kurtosis"); 16866 psFree(md); 16867 return false; 16868 } 16715 16869 if (!psMetadataAdd(md, PS_LIST_TAIL, "bin_stdev", PS_DATA_F64, NULL, 0.0)) { 16716 16870 psError(PS_ERR_UNKNOWN, false, "failed to add item bin_stdev"); … … 16733 16887 return false; 16734 16888 } 16889 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_0", PS_DATA_F64, NULL, 0.0)) { 16890 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_0"); 16891 psFree(md); 16892 return false; 16893 } 16894 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_1", PS_DATA_F64, NULL, 0.0)) { 16895 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_1"); 16896 psFree(md); 16897 return false; 16898 } 16899 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_2", PS_DATA_F64, NULL, 0.0)) { 16900 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_2"); 16901 psFree(md); 16902 return false; 16903 } 16735 16904 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_1", PS_DATA_F64, NULL, 0.0)) { 16736 16905 psError(PS_ERR_UNKNOWN, false, "failed to add item user_1"); … … 16781 16950 } 16782 16951 16783 bool detResidImfileInsert(psDB * dbh, psS64 det_id, psS32 iteration, psS64 exp_id, const char *class_id, const char *uri, const char *recipe, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 b in_stdev, psF64 fringe_0, psF64 fringe_1, psF64 fringe_2, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *path_base, psS16 fault)16952 bool detResidImfileInsert(psDB * dbh, psS64 det_id, psS32 iteration, psS64 exp_id, const char *class_id, const char *uri, const char *recipe, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 bg_skewness, psF64 bg_kurtosis, psF64 bin_stdev, psF64 fringe_0, psF64 fringe_1, psF64 fringe_2, psF64 fringe_resid_0, psF64 fringe_resid_1, psF64 fringe_resid_2, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *path_base, psS16 fault) 16784 16953 { 16785 16954 psMetadata *md = psMetadataAlloc(); … … 16829 16998 return false; 16830 16999 } 17000 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_skewness", PS_DATA_F64, NULL, bg_skewness)) { 17001 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_skewness"); 17002 psFree(md); 17003 return false; 17004 } 17005 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_kurtosis", PS_DATA_F64, NULL, bg_kurtosis)) { 17006 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_kurtosis"); 17007 psFree(md); 17008 return false; 17009 } 16831 17010 if (!psMetadataAdd(md, PS_LIST_TAIL, "bin_stdev", PS_DATA_F64, NULL, bin_stdev)) { 16832 17011 psError(PS_ERR_UNKNOWN, false, "failed to add item bin_stdev"); … … 16846 17025 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_2", PS_DATA_F64, NULL, fringe_2)) { 16847 17026 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_2"); 17027 psFree(md); 17028 return false; 17029 } 17030 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_0", PS_DATA_F64, NULL, fringe_resid_0)) { 17031 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_0"); 17032 psFree(md); 17033 return false; 17034 } 17035 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_1", PS_DATA_F64, NULL, fringe_resid_1)) { 17036 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_1"); 17037 psFree(md); 17038 return false; 17039 } 17040 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_2", PS_DATA_F64, NULL, fringe_resid_2)) { 17041 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_2"); 16848 17042 psFree(md); 16849 17043 return false; … … 16907 17101 bool detResidImfileInsertObject(psDB *dbh, detResidImfileRow *object) 16908 17102 { 16909 return detResidImfileInsert(dbh, object->det_id, object->iteration, object->exp_id, object->class_id, object->uri, object->recipe, object->bg, object->bg_stdev, object->bg_mean_stdev, object->b in_stdev, object->fringe_0, object->fringe_1, object->fringe_2, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->path_base, object->fault);17103 return detResidImfileInsert(dbh, object->det_id, object->iteration, object->exp_id, object->class_id, object->uri, object->recipe, object->bg, object->bg_stdev, object->bg_mean_stdev, object->bg_skewness, object->bg_kurtosis, object->bin_stdev, object->fringe_0, object->fringe_1, object->fringe_2, object->fringe_resid_0, object->fringe_resid_1, object->fringe_resid_2, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->path_base, object->fault); 16910 17104 } 16911 17105 … … 17025 17219 return false; 17026 17220 } 17221 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_skewness", PS_DATA_F64, NULL, object->bg_skewness)) { 17222 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_skewness"); 17223 psFree(md); 17224 return false; 17225 } 17226 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_kurtosis", PS_DATA_F64, NULL, object->bg_kurtosis)) { 17227 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_kurtosis"); 17228 psFree(md); 17229 return false; 17230 } 17027 17231 if (!psMetadataAdd(md, PS_LIST_TAIL, "bin_stdev", PS_DATA_F64, NULL, object->bin_stdev)) { 17028 17232 psError(PS_ERR_UNKNOWN, false, "failed to add item bin_stdev"); … … 17045 17249 return false; 17046 17250 } 17251 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_0", PS_DATA_F64, NULL, object->fringe_resid_0)) { 17252 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_0"); 17253 psFree(md); 17254 return false; 17255 } 17256 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_1", PS_DATA_F64, NULL, object->fringe_resid_1)) { 17257 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_1"); 17258 psFree(md); 17259 return false; 17260 } 17261 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_2", PS_DATA_F64, NULL, object->fringe_resid_2)) { 17262 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_2"); 17263 psFree(md); 17264 return false; 17265 } 17047 17266 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_1", PS_DATA_F64, NULL, object->user_1)) { 17048 17267 psError(PS_ERR_UNKNOWN, false, "failed to add item user_1"); … … 17134 17353 return false; 17135 17354 } 17355 psF64 bg_skewness = psMetadataLookupF64(&status, md, "bg_skewness"); 17356 if (!status) { 17357 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item bg_skewness"); 17358 return false; 17359 } 17360 psF64 bg_kurtosis = psMetadataLookupF64(&status, md, "bg_kurtosis"); 17361 if (!status) { 17362 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item bg_kurtosis"); 17363 return false; 17364 } 17136 17365 psF64 bin_stdev = psMetadataLookupF64(&status, md, "bin_stdev"); 17137 17366 if (!status) { … … 17154 17383 return false; 17155 17384 } 17385 psF64 fringe_resid_0 = psMetadataLookupF64(&status, md, "fringe_resid_0"); 17386 if (!status) { 17387 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item fringe_resid_0"); 17388 return false; 17389 } 17390 psF64 fringe_resid_1 = psMetadataLookupF64(&status, md, "fringe_resid_1"); 17391 if (!status) { 17392 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item fringe_resid_1"); 17393 return false; 17394 } 17395 psF64 fringe_resid_2 = psMetadataLookupF64(&status, md, "fringe_resid_2"); 17396 if (!status) { 17397 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item fringe_resid_2"); 17398 return false; 17399 } 17156 17400 psF64 user_1 = psMetadataLookupF64(&status, md, "user_1"); 17157 17401 if (!status) { … … 17190 17434 } 17191 17435 17192 return detResidImfileRowAlloc(det_id, iteration, exp_id, class_id, uri, recipe, bg, bg_stdev, bg_mean_stdev, b in_stdev, fringe_0, fringe_1, fringe_2, user_1, user_2, user_3, user_4, user_5, path_base, fault);17436 return detResidImfileRowAlloc(det_id, iteration, exp_id, class_id, uri, recipe, bg, bg_stdev, bg_mean_stdev, bg_skewness, bg_kurtosis, bin_stdev, fringe_0, fringe_1, fringe_2, fringe_resid_0, fringe_resid_1, fringe_resid_2, user_1, user_2, user_3, user_4, user_5, path_base, fault); 17193 17437 } 17194 17438 psArray *detResidImfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) … … 17302 17546 static void detResidExpRowFree(detResidExpRow *object); 17303 17547 17304 detResidExpRow *detResidExpRowAlloc(psS64 det_id, psS32 iteration, psS64 exp_id, const char *recipe, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 b in_stdev, psF64 fringe_0, psF64 fringe_1, psF64 fringe_2, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *path_base, bool accept, psS16 fault)17548 detResidExpRow *detResidExpRowAlloc(psS64 det_id, psS32 iteration, psS64 exp_id, const char *recipe, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 bg_skewness, psF64 bg_kurtosis, psF64 bin_stdev, psF64 fringe_0, psF64 fringe_1, psF64 fringe_2, psF64 fringe_resid_0, psF64 fringe_resid_1, psF64 fringe_resid_2, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *path_base, bool accept, psS16 fault) 17305 17549 { 17306 17550 detResidExpRow *_object; … … 17316 17560 _object->bg_stdev = bg_stdev; 17317 17561 _object->bg_mean_stdev = bg_mean_stdev; 17562 _object->bg_skewness = bg_skewness; 17563 _object->bg_kurtosis = bg_kurtosis; 17318 17564 _object->bin_stdev = bin_stdev; 17319 17565 _object->fringe_0 = fringe_0; 17320 17566 _object->fringe_1 = fringe_1; 17321 17567 _object->fringe_2 = fringe_2; 17568 _object->fringe_resid_0 = fringe_resid_0; 17569 _object->fringe_resid_1 = fringe_resid_1; 17570 _object->fringe_resid_2 = fringe_resid_2; 17322 17571 _object->user_1 = user_1; 17323 17572 _object->user_2 = user_2; … … 17341 17590 { 17342 17591 psMetadata *md = psMetadataAlloc(); 17343 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key ", 0)) {17592 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id, iteration, exp_id) ref detInputExp(det_id, iteration, exp_id)", 0)) { 17344 17593 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 17345 17594 psFree(md); 17346 17595 return false; 17347 17596 } 17348 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key ", 0)) {17597 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key fkey(det_id, iteration, exp_id) ref detResidImfile(det_id, iteration, exp_id)", 0)) { 17349 17598 psError(PS_ERR_UNKNOWN, false, "failed to add item iteration"); 17350 17599 psFree(md); 17351 17600 return false; 17352 17601 } 17353 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key ", 64)) {17602 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key INDEX(det_id, iteration)", 64)) { 17354 17603 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 17355 17604 psFree(md); … … 17376 17625 return false; 17377 17626 } 17627 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_skewness", PS_DATA_F64, NULL, 0.0)) { 17628 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_skewness"); 17629 psFree(md); 17630 return false; 17631 } 17632 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_kurtosis", PS_DATA_F64, NULL, 0.0)) { 17633 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_kurtosis"); 17634 psFree(md); 17635 return false; 17636 } 17378 17637 if (!psMetadataAdd(md, PS_LIST_TAIL, "bin_stdev", PS_DATA_F64, NULL, 0.0)) { 17379 17638 psError(PS_ERR_UNKNOWN, false, "failed to add item bin_stdev"); … … 17396 17655 return false; 17397 17656 } 17657 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_0", PS_DATA_F64, NULL, 0.0)) { 17658 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_0"); 17659 psFree(md); 17660 return false; 17661 } 17662 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_1", PS_DATA_F64, NULL, 0.0)) { 17663 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_1"); 17664 psFree(md); 17665 return false; 17666 } 17667 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_2", PS_DATA_F64, NULL, 0.0)) { 17668 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_2"); 17669 psFree(md); 17670 return false; 17671 } 17398 17672 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_1", PS_DATA_F64, NULL, 0.0)) { 17399 17673 psError(PS_ERR_UNKNOWN, false, "failed to add item user_1"); … … 17449 17723 } 17450 17724 17451 bool detResidExpInsert(psDB * dbh, psS64 det_id, psS32 iteration, psS64 exp_id, const char *recipe, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 b in_stdev, psF64 fringe_0, psF64 fringe_1, psF64 fringe_2, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *path_base, bool accept, psS16 fault)17725 bool detResidExpInsert(psDB * dbh, psS64 det_id, psS32 iteration, psS64 exp_id, const char *recipe, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 bg_skewness, psF64 bg_kurtosis, psF64 bin_stdev, psF64 fringe_0, psF64 fringe_1, psF64 fringe_2, psF64 fringe_resid_0, psF64 fringe_resid_1, psF64 fringe_resid_2, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *path_base, bool accept, psS16 fault) 17452 17726 { 17453 17727 psMetadata *md = psMetadataAlloc(); … … 17487 17761 return false; 17488 17762 } 17763 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_skewness", PS_DATA_F64, NULL, bg_skewness)) { 17764 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_skewness"); 17765 psFree(md); 17766 return false; 17767 } 17768 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_kurtosis", PS_DATA_F64, NULL, bg_kurtosis)) { 17769 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_kurtosis"); 17770 psFree(md); 17771 return false; 17772 } 17489 17773 if (!psMetadataAdd(md, PS_LIST_TAIL, "bin_stdev", PS_DATA_F64, NULL, bin_stdev)) { 17490 17774 psError(PS_ERR_UNKNOWN, false, "failed to add item bin_stdev"); … … 17504 17788 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_2", PS_DATA_F64, NULL, fringe_2)) { 17505 17789 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_2"); 17790 psFree(md); 17791 return false; 17792 } 17793 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_0", PS_DATA_F64, NULL, fringe_resid_0)) { 17794 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_0"); 17795 psFree(md); 17796 return false; 17797 } 17798 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_1", PS_DATA_F64, NULL, fringe_resid_1)) { 17799 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_1"); 17800 psFree(md); 17801 return false; 17802 } 17803 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_2", PS_DATA_F64, NULL, fringe_resid_2)) { 17804 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_2"); 17506 17805 psFree(md); 17507 17806 return false; … … 17570 17869 bool detResidExpInsertObject(psDB *dbh, detResidExpRow *object) 17571 17870 { 17572 return detResidExpInsert(dbh, object->det_id, object->iteration, object->exp_id, object->recipe, object->bg, object->bg_stdev, object->bg_mean_stdev, object->b in_stdev, object->fringe_0, object->fringe_1, object->fringe_2, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->path_base, object->accept, object->fault);17871 return detResidExpInsert(dbh, object->det_id, object->iteration, object->exp_id, object->recipe, object->bg, object->bg_stdev, object->bg_mean_stdev, object->bg_skewness, object->bg_kurtosis, object->bin_stdev, object->fringe_0, object->fringe_1, object->fringe_2, object->fringe_resid_0, object->fringe_resid_1, object->fringe_resid_2, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->path_base, object->accept, object->fault); 17573 17872 } 17574 17873 … … 17678 17977 return false; 17679 17978 } 17979 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_skewness", PS_DATA_F64, NULL, object->bg_skewness)) { 17980 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_skewness"); 17981 psFree(md); 17982 return false; 17983 } 17984 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_kurtosis", PS_DATA_F64, NULL, object->bg_kurtosis)) { 17985 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_kurtosis"); 17986 psFree(md); 17987 return false; 17988 } 17680 17989 if (!psMetadataAdd(md, PS_LIST_TAIL, "bin_stdev", PS_DATA_F64, NULL, object->bin_stdev)) { 17681 17990 psError(PS_ERR_UNKNOWN, false, "failed to add item bin_stdev"); … … 17698 18007 return false; 17699 18008 } 18009 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_0", PS_DATA_F64, NULL, object->fringe_resid_0)) { 18010 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_0"); 18011 psFree(md); 18012 return false; 18013 } 18014 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_1", PS_DATA_F64, NULL, object->fringe_resid_1)) { 18015 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_1"); 18016 psFree(md); 18017 return false; 18018 } 18019 if (!psMetadataAdd(md, PS_LIST_TAIL, "fringe_resid_2", PS_DATA_F64, NULL, object->fringe_resid_2)) { 18020 psError(PS_ERR_UNKNOWN, false, "failed to add item fringe_resid_2"); 18021 psFree(md); 18022 return false; 18023 } 17700 18024 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_1", PS_DATA_F64, NULL, object->user_1)) { 17701 18025 psError(PS_ERR_UNKNOWN, false, "failed to add item user_1"); … … 17782 18106 return false; 17783 18107 } 18108 psF64 bg_skewness = psMetadataLookupF64(&status, md, "bg_skewness"); 18109 if (!status) { 18110 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item bg_skewness"); 18111 return false; 18112 } 18113 psF64 bg_kurtosis = psMetadataLookupF64(&status, md, "bg_kurtosis"); 18114 if (!status) { 18115 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item bg_kurtosis"); 18116 return false; 18117 } 17784 18118 psF64 bin_stdev = psMetadataLookupF64(&status, md, "bin_stdev"); 17785 18119 if (!status) { … … 17802 18136 return false; 17803 18137 } 18138 psF64 fringe_resid_0 = psMetadataLookupF64(&status, md, "fringe_resid_0"); 18139 if (!status) { 18140 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item fringe_resid_0"); 18141 return false; 18142 } 18143 psF64 fringe_resid_1 = psMetadataLookupF64(&status, md, "fringe_resid_1"); 18144 if (!status) { 18145 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item fringe_resid_1"); 18146 return false; 18147 } 18148 psF64 fringe_resid_2 = psMetadataLookupF64(&status, md, "fringe_resid_2"); 18149 if (!status) { 18150 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item fringe_resid_2"); 18151 return false; 18152 } 17804 18153 psF64 user_1 = psMetadataLookupF64(&status, md, "user_1"); 17805 18154 if (!status) { … … 17843 18192 } 17844 18193 17845 return detResidExpRowAlloc(det_id, iteration, exp_id, recipe, bg, bg_stdev, bg_mean_stdev, b in_stdev, fringe_0, fringe_1, fringe_2, user_1, user_2, user_3, user_4, user_5, path_base, accept, fault);18194 return detResidExpRowAlloc(det_id, iteration, exp_id, recipe, bg, bg_stdev, bg_mean_stdev, bg_skewness, bg_kurtosis, bin_stdev, fringe_0, fringe_1, fringe_2, fringe_resid_0, fringe_resid_1, fringe_resid_2, user_1, user_2, user_3, user_4, user_5, path_base, accept, fault); 17846 18195 } 17847 18196 psArray *detResidExpSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) … … 17980 18329 { 17981 18330 psMetadata *md = psMetadataAlloc(); 17982 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key ", 0)) {18331 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id, iteration) ref detInputExp(det_id, iteration)", 0)) { 17983 18332 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 17984 18333 psFree(md); 17985 18334 return false; 17986 18335 } 17987 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key ", 0)) {18336 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key fkey(det_id, iteration) ref detResidExp(det_id, iteration)", 0)) { 17988 18337 psError(PS_ERR_UNKNOWN, false, "failed to add item iteration"); 17989 18338 psFree(md); … … 18352 18701 return true; 18353 18702 } 18703 static void detRegisteredImfileRowFree(detRegisteredImfileRow *object); 18704 18705 detRegisteredImfileRow *detRegisteredImfileRowAlloc(psS64 det_id, psS32 iteration, const char *class_id, const char *uri, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *path_base, psS16 fault) 18706 { 18707 detRegisteredImfileRow *_object; 18708 18709 _object = psAlloc(sizeof(detRegisteredImfileRow)); 18710 psMemSetDeallocator(_object, (psFreeFunc)detRegisteredImfileRowFree); 18711 18712 _object->det_id = det_id; 18713 _object->iteration = iteration; 18714 _object->class_id = psStringCopy(class_id); 18715 _object->uri = psStringCopy(uri); 18716 _object->bg = bg; 18717 _object->bg_stdev = bg_stdev; 18718 _object->bg_mean_stdev = bg_mean_stdev; 18719 _object->user_1 = user_1; 18720 _object->user_2 = user_2; 18721 _object->user_3 = user_3; 18722 _object->user_4 = user_4; 18723 _object->user_5 = user_5; 18724 _object->path_base = psStringCopy(path_base); 18725 _object->fault = fault; 18726 18727 return _object; 18728 } 18729 18730 static void detRegisteredImfileRowFree(detRegisteredImfileRow *object) 18731 { 18732 psFree(object->class_id); 18733 psFree(object->uri); 18734 psFree(object->path_base); 18735 } 18736 18737 bool detRegisteredImfileCreateTable(psDB *dbh) 18738 { 18739 psMetadata *md = psMetadataAlloc(); 18740 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id, iteration) ref detRun(det_id, iteration)", 0)) { 18741 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 18742 psFree(md); 18743 return false; 18744 } 18745 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, "Primary Key", 0)) { 18746 psError(PS_ERR_UNKNOWN, false, "failed to add item iteration"); 18747 psFree(md); 18748 return false; 18749 } 18750 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, "Primary Key", "64")) { 18751 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id"); 18752 psFree(md); 18753 return false; 18754 } 18755 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, "255")) { 18756 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 18757 psFree(md); 18758 return false; 18759 } 18760 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg", PS_DATA_F64, NULL, 0.0)) { 18761 psError(PS_ERR_UNKNOWN, false, "failed to add item bg"); 18762 psFree(md); 18763 return false; 18764 } 18765 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_stdev", PS_DATA_F64, NULL, 0.0)) { 18766 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_stdev"); 18767 psFree(md); 18768 return false; 18769 } 18770 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_mean_stdev", PS_DATA_F64, NULL, 0.0)) { 18771 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_mean_stdev"); 18772 psFree(md); 18773 return false; 18774 } 18775 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_1", PS_DATA_F64, NULL, 0.0)) { 18776 psError(PS_ERR_UNKNOWN, false, "failed to add item user_1"); 18777 psFree(md); 18778 return false; 18779 } 18780 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_2", PS_DATA_F64, NULL, 0.0)) { 18781 psError(PS_ERR_UNKNOWN, false, "failed to add item user_2"); 18782 psFree(md); 18783 return false; 18784 } 18785 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_3", PS_DATA_F64, NULL, 0.0)) { 18786 psError(PS_ERR_UNKNOWN, false, "failed to add item user_3"); 18787 psFree(md); 18788 return false; 18789 } 18790 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_4", PS_DATA_F64, NULL, 0.0)) { 18791 psError(PS_ERR_UNKNOWN, false, "failed to add item user_4"); 18792 psFree(md); 18793 return false; 18794 } 18795 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_5", PS_DATA_F64, NULL, 0.0)) { 18796 psError(PS_ERR_UNKNOWN, false, "failed to add item user_5"); 18797 psFree(md); 18798 return false; 18799 } 18800 if (!psMetadataAdd(md, PS_LIST_TAIL, "path_base", PS_DATA_STRING, NULL, "255")) { 18801 psError(PS_ERR_UNKNOWN, false, "failed to add item path_base"); 18802 psFree(md); 18803 return false; 18804 } 18805 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, "Key NOT NULL", 0)) { 18806 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 18807 psFree(md); 18808 return false; 18809 } 18810 18811 bool status = psDBCreateTable(dbh, DETREGISTEREDIMFILE_TABLE_NAME, md); 18812 18813 psFree(md); 18814 18815 return status; 18816 } 18817 18818 bool detRegisteredImfileDropTable(psDB *dbh) 18819 { 18820 return psDBDropTable(dbh, DETREGISTEREDIMFILE_TABLE_NAME); 18821 } 18822 18823 bool detRegisteredImfileInsert(psDB * dbh, psS64 det_id, psS32 iteration, const char *class_id, const char *uri, psF64 bg, psF64 bg_stdev, psF64 bg_mean_stdev, psF64 user_1, psF64 user_2, psF64 user_3, psF64 user_4, psF64 user_5, const char *path_base, psS16 fault) 18824 { 18825 psMetadata *md = psMetadataAlloc(); 18826 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, NULL, det_id)) { 18827 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 18828 psFree(md); 18829 return false; 18830 } 18831 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, NULL, iteration)) { 18832 psError(PS_ERR_UNKNOWN, false, "failed to add item iteration"); 18833 psFree(md); 18834 return false; 18835 } 18836 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, NULL, class_id)) { 18837 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id"); 18838 psFree(md); 18839 return false; 18840 } 18841 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, uri)) { 18842 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 18843 psFree(md); 18844 return false; 18845 } 18846 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg", PS_DATA_F64, NULL, bg)) { 18847 psError(PS_ERR_UNKNOWN, false, "failed to add item bg"); 18848 psFree(md); 18849 return false; 18850 } 18851 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_stdev", PS_DATA_F64, NULL, bg_stdev)) { 18852 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_stdev"); 18853 psFree(md); 18854 return false; 18855 } 18856 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_mean_stdev", PS_DATA_F64, NULL, bg_mean_stdev)) { 18857 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_mean_stdev"); 18858 psFree(md); 18859 return false; 18860 } 18861 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_1", PS_DATA_F64, NULL, user_1)) { 18862 psError(PS_ERR_UNKNOWN, false, "failed to add item user_1"); 18863 psFree(md); 18864 return false; 18865 } 18866 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_2", PS_DATA_F64, NULL, user_2)) { 18867 psError(PS_ERR_UNKNOWN, false, "failed to add item user_2"); 18868 psFree(md); 18869 return false; 18870 } 18871 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_3", PS_DATA_F64, NULL, user_3)) { 18872 psError(PS_ERR_UNKNOWN, false, "failed to add item user_3"); 18873 psFree(md); 18874 return false; 18875 } 18876 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_4", PS_DATA_F64, NULL, user_4)) { 18877 psError(PS_ERR_UNKNOWN, false, "failed to add item user_4"); 18878 psFree(md); 18879 return false; 18880 } 18881 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_5", PS_DATA_F64, NULL, user_5)) { 18882 psError(PS_ERR_UNKNOWN, false, "failed to add item user_5"); 18883 psFree(md); 18884 return false; 18885 } 18886 if (!psMetadataAdd(md, PS_LIST_TAIL, "path_base", PS_DATA_STRING, NULL, path_base)) { 18887 psError(PS_ERR_UNKNOWN, false, "failed to add item path_base"); 18888 psFree(md); 18889 return false; 18890 } 18891 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, NULL, fault)) { 18892 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 18893 psFree(md); 18894 return false; 18895 } 18896 18897 bool status = psDBInsertOneRow(dbh, DETREGISTEREDIMFILE_TABLE_NAME, md); 18898 psFree(md); 18899 18900 return status; 18901 } 18902 18903 long long detRegisteredImfileDelete(psDB *dbh, const psMetadata *where, unsigned long long limit) 18904 { 18905 long long deleted = 0; 18906 18907 long long count = psDBDeleteRows(dbh, DETREGISTEREDIMFILE_TABLE_NAME, where, limit); 18908 if (count < 0) { 18909 psError(PS_ERR_UNKNOWN, true, "failed to delete row from detRegisteredImfile"); 18910 return count; 18911 18912 deleted += count; 18913 } 18914 18915 return deleted; 18916 } 18917 bool detRegisteredImfileInsertObject(psDB *dbh, detRegisteredImfileRow *object) 18918 { 18919 return detRegisteredImfileInsert(dbh, object->det_id, object->iteration, object->class_id, object->uri, object->bg, object->bg_stdev, object->bg_mean_stdev, object->user_1, object->user_2, object->user_3, object->user_4, object->user_5, object->path_base, object->fault); 18920 } 18921 18922 bool detRegisteredImfileInsertObjects(psDB *dbh, psArray *objects) 18923 { 18924 for (long i = 0; i < psArrayLength(objects); i++) { 18925 if (!detRegisteredImfileInsertObject(dbh, objects->data[i])) { 18926 return false; 18927 } 18928 } 18929 18930 return true; 18931 } 18932 18933 bool detRegisteredImfileInsertFits(psDB *dbh, const psFits *fits) 18934 { 18935 psArray *rowSet; 18936 18937 // move to (the first?) extension named DETREGISTEREDIMFILE_TABLE_NAME 18938 if (!psFitsMoveExtName(fits, DETREGISTEREDIMFILE_TABLE_NAME)) { 18939 psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", DETREGISTEREDIMFILE_TABLE_NAME); 18940 return false; 18941 } 18942 18943 // check HDU type 18944 if (psFitsGetExtType(fits) != PS_FITS_TYPE_BINARY_TABLE) { 18945 psError(PS_ERR_UNKNOWN, true, "FITS HDU type is not PS_FITS_TYPE_BINARY_TABLE"); 18946 return false; 18947 } 18948 18949 // read fits table 18950 rowSet = psFitsReadTable(fits); 18951 if (!rowSet) { 18952 psError(PS_ERR_UNKNOWN, true, "FITS read error or FITS table is empty"); 18953 psFree(rowSet); 18954 return false; 18955 } 18956 18957 if (!psDBInsertRows(dbh, DETREGISTEREDIMFILE_TABLE_NAME, rowSet)) { 18958 psError(PS_ERR_UNKNOWN, false, "databse insert failed"); 18959 psFree(rowSet); 18960 return false; 18961 } 18962 18963 psFree(rowSet); 18964 18965 return true; 18966 } 18967 18968 bool detRegisteredImfileSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit) 18969 { 18970 psArray *rowSet; 18971 18972 rowSet = psDBSelectRows(dbh, DETREGISTEREDIMFILE_TABLE_NAME, where, limit); 18973 if (!rowSet) { 18974 return false; 18975 } 18976 18977 // output to fits 18978 if (!psFitsWriteTable(fits, NULL, rowSet, DETREGISTEREDIMFILE_TABLE_NAME)) { 18979 psError(PS_ERR_UNKNOWN, false, "FITS table write failed"); 18980 psFree(rowSet); 18981 return false; 18982 } 18983 18984 psFree(rowSet); 18985 18986 return true; 18987 } 18988 18989 psMetadata *detRegisteredImfileMetadataFromObject(const detRegisteredImfileRow *object) 18990 { 18991 psMetadata *md = psMetadataAlloc(); 18992 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, NULL, object->det_id)) { 18993 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 18994 psFree(md); 18995 return false; 18996 } 18997 if (!psMetadataAdd(md, PS_LIST_TAIL, "iteration", PS_DATA_S32, NULL, object->iteration)) { 18998 psError(PS_ERR_UNKNOWN, false, "failed to add item iteration"); 18999 psFree(md); 19000 return false; 19001 } 19002 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, NULL, object->class_id)) { 19003 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id"); 19004 psFree(md); 19005 return false; 19006 } 19007 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, object->uri)) { 19008 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 19009 psFree(md); 19010 return false; 19011 } 19012 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg", PS_DATA_F64, NULL, object->bg)) { 19013 psError(PS_ERR_UNKNOWN, false, "failed to add item bg"); 19014 psFree(md); 19015 return false; 19016 } 19017 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_stdev", PS_DATA_F64, NULL, object->bg_stdev)) { 19018 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_stdev"); 19019 psFree(md); 19020 return false; 19021 } 19022 if (!psMetadataAdd(md, PS_LIST_TAIL, "bg_mean_stdev", PS_DATA_F64, NULL, object->bg_mean_stdev)) { 19023 psError(PS_ERR_UNKNOWN, false, "failed to add item bg_mean_stdev"); 19024 psFree(md); 19025 return false; 19026 } 19027 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_1", PS_DATA_F64, NULL, object->user_1)) { 19028 psError(PS_ERR_UNKNOWN, false, "failed to add item user_1"); 19029 psFree(md); 19030 return false; 19031 } 19032 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_2", PS_DATA_F64, NULL, object->user_2)) { 19033 psError(PS_ERR_UNKNOWN, false, "failed to add item user_2"); 19034 psFree(md); 19035 return false; 19036 } 19037 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_3", PS_DATA_F64, NULL, object->user_3)) { 19038 psError(PS_ERR_UNKNOWN, false, "failed to add item user_3"); 19039 psFree(md); 19040 return false; 19041 } 19042 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_4", PS_DATA_F64, NULL, object->user_4)) { 19043 psError(PS_ERR_UNKNOWN, false, "failed to add item user_4"); 19044 psFree(md); 19045 return false; 19046 } 19047 if (!psMetadataAdd(md, PS_LIST_TAIL, "user_5", PS_DATA_F64, NULL, object->user_5)) { 19048 psError(PS_ERR_UNKNOWN, false, "failed to add item user_5"); 19049 psFree(md); 19050 return false; 19051 } 19052 if (!psMetadataAdd(md, PS_LIST_TAIL, "path_base", PS_DATA_STRING, NULL, object->path_base)) { 19053 psError(PS_ERR_UNKNOWN, false, "failed to add item path_base"); 19054 psFree(md); 19055 return false; 19056 } 19057 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, NULL, object->fault)) { 19058 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 19059 psFree(md); 19060 return false; 19061 } 19062 19063 19064 return md; 19065 } 19066 19067 detRegisteredImfileRow *detRegisteredImfileObjectFromMetadata(psMetadata *md) 19068 { 19069 19070 bool status = false; 19071 psS64 det_id = psMetadataLookupS64(&status, md, "det_id"); 19072 if (!status) { 19073 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item det_id"); 19074 return false; 19075 } 19076 psS32 iteration = psMetadataLookupS32(&status, md, "iteration"); 19077 if (!status) { 19078 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item iteration"); 19079 return false; 19080 } 19081 char* class_id = psMetadataLookupPtr(&status, md, "class_id"); 19082 if (!status) { 19083 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item class_id"); 19084 return false; 19085 } 19086 char* uri = psMetadataLookupPtr(&status, md, "uri"); 19087 if (!status) { 19088 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item uri"); 19089 return false; 19090 } 19091 psF64 bg = psMetadataLookupF64(&status, md, "bg"); 19092 if (!status) { 19093 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item bg"); 19094 return false; 19095 } 19096 psF64 bg_stdev = psMetadataLookupF64(&status, md, "bg_stdev"); 19097 if (!status) { 19098 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item bg_stdev"); 19099 return false; 19100 } 19101 psF64 bg_mean_stdev = psMetadataLookupF64(&status, md, "bg_mean_stdev"); 19102 if (!status) { 19103 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item bg_mean_stdev"); 19104 return false; 19105 } 19106 psF64 user_1 = psMetadataLookupF64(&status, md, "user_1"); 19107 if (!status) { 19108 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item user_1"); 19109 return false; 19110 } 19111 psF64 user_2 = psMetadataLookupF64(&status, md, "user_2"); 19112 if (!status) { 19113 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item user_2"); 19114 return false; 19115 } 19116 psF64 user_3 = psMetadataLookupF64(&status, md, "user_3"); 19117 if (!status) { 19118 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item user_3"); 19119 return false; 19120 } 19121 psF64 user_4 = psMetadataLookupF64(&status, md, "user_4"); 19122 if (!status) { 19123 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item user_4"); 19124 return false; 19125 } 19126 psF64 user_5 = psMetadataLookupF64(&status, md, "user_5"); 19127 if (!status) { 19128 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item user_5"); 19129 return false; 19130 } 19131 char* path_base = psMetadataLookupPtr(&status, md, "path_base"); 19132 if (!status) { 19133 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item path_base"); 19134 return false; 19135 } 19136 psS16 fault = psMetadataLookupS16(&status, md, "fault"); 19137 if (!status) { 19138 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item fault"); 19139 return false; 19140 } 19141 19142 return detRegisteredImfileRowAlloc(det_id, iteration, class_id, uri, bg, bg_stdev, bg_mean_stdev, user_1, user_2, user_3, user_4, user_5, path_base, fault); 19143 } 19144 psArray *detRegisteredImfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) 19145 { 19146 psArray *rowSet; 19147 psArray *returnSet; 19148 psU64 i; 19149 19150 rowSet = psDBSelectRows(dbh, DETREGISTEREDIMFILE_TABLE_NAME, where, limit); 19151 if (!rowSet) { 19152 return NULL; 19153 } 19154 19155 // convert psMetadata rows to row objects 19156 19157 returnSet = psArrayAllocEmpty(rowSet->n); 19158 19159 for (i = 0; i < rowSet->n; i++) { 19160 detRegisteredImfileRow *object = detRegisteredImfileObjectFromMetadata(rowSet->data[i]); 19161 psArrayAdd(returnSet, 0, object); 19162 psFree(object); 19163 } 19164 19165 psFree(rowSet); 19166 19167 return returnSet; 19168 } 19169 bool detRegisteredImfileDeleteObject(psDB *dbh, const detRegisteredImfileRow *object) 19170 { 19171 psMetadata *where = detRegisteredImfileMetadataFromObject(object); 19172 long long count = psDBDeleteRows(dbh, DETREGISTEREDIMFILE_TABLE_NAME, where, 0); 19173 psFree(where); 19174 if (count < 0) { 19175 psError(PS_ERR_UNKNOWN, true, "failed to delete row from detRegisteredImfile"); 19176 return false; 19177 } 19178 if (count > 1) { 19179 // XXX should this be a psAbort() instead? It is possible that 19180 // having an object match multiple rows was by design. 19181 psError(PS_ERR_UNKNOWN, true, "detRegisteredImfileRow object matched more then one row. Check your database schema"); 19182 return false; 19183 } 19184 19185 return true; 19186 } 19187 long long detRegisteredImfileDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit) 19188 { 19189 long long deleted = 0; 19190 19191 for (long long i = 0; i < objects->n; i++) { 19192 detRegisteredImfileRow *object = objects->data[i]; 19193 psMetadata *where = detRegisteredImfileMetadataFromObject(object); 19194 long long count = psDBDeleteRows(dbh, DETREGISTEREDIMFILE_TABLE_NAME, where, limit); 19195 psFree(where); 19196 if (count < 0) { 19197 psError(PS_ERR_UNKNOWN, true, "failed to delete row from detRegisteredImfile"); 19198 return count; 19199 } 19200 19201 deleted += count; 19202 } 19203 19204 return deleted; 19205 } 19206 bool detRegisteredImfilePrintObjects(FILE *stream, psArray *objects, bool mdcf) 19207 { 19208 PS_ASSERT_PTR_NON_NULL(objects, false); 19209 19210 psMetadata *output = psMetadataAlloc(); 19211 for (long i = 0; i < psArrayLength(objects); i++) { 19212 psMetadata *md = detRegisteredImfileMetadataFromObject(objects->data[i]); 19213 if (!psMetadataAddMetadata( 19214 output, 19215 PS_LIST_TAIL, 19216 DETREGISTEREDIMFILE_TABLE_NAME, 19217 PS_META_DUPLICATE_OK, 19218 NULL, 19219 md 19220 )) { 19221 psError(PS_ERR_UNKNOWN, false, "failed to add metadata"); 19222 psFree(md); 19223 psFree(output); 19224 return false; 19225 } 19226 psFree(md); 19227 } 19228 19229 if (!ippdbPrintMetadataRaw(stream, output, mdcf)) { 19230 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 19231 psFree(output); 19232 } 19233 psFree(output); 19234 19235 return true; 19236 } 19237 bool detRegisteredImfilePrintObject(FILE *stream, detRegisteredImfileRow *object, bool mdcf) 19238 { 19239 PS_ASSERT_PTR_NON_NULL(object, false); 19240 19241 psMetadata *md = detRegisteredImfileMetadataFromObject(object); 19242 19243 if (!ippdbPrintMetadataRaw(stream, md, mdcf)) { 19244 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 19245 psFree(md); 19246 } 19247 19248 psFree(md); 19249 19250 return true; 19251 } 19252 static void detCorrectedExpRowFree(detCorrectedExpRow *object); 19253 19254 detCorrectedExpRow *detCorrectedExpRowAlloc(psS64 det_id, psS64 exp_id, const char *uri, psS64 corr_id, const char *corr_type, const char *recipe, const char *path_base, psS16 fault) 19255 { 19256 detCorrectedExpRow *_object; 19257 19258 _object = psAlloc(sizeof(detCorrectedExpRow)); 19259 psMemSetDeallocator(_object, (psFreeFunc)detCorrectedExpRowFree); 19260 19261 _object->det_id = det_id; 19262 _object->exp_id = exp_id; 19263 _object->uri = psStringCopy(uri); 19264 _object->corr_id = corr_id; 19265 _object->corr_type = psStringCopy(corr_type); 19266 _object->recipe = psStringCopy(recipe); 19267 _object->path_base = psStringCopy(path_base); 19268 _object->fault = fault; 19269 19270 return _object; 19271 } 19272 19273 static void detCorrectedExpRowFree(detCorrectedExpRow *object) 19274 { 19275 psFree(object->uri); 19276 psFree(object->corr_type); 19277 psFree(object->recipe); 19278 psFree(object->path_base); 19279 } 19280 19281 bool detCorrectedExpCreateTable(psDB *dbh) 19282 { 19283 psMetadata *md = psMetadataAlloc(); 19284 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id, exp_id) ref detInputExp(det_id, exp_id)", 0)) { 19285 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 19286 psFree(md); 19287 return false; 19288 } 19289 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key fkey(exp_id, class_id) ref rawImfile(exp_id, class_id)", 64)) { 19290 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 19291 psFree(md); 19292 return false; 19293 } 19294 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, "INDEX(det_id, exp_id)", "255")) { 19295 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 19296 psFree(md); 19297 return false; 19298 } 19299 if (!psMetadataAdd(md, PS_LIST_TAIL, "corr_id", PS_DATA_S64, NULL, 0)) { 19300 psError(PS_ERR_UNKNOWN, false, "failed to add item corr_id"); 19301 psFree(md); 19302 return false; 19303 } 19304 if (!psMetadataAdd(md, PS_LIST_TAIL, "corr_type", PS_DATA_STRING, NULL, "64")) { 19305 psError(PS_ERR_UNKNOWN, false, "failed to add item corr_type"); 19306 psFree(md); 19307 return false; 19308 } 19309 if (!psMetadataAdd(md, PS_LIST_TAIL, "recipe", PS_DATA_STRING, NULL, "64")) { 19310 psError(PS_ERR_UNKNOWN, false, "failed to add item recipe"); 19311 psFree(md); 19312 return false; 19313 } 19314 if (!psMetadataAdd(md, PS_LIST_TAIL, "path_base", PS_DATA_STRING, NULL, "255")) { 19315 psError(PS_ERR_UNKNOWN, false, "failed to add item path_base"); 19316 psFree(md); 19317 return false; 19318 } 19319 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, "Key NOT NULL", 0)) { 19320 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 19321 psFree(md); 19322 return false; 19323 } 19324 19325 bool status = psDBCreateTable(dbh, DETCORRECTEDEXP_TABLE_NAME, md); 19326 19327 psFree(md); 19328 19329 return status; 19330 } 19331 19332 bool detCorrectedExpDropTable(psDB *dbh) 19333 { 19334 return psDBDropTable(dbh, DETCORRECTEDEXP_TABLE_NAME); 19335 } 19336 19337 bool detCorrectedExpInsert(psDB * dbh, psS64 det_id, psS64 exp_id, const char *uri, psS64 corr_id, const char *corr_type, const char *recipe, const char *path_base, psS16 fault) 19338 { 19339 psMetadata *md = psMetadataAlloc(); 19340 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, NULL, det_id)) { 19341 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 19342 psFree(md); 19343 return false; 19344 } 19345 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, NULL, exp_id)) { 19346 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 19347 psFree(md); 19348 return false; 19349 } 19350 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, uri)) { 19351 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 19352 psFree(md); 19353 return false; 19354 } 19355 if (!psMetadataAdd(md, PS_LIST_TAIL, "corr_id", PS_DATA_S64, NULL, corr_id)) { 19356 psError(PS_ERR_UNKNOWN, false, "failed to add item corr_id"); 19357 psFree(md); 19358 return false; 19359 } 19360 if (!psMetadataAdd(md, PS_LIST_TAIL, "corr_type", PS_DATA_STRING, NULL, corr_type)) { 19361 psError(PS_ERR_UNKNOWN, false, "failed to add item corr_type"); 19362 psFree(md); 19363 return false; 19364 } 19365 if (!psMetadataAdd(md, PS_LIST_TAIL, "recipe", PS_DATA_STRING, NULL, recipe)) { 19366 psError(PS_ERR_UNKNOWN, false, "failed to add item recipe"); 19367 psFree(md); 19368 return false; 19369 } 19370 if (!psMetadataAdd(md, PS_LIST_TAIL, "path_base", PS_DATA_STRING, NULL, path_base)) { 19371 psError(PS_ERR_UNKNOWN, false, "failed to add item path_base"); 19372 psFree(md); 19373 return false; 19374 } 19375 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, NULL, fault)) { 19376 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 19377 psFree(md); 19378 return false; 19379 } 19380 19381 bool status = psDBInsertOneRow(dbh, DETCORRECTEDEXP_TABLE_NAME, md); 19382 psFree(md); 19383 19384 return status; 19385 } 19386 19387 long long detCorrectedExpDelete(psDB *dbh, const psMetadata *where, unsigned long long limit) 19388 { 19389 long long deleted = 0; 19390 19391 long long count = psDBDeleteRows(dbh, DETCORRECTEDEXP_TABLE_NAME, where, limit); 19392 if (count < 0) { 19393 psError(PS_ERR_UNKNOWN, true, "failed to delete row from detCorrectedExp"); 19394 return count; 19395 19396 deleted += count; 19397 } 19398 19399 return deleted; 19400 } 19401 bool detCorrectedExpInsertObject(psDB *dbh, detCorrectedExpRow *object) 19402 { 19403 return detCorrectedExpInsert(dbh, object->det_id, object->exp_id, object->uri, object->corr_id, object->corr_type, object->recipe, object->path_base, object->fault); 19404 } 19405 19406 bool detCorrectedExpInsertObjects(psDB *dbh, psArray *objects) 19407 { 19408 for (long i = 0; i < psArrayLength(objects); i++) { 19409 if (!detCorrectedExpInsertObject(dbh, objects->data[i])) { 19410 return false; 19411 } 19412 } 19413 19414 return true; 19415 } 19416 19417 bool detCorrectedExpInsertFits(psDB *dbh, const psFits *fits) 19418 { 19419 psArray *rowSet; 19420 19421 // move to (the first?) extension named DETCORRECTEDEXP_TABLE_NAME 19422 if (!psFitsMoveExtName(fits, DETCORRECTEDEXP_TABLE_NAME)) { 19423 psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", DETCORRECTEDEXP_TABLE_NAME); 19424 return false; 19425 } 19426 19427 // check HDU type 19428 if (psFitsGetExtType(fits) != PS_FITS_TYPE_BINARY_TABLE) { 19429 psError(PS_ERR_UNKNOWN, true, "FITS HDU type is not PS_FITS_TYPE_BINARY_TABLE"); 19430 return false; 19431 } 19432 19433 // read fits table 19434 rowSet = psFitsReadTable(fits); 19435 if (!rowSet) { 19436 psError(PS_ERR_UNKNOWN, true, "FITS read error or FITS table is empty"); 19437 psFree(rowSet); 19438 return false; 19439 } 19440 19441 if (!psDBInsertRows(dbh, DETCORRECTEDEXP_TABLE_NAME, rowSet)) { 19442 psError(PS_ERR_UNKNOWN, false, "databse insert failed"); 19443 psFree(rowSet); 19444 return false; 19445 } 19446 19447 psFree(rowSet); 19448 19449 return true; 19450 } 19451 19452 bool detCorrectedExpSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit) 19453 { 19454 psArray *rowSet; 19455 19456 rowSet = psDBSelectRows(dbh, DETCORRECTEDEXP_TABLE_NAME, where, limit); 19457 if (!rowSet) { 19458 return false; 19459 } 19460 19461 // output to fits 19462 if (!psFitsWriteTable(fits, NULL, rowSet, DETCORRECTEDEXP_TABLE_NAME)) { 19463 psError(PS_ERR_UNKNOWN, false, "FITS table write failed"); 19464 psFree(rowSet); 19465 return false; 19466 } 19467 19468 psFree(rowSet); 19469 19470 return true; 19471 } 19472 19473 psMetadata *detCorrectedExpMetadataFromObject(const detCorrectedExpRow *object) 19474 { 19475 psMetadata *md = psMetadataAlloc(); 19476 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, NULL, object->det_id)) { 19477 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 19478 psFree(md); 19479 return false; 19480 } 19481 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, NULL, object->exp_id)) { 19482 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 19483 psFree(md); 19484 return false; 19485 } 19486 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, object->uri)) { 19487 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 19488 psFree(md); 19489 return false; 19490 } 19491 if (!psMetadataAdd(md, PS_LIST_TAIL, "corr_id", PS_DATA_S64, NULL, object->corr_id)) { 19492 psError(PS_ERR_UNKNOWN, false, "failed to add item corr_id"); 19493 psFree(md); 19494 return false; 19495 } 19496 if (!psMetadataAdd(md, PS_LIST_TAIL, "corr_type", PS_DATA_STRING, NULL, object->corr_type)) { 19497 psError(PS_ERR_UNKNOWN, false, "failed to add item corr_type"); 19498 psFree(md); 19499 return false; 19500 } 19501 if (!psMetadataAdd(md, PS_LIST_TAIL, "recipe", PS_DATA_STRING, NULL, object->recipe)) { 19502 psError(PS_ERR_UNKNOWN, false, "failed to add item recipe"); 19503 psFree(md); 19504 return false; 19505 } 19506 if (!psMetadataAdd(md, PS_LIST_TAIL, "path_base", PS_DATA_STRING, NULL, object->path_base)) { 19507 psError(PS_ERR_UNKNOWN, false, "failed to add item path_base"); 19508 psFree(md); 19509 return false; 19510 } 19511 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, NULL, object->fault)) { 19512 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 19513 psFree(md); 19514 return false; 19515 } 19516 19517 19518 return md; 19519 } 19520 19521 detCorrectedExpRow *detCorrectedExpObjectFromMetadata(psMetadata *md) 19522 { 19523 19524 bool status = false; 19525 psS64 det_id = psMetadataLookupS64(&status, md, "det_id"); 19526 if (!status) { 19527 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item det_id"); 19528 return false; 19529 } 19530 psS64 exp_id = psMetadataLookupS64(&status, md, "exp_id"); 19531 if (!status) { 19532 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item exp_id"); 19533 return false; 19534 } 19535 char* uri = psMetadataLookupPtr(&status, md, "uri"); 19536 if (!status) { 19537 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item uri"); 19538 return false; 19539 } 19540 psS64 corr_id = psMetadataLookupS64(&status, md, "corr_id"); 19541 if (!status) { 19542 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item corr_id"); 19543 return false; 19544 } 19545 char* corr_type = psMetadataLookupPtr(&status, md, "corr_type"); 19546 if (!status) { 19547 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item corr_type"); 19548 return false; 19549 } 19550 char* recipe = psMetadataLookupPtr(&status, md, "recipe"); 19551 if (!status) { 19552 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item recipe"); 19553 return false; 19554 } 19555 char* path_base = psMetadataLookupPtr(&status, md, "path_base"); 19556 if (!status) { 19557 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item path_base"); 19558 return false; 19559 } 19560 psS16 fault = psMetadataLookupS16(&status, md, "fault"); 19561 if (!status) { 19562 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item fault"); 19563 return false; 19564 } 19565 19566 return detCorrectedExpRowAlloc(det_id, exp_id, uri, corr_id, corr_type, recipe, path_base, fault); 19567 } 19568 psArray *detCorrectedExpSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) 19569 { 19570 psArray *rowSet; 19571 psArray *returnSet; 19572 psU64 i; 19573 19574 rowSet = psDBSelectRows(dbh, DETCORRECTEDEXP_TABLE_NAME, where, limit); 19575 if (!rowSet) { 19576 return NULL; 19577 } 19578 19579 // convert psMetadata rows to row objects 19580 19581 returnSet = psArrayAllocEmpty(rowSet->n); 19582 19583 for (i = 0; i < rowSet->n; i++) { 19584 detCorrectedExpRow *object = detCorrectedExpObjectFromMetadata(rowSet->data[i]); 19585 psArrayAdd(returnSet, 0, object); 19586 psFree(object); 19587 } 19588 19589 psFree(rowSet); 19590 19591 return returnSet; 19592 } 19593 bool detCorrectedExpDeleteObject(psDB *dbh, const detCorrectedExpRow *object) 19594 { 19595 psMetadata *where = detCorrectedExpMetadataFromObject(object); 19596 long long count = psDBDeleteRows(dbh, DETCORRECTEDEXP_TABLE_NAME, where, 0); 19597 psFree(where); 19598 if (count < 0) { 19599 psError(PS_ERR_UNKNOWN, true, "failed to delete row from detCorrectedExp"); 19600 return false; 19601 } 19602 if (count > 1) { 19603 // XXX should this be a psAbort() instead? It is possible that 19604 // having an object match multiple rows was by design. 19605 psError(PS_ERR_UNKNOWN, true, "detCorrectedExpRow object matched more then one row. Check your database schema"); 19606 return false; 19607 } 19608 19609 return true; 19610 } 19611 long long detCorrectedExpDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit) 19612 { 19613 long long deleted = 0; 19614 19615 for (long long i = 0; i < objects->n; i++) { 19616 detCorrectedExpRow *object = objects->data[i]; 19617 psMetadata *where = detCorrectedExpMetadataFromObject(object); 19618 long long count = psDBDeleteRows(dbh, DETCORRECTEDEXP_TABLE_NAME, where, limit); 19619 psFree(where); 19620 if (count < 0) { 19621 psError(PS_ERR_UNKNOWN, true, "failed to delete row from detCorrectedExp"); 19622 return count; 19623 } 19624 19625 deleted += count; 19626 } 19627 19628 return deleted; 19629 } 19630 bool detCorrectedExpPrintObjects(FILE *stream, psArray *objects, bool mdcf) 19631 { 19632 PS_ASSERT_PTR_NON_NULL(objects, false); 19633 19634 psMetadata *output = psMetadataAlloc(); 19635 for (long i = 0; i < psArrayLength(objects); i++) { 19636 psMetadata *md = detCorrectedExpMetadataFromObject(objects->data[i]); 19637 if (!psMetadataAddMetadata( 19638 output, 19639 PS_LIST_TAIL, 19640 DETCORRECTEDEXP_TABLE_NAME, 19641 PS_META_DUPLICATE_OK, 19642 NULL, 19643 md 19644 )) { 19645 psError(PS_ERR_UNKNOWN, false, "failed to add metadata"); 19646 psFree(md); 19647 psFree(output); 19648 return false; 19649 } 19650 psFree(md); 19651 } 19652 19653 if (!ippdbPrintMetadataRaw(stream, output, mdcf)) { 19654 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 19655 psFree(output); 19656 } 19657 psFree(output); 19658 19659 return true; 19660 } 19661 bool detCorrectedExpPrintObject(FILE *stream, detCorrectedExpRow *object, bool mdcf) 19662 { 19663 PS_ASSERT_PTR_NON_NULL(object, false); 19664 19665 psMetadata *md = detCorrectedExpMetadataFromObject(object); 19666 19667 if (!ippdbPrintMetadataRaw(stream, md, mdcf)) { 19668 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 19669 psFree(md); 19670 } 19671 19672 psFree(md); 19673 19674 return true; 19675 } 19676 static void detCorrectedImfileRowFree(detCorrectedImfileRow *object); 19677 19678 detCorrectedImfileRow *detCorrectedImfileRowAlloc(psS64 det_id, psS64 exp_id, const char *class_id, const char *uri, const char *path_base, psS16 fault) 19679 { 19680 detCorrectedImfileRow *_object; 19681 19682 _object = psAlloc(sizeof(detCorrectedImfileRow)); 19683 psMemSetDeallocator(_object, (psFreeFunc)detCorrectedImfileRowFree); 19684 19685 _object->det_id = det_id; 19686 _object->exp_id = exp_id; 19687 _object->class_id = psStringCopy(class_id); 19688 _object->uri = psStringCopy(uri); 19689 _object->path_base = psStringCopy(path_base); 19690 _object->fault = fault; 19691 19692 return _object; 19693 } 19694 19695 static void detCorrectedImfileRowFree(detCorrectedImfileRow *object) 19696 { 19697 psFree(object->class_id); 19698 psFree(object->uri); 19699 psFree(object->path_base); 19700 } 19701 19702 bool detCorrectedImfileCreateTable(psDB *dbh) 19703 { 19704 psMetadata *md = psMetadataAlloc(); 19705 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, "Primary Key fkey(det_id, exp_id) ref detInputExp(det_id, exp_id)", 0)) { 19706 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 19707 psFree(md); 19708 return false; 19709 } 19710 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, "Primary Key fkey(exp_id, class_id) ref rawImfile(exp_id, class_id)", 64)) { 19711 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 19712 psFree(md); 19713 return false; 19714 } 19715 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, "Primary Key INDEX(det_id, class_id)", "64")) { 19716 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id"); 19717 psFree(md); 19718 return false; 19719 } 19720 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, "INDEX(det_id, exp_id)", "255")) { 19721 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 19722 psFree(md); 19723 return false; 19724 } 19725 if (!psMetadataAdd(md, PS_LIST_TAIL, "path_base", PS_DATA_STRING, NULL, "255")) { 19726 psError(PS_ERR_UNKNOWN, false, "failed to add item path_base"); 19727 psFree(md); 19728 return false; 19729 } 19730 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, "Key NOT NULL", 0)) { 19731 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 19732 psFree(md); 19733 return false; 19734 } 19735 19736 bool status = psDBCreateTable(dbh, DETCORRECTEDIMFILE_TABLE_NAME, md); 19737 19738 psFree(md); 19739 19740 return status; 19741 } 19742 19743 bool detCorrectedImfileDropTable(psDB *dbh) 19744 { 19745 return psDBDropTable(dbh, DETCORRECTEDIMFILE_TABLE_NAME); 19746 } 19747 19748 bool detCorrectedImfileInsert(psDB * dbh, psS64 det_id, psS64 exp_id, const char *class_id, const char *uri, const char *path_base, psS16 fault) 19749 { 19750 psMetadata *md = psMetadataAlloc(); 19751 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, NULL, det_id)) { 19752 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 19753 psFree(md); 19754 return false; 19755 } 19756 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, NULL, exp_id)) { 19757 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 19758 psFree(md); 19759 return false; 19760 } 19761 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, NULL, class_id)) { 19762 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id"); 19763 psFree(md); 19764 return false; 19765 } 19766 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, uri)) { 19767 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 19768 psFree(md); 19769 return false; 19770 } 19771 if (!psMetadataAdd(md, PS_LIST_TAIL, "path_base", PS_DATA_STRING, NULL, path_base)) { 19772 psError(PS_ERR_UNKNOWN, false, "failed to add item path_base"); 19773 psFree(md); 19774 return false; 19775 } 19776 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, NULL, fault)) { 19777 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 19778 psFree(md); 19779 return false; 19780 } 19781 19782 bool status = psDBInsertOneRow(dbh, DETCORRECTEDIMFILE_TABLE_NAME, md); 19783 psFree(md); 19784 19785 return status; 19786 } 19787 19788 long long detCorrectedImfileDelete(psDB *dbh, const psMetadata *where, unsigned long long limit) 19789 { 19790 long long deleted = 0; 19791 19792 long long count = psDBDeleteRows(dbh, DETCORRECTEDIMFILE_TABLE_NAME, where, limit); 19793 if (count < 0) { 19794 psError(PS_ERR_UNKNOWN, true, "failed to delete row from detCorrectedImfile"); 19795 return count; 19796 19797 deleted += count; 19798 } 19799 19800 return deleted; 19801 } 19802 bool detCorrectedImfileInsertObject(psDB *dbh, detCorrectedImfileRow *object) 19803 { 19804 return detCorrectedImfileInsert(dbh, object->det_id, object->exp_id, object->class_id, object->uri, object->path_base, object->fault); 19805 } 19806 19807 bool detCorrectedImfileInsertObjects(psDB *dbh, psArray *objects) 19808 { 19809 for (long i = 0; i < psArrayLength(objects); i++) { 19810 if (!detCorrectedImfileInsertObject(dbh, objects->data[i])) { 19811 return false; 19812 } 19813 } 19814 19815 return true; 19816 } 19817 19818 bool detCorrectedImfileInsertFits(psDB *dbh, const psFits *fits) 19819 { 19820 psArray *rowSet; 19821 19822 // move to (the first?) extension named DETCORRECTEDIMFILE_TABLE_NAME 19823 if (!psFitsMoveExtName(fits, DETCORRECTEDIMFILE_TABLE_NAME)) { 19824 psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", DETCORRECTEDIMFILE_TABLE_NAME); 19825 return false; 19826 } 19827 19828 // check HDU type 19829 if (psFitsGetExtType(fits) != PS_FITS_TYPE_BINARY_TABLE) { 19830 psError(PS_ERR_UNKNOWN, true, "FITS HDU type is not PS_FITS_TYPE_BINARY_TABLE"); 19831 return false; 19832 } 19833 19834 // read fits table 19835 rowSet = psFitsReadTable(fits); 19836 if (!rowSet) { 19837 psError(PS_ERR_UNKNOWN, true, "FITS read error or FITS table is empty"); 19838 psFree(rowSet); 19839 return false; 19840 } 19841 19842 if (!psDBInsertRows(dbh, DETCORRECTEDIMFILE_TABLE_NAME, rowSet)) { 19843 psError(PS_ERR_UNKNOWN, false, "databse insert failed"); 19844 psFree(rowSet); 19845 return false; 19846 } 19847 19848 psFree(rowSet); 19849 19850 return true; 19851 } 19852 19853 bool detCorrectedImfileSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit) 19854 { 19855 psArray *rowSet; 19856 19857 rowSet = psDBSelectRows(dbh, DETCORRECTEDIMFILE_TABLE_NAME, where, limit); 19858 if (!rowSet) { 19859 return false; 19860 } 19861 19862 // output to fits 19863 if (!psFitsWriteTable(fits, NULL, rowSet, DETCORRECTEDIMFILE_TABLE_NAME)) { 19864 psError(PS_ERR_UNKNOWN, false, "FITS table write failed"); 19865 psFree(rowSet); 19866 return false; 19867 } 19868 19869 psFree(rowSet); 19870 19871 return true; 19872 } 19873 19874 psMetadata *detCorrectedImfileMetadataFromObject(const detCorrectedImfileRow *object) 19875 { 19876 psMetadata *md = psMetadataAlloc(); 19877 if (!psMetadataAdd(md, PS_LIST_TAIL, "det_id", PS_DATA_S64, NULL, object->det_id)) { 19878 psError(PS_ERR_UNKNOWN, false, "failed to add item det_id"); 19879 psFree(md); 19880 return false; 19881 } 19882 if (!psMetadataAdd(md, PS_LIST_TAIL, "exp_id", PS_DATA_S64, NULL, object->exp_id)) { 19883 psError(PS_ERR_UNKNOWN, false, "failed to add item exp_id"); 19884 psFree(md); 19885 return false; 19886 } 19887 if (!psMetadataAdd(md, PS_LIST_TAIL, "class_id", PS_DATA_STRING, NULL, object->class_id)) { 19888 psError(PS_ERR_UNKNOWN, false, "failed to add item class_id"); 19889 psFree(md); 19890 return false; 19891 } 19892 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, object->uri)) { 19893 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 19894 psFree(md); 19895 return false; 19896 } 19897 if (!psMetadataAdd(md, PS_LIST_TAIL, "path_base", PS_DATA_STRING, NULL, object->path_base)) { 19898 psError(PS_ERR_UNKNOWN, false, "failed to add item path_base"); 19899 psFree(md); 19900 return false; 19901 } 19902 if (!psMetadataAdd(md, PS_LIST_TAIL, "fault", PS_DATA_S16, NULL, object->fault)) { 19903 psError(PS_ERR_UNKNOWN, false, "failed to add item fault"); 19904 psFree(md); 19905 return false; 19906 } 19907 19908 19909 return md; 19910 } 19911 19912 detCorrectedImfileRow *detCorrectedImfileObjectFromMetadata(psMetadata *md) 19913 { 19914 19915 bool status = false; 19916 psS64 det_id = psMetadataLookupS64(&status, md, "det_id"); 19917 if (!status) { 19918 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item det_id"); 19919 return false; 19920 } 19921 psS64 exp_id = psMetadataLookupS64(&status, md, "exp_id"); 19922 if (!status) { 19923 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item exp_id"); 19924 return false; 19925 } 19926 char* class_id = psMetadataLookupPtr(&status, md, "class_id"); 19927 if (!status) { 19928 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item class_id"); 19929 return false; 19930 } 19931 char* uri = psMetadataLookupPtr(&status, md, "uri"); 19932 if (!status) { 19933 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item uri"); 19934 return false; 19935 } 19936 char* path_base = psMetadataLookupPtr(&status, md, "path_base"); 19937 if (!status) { 19938 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item path_base"); 19939 return false; 19940 } 19941 psS16 fault = psMetadataLookupS16(&status, md, "fault"); 19942 if (!status) { 19943 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item fault"); 19944 return false; 19945 } 19946 19947 return detCorrectedImfileRowAlloc(det_id, exp_id, class_id, uri, path_base, fault); 19948 } 19949 psArray *detCorrectedImfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) 19950 { 19951 psArray *rowSet; 19952 psArray *returnSet; 19953 psU64 i; 19954 19955 rowSet = psDBSelectRows(dbh, DETCORRECTEDIMFILE_TABLE_NAME, where, limit); 19956 if (!rowSet) { 19957 return NULL; 19958 } 19959 19960 // convert psMetadata rows to row objects 19961 19962 returnSet = psArrayAllocEmpty(rowSet->n); 19963 19964 for (i = 0; i < rowSet->n; i++) { 19965 detCorrectedImfileRow *object = detCorrectedImfileObjectFromMetadata(rowSet->data[i]); 19966 psArrayAdd(returnSet, 0, object); 19967 psFree(object); 19968 } 19969 19970 psFree(rowSet); 19971 19972 return returnSet; 19973 } 19974 bool detCorrectedImfileDeleteObject(psDB *dbh, const detCorrectedImfileRow *object) 19975 { 19976 psMetadata *where = detCorrectedImfileMetadataFromObject(object); 19977 long long count = psDBDeleteRows(dbh, DETCORRECTEDIMFILE_TABLE_NAME, where, 0); 19978 psFree(where); 19979 if (count < 0) { 19980 psError(PS_ERR_UNKNOWN, true, "failed to delete row from detCorrectedImfile"); 19981 return false; 19982 } 19983 if (count > 1) { 19984 // XXX should this be a psAbort() instead? It is possible that 19985 // having an object match multiple rows was by design. 19986 psError(PS_ERR_UNKNOWN, true, "detCorrectedImfileRow object matched more then one row. Check your database schema"); 19987 return false; 19988 } 19989 19990 return true; 19991 } 19992 long long detCorrectedImfileDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit) 19993 { 19994 long long deleted = 0; 19995 19996 for (long long i = 0; i < objects->n; i++) { 19997 detCorrectedImfileRow *object = objects->data[i]; 19998 psMetadata *where = detCorrectedImfileMetadataFromObject(object); 19999 long long count = psDBDeleteRows(dbh, DETCORRECTEDIMFILE_TABLE_NAME, where, limit); 20000 psFree(where); 20001 if (count < 0) { 20002 psError(PS_ERR_UNKNOWN, true, "failed to delete row from detCorrectedImfile"); 20003 return count; 20004 } 20005 20006 deleted += count; 20007 } 20008 20009 return deleted; 20010 } 20011 bool detCorrectedImfilePrintObjects(FILE *stream, psArray *objects, bool mdcf) 20012 { 20013 PS_ASSERT_PTR_NON_NULL(objects, false); 20014 20015 psMetadata *output = psMetadataAlloc(); 20016 for (long i = 0; i < psArrayLength(objects); i++) { 20017 psMetadata *md = detCorrectedImfileMetadataFromObject(objects->data[i]); 20018 if (!psMetadataAddMetadata( 20019 output, 20020 PS_LIST_TAIL, 20021 DETCORRECTEDIMFILE_TABLE_NAME, 20022 PS_META_DUPLICATE_OK, 20023 NULL, 20024 md 20025 )) { 20026 psError(PS_ERR_UNKNOWN, false, "failed to add metadata"); 20027 psFree(md); 20028 psFree(output); 20029 return false; 20030 } 20031 psFree(md); 20032 } 20033 20034 if (!ippdbPrintMetadataRaw(stream, output, mdcf)) { 20035 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 20036 psFree(output); 20037 } 20038 psFree(output); 20039 20040 return true; 20041 } 20042 bool detCorrectedImfilePrintObject(FILE *stream, detCorrectedImfileRow *object, bool mdcf) 20043 { 20044 PS_ASSERT_PTR_NON_NULL(object, false); 20045 20046 psMetadata *md = detCorrectedImfileMetadataFromObject(object); 20047 20048 if (!ippdbPrintMetadataRaw(stream, md, mdcf)) { 20049 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 20050 psFree(md); 20051 } 20052 20053 psFree(md); 20054 20055 return true; 20056 } 20057 static void magicRunRowFree(magicRunRow *object); 20058 20059 magicRunRow *magicRunRowAlloc(psS64 magic_id, const char *state, const char *workdir, const char *workdir_state, const char *label, const char *dvodb, psTime* registered) 20060 { 20061 magicRunRow *_object; 20062 20063 _object = psAlloc(sizeof(magicRunRow)); 20064 psMemSetDeallocator(_object, (psFreeFunc)magicRunRowFree); 20065 20066 _object->magic_id = magic_id; 20067 _object->state = psStringCopy(state); 20068 _object->workdir = psStringCopy(workdir); 20069 _object->workdir_state = psStringCopy(workdir_state); 20070 _object->label = psStringCopy(label); 20071 _object->dvodb = psStringCopy(dvodb); 20072 _object->registered = psTimeCopy(registered); 20073 20074 return _object; 20075 } 20076 20077 static void magicRunRowFree(magicRunRow *object) 20078 { 20079 psFree(object->state); 20080 psFree(object->workdir); 20081 psFree(object->workdir_state); 20082 psFree(object->label); 20083 psFree(object->dvodb); 20084 psFree(object->registered); 20085 } 20086 20087 bool magicRunCreateTable(psDB *dbh) 20088 { 20089 psMetadata *md = psMetadataAlloc(); 20090 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, "Primary Key AUTO_INCREMENT", 0)) { 20091 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 20092 psFree(md); 20093 return false; 20094 } 20095 if (!psMetadataAdd(md, PS_LIST_TAIL, "state", PS_DATA_STRING, "Key", "64")) { 20096 psError(PS_ERR_UNKNOWN, false, "failed to add item state"); 20097 psFree(md); 20098 return false; 20099 } 20100 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir", PS_DATA_STRING, NULL, "255")) { 20101 psError(PS_ERR_UNKNOWN, false, "failed to add item workdir"); 20102 psFree(md); 20103 return false; 20104 } 20105 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir_state", PS_DATA_STRING, "Key", "255")) { 20106 psError(PS_ERR_UNKNOWN, false, "failed to add item workdir_state"); 20107 psFree(md); 20108 return false; 20109 } 20110 if (!psMetadataAdd(md, PS_LIST_TAIL, "label", PS_DATA_STRING, "key", "64")) { 20111 psError(PS_ERR_UNKNOWN, false, "failed to add item label"); 20112 psFree(md); 20113 return false; 20114 } 20115 if (!psMetadataAdd(md, PS_LIST_TAIL, "dvodb", PS_DATA_STRING, NULL, "255")) { 20116 psError(PS_ERR_UNKNOWN, false, "failed to add item dvodb"); 20117 psFree(md); 20118 return false; 20119 } 20120 if (!psMetadataAdd(md, PS_LIST_TAIL, "registered", PS_DATA_TIME, NULL, NULL)) { 20121 psError(PS_ERR_UNKNOWN, false, "failed to add item registered"); 20122 psFree(md); 20123 return false; 20124 } 20125 20126 bool status = psDBCreateTable(dbh, MAGICRUN_TABLE_NAME, md); 20127 20128 psFree(md); 20129 20130 return status; 20131 } 20132 20133 bool magicRunDropTable(psDB *dbh) 20134 { 20135 return psDBDropTable(dbh, MAGICRUN_TABLE_NAME); 20136 } 20137 20138 bool magicRunInsert(psDB * dbh, psS64 magic_id, const char *state, const char *workdir, const char *workdir_state, const char *label, const char *dvodb, psTime* registered) 20139 { 20140 psMetadata *md = psMetadataAlloc(); 20141 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, NULL, magic_id)) { 20142 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 20143 psFree(md); 20144 return false; 20145 } 20146 if (!psMetadataAdd(md, PS_LIST_TAIL, "state", PS_DATA_STRING, NULL, state)) { 20147 psError(PS_ERR_UNKNOWN, false, "failed to add item state"); 20148 psFree(md); 20149 return false; 20150 } 20151 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir", PS_DATA_STRING, NULL, workdir)) { 20152 psError(PS_ERR_UNKNOWN, false, "failed to add item workdir"); 20153 psFree(md); 20154 return false; 20155 } 20156 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir_state", PS_DATA_STRING, NULL, workdir_state)) { 20157 psError(PS_ERR_UNKNOWN, false, "failed to add item workdir_state"); 20158 psFree(md); 20159 return false; 20160 } 20161 if (!psMetadataAdd(md, PS_LIST_TAIL, "label", PS_DATA_STRING, NULL, label)) { 20162 psError(PS_ERR_UNKNOWN, false, "failed to add item label"); 20163 psFree(md); 20164 return false; 20165 } 20166 if (!psMetadataAdd(md, PS_LIST_TAIL, "dvodb", PS_DATA_STRING, NULL, dvodb)) { 20167 psError(PS_ERR_UNKNOWN, false, "failed to add item dvodb"); 20168 psFree(md); 20169 return false; 20170 } 20171 if (!psMetadataAdd(md, PS_LIST_TAIL, "registered", PS_DATA_TIME, NULL, registered)) { 20172 psError(PS_ERR_UNKNOWN, false, "failed to add item registered"); 20173 psFree(md); 20174 return false; 20175 } 20176 20177 bool status = psDBInsertOneRow(dbh, MAGICRUN_TABLE_NAME, md); 20178 psFree(md); 20179 20180 return status; 20181 } 20182 20183 long long magicRunDelete(psDB *dbh, const psMetadata *where, unsigned long long limit) 20184 { 20185 long long deleted = 0; 20186 20187 long long count = psDBDeleteRows(dbh, MAGICRUN_TABLE_NAME, where, limit); 20188 if (count < 0) { 20189 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicRun"); 20190 return count; 20191 20192 deleted += count; 20193 } 20194 20195 return deleted; 20196 } 20197 bool magicRunInsertObject(psDB *dbh, magicRunRow *object) 20198 { 20199 return magicRunInsert(dbh, object->magic_id, object->state, object->workdir, object->workdir_state, object->label, object->dvodb, object->registered); 20200 } 20201 20202 bool magicRunInsertObjects(psDB *dbh, psArray *objects) 20203 { 20204 for (long i = 0; i < psArrayLength(objects); i++) { 20205 if (!magicRunInsertObject(dbh, objects->data[i])) { 20206 return false; 20207 } 20208 } 20209 20210 return true; 20211 } 20212 20213 bool magicRunInsertFits(psDB *dbh, const psFits *fits) 20214 { 20215 psArray *rowSet; 20216 20217 // move to (the first?) extension named MAGICRUN_TABLE_NAME 20218 if (!psFitsMoveExtName(fits, MAGICRUN_TABLE_NAME)) { 20219 psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", MAGICRUN_TABLE_NAME); 20220 return false; 20221 } 20222 20223 // check HDU type 20224 if (psFitsGetExtType(fits) != PS_FITS_TYPE_BINARY_TABLE) { 20225 psError(PS_ERR_UNKNOWN, true, "FITS HDU type is not PS_FITS_TYPE_BINARY_TABLE"); 20226 return false; 20227 } 20228 20229 // read fits table 20230 rowSet = psFitsReadTable(fits); 20231 if (!rowSet) { 20232 psError(PS_ERR_UNKNOWN, true, "FITS read error or FITS table is empty"); 20233 psFree(rowSet); 20234 return false; 20235 } 20236 20237 if (!psDBInsertRows(dbh, MAGICRUN_TABLE_NAME, rowSet)) { 20238 psError(PS_ERR_UNKNOWN, false, "databse insert failed"); 20239 psFree(rowSet); 20240 return false; 20241 } 20242 20243 psFree(rowSet); 20244 20245 return true; 20246 } 20247 20248 bool magicRunSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit) 20249 { 20250 psArray *rowSet; 20251 20252 rowSet = psDBSelectRows(dbh, MAGICRUN_TABLE_NAME, where, limit); 20253 if (!rowSet) { 20254 return false; 20255 } 20256 20257 // output to fits 20258 if (!psFitsWriteTable(fits, NULL, rowSet, MAGICRUN_TABLE_NAME)) { 20259 psError(PS_ERR_UNKNOWN, false, "FITS table write failed"); 20260 psFree(rowSet); 20261 return false; 20262 } 20263 20264 psFree(rowSet); 20265 20266 return true; 20267 } 20268 20269 psMetadata *magicRunMetadataFromObject(const magicRunRow *object) 20270 { 20271 psMetadata *md = psMetadataAlloc(); 20272 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, NULL, object->magic_id)) { 20273 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 20274 psFree(md); 20275 return false; 20276 } 20277 if (!psMetadataAdd(md, PS_LIST_TAIL, "state", PS_DATA_STRING, NULL, object->state)) { 20278 psError(PS_ERR_UNKNOWN, false, "failed to add item state"); 20279 psFree(md); 20280 return false; 20281 } 20282 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir", PS_DATA_STRING, NULL, object->workdir)) { 20283 psError(PS_ERR_UNKNOWN, false, "failed to add item workdir"); 20284 psFree(md); 20285 return false; 20286 } 20287 if (!psMetadataAdd(md, PS_LIST_TAIL, "workdir_state", PS_DATA_STRING, NULL, object->workdir_state)) { 20288 psError(PS_ERR_UNKNOWN, false, "failed to add item workdir_state"); 20289 psFree(md); 20290 return false; 20291 } 20292 if (!psMetadataAdd(md, PS_LIST_TAIL, "label", PS_DATA_STRING, NULL, object->label)) { 20293 psError(PS_ERR_UNKNOWN, false, "failed to add item label"); 20294 psFree(md); 20295 return false; 20296 } 20297 if (!psMetadataAdd(md, PS_LIST_TAIL, "dvodb", PS_DATA_STRING, NULL, object->dvodb)) { 20298 psError(PS_ERR_UNKNOWN, false, "failed to add item dvodb"); 20299 psFree(md); 20300 return false; 20301 } 20302 if (!psMetadataAdd(md, PS_LIST_TAIL, "registered", PS_DATA_TIME, NULL, object->registered)) { 20303 psError(PS_ERR_UNKNOWN, false, "failed to add item registered"); 20304 psFree(md); 20305 return false; 20306 } 20307 20308 20309 return md; 20310 } 20311 20312 magicRunRow *magicRunObjectFromMetadata(psMetadata *md) 20313 { 20314 20315 bool status = false; 20316 psS64 magic_id = psMetadataLookupS64(&status, md, "magic_id"); 20317 if (!status) { 20318 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item magic_id"); 20319 return false; 20320 } 20321 char* state = psMetadataLookupPtr(&status, md, "state"); 20322 if (!status) { 20323 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item state"); 20324 return false; 20325 } 20326 char* workdir = psMetadataLookupPtr(&status, md, "workdir"); 20327 if (!status) { 20328 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item workdir"); 20329 return false; 20330 } 20331 char* workdir_state = psMetadataLookupPtr(&status, md, "workdir_state"); 20332 if (!status) { 20333 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item workdir_state"); 20334 return false; 20335 } 20336 char* label = psMetadataLookupPtr(&status, md, "label"); 20337 if (!status) { 20338 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item label"); 20339 return false; 20340 } 20341 char* dvodb = psMetadataLookupPtr(&status, md, "dvodb"); 20342 if (!status) { 20343 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item dvodb"); 20344 return false; 20345 } 20346 psTime* registered = psMetadataLookupPtr(&status, md, "registered"); 20347 if (!status) { 20348 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item registered"); 20349 return false; 20350 } 20351 20352 return magicRunRowAlloc(magic_id, state, workdir, workdir_state, label, dvodb, registered); 20353 } 20354 psArray *magicRunSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) 20355 { 20356 psArray *rowSet; 20357 psArray *returnSet; 20358 psU64 i; 20359 20360 rowSet = psDBSelectRows(dbh, MAGICRUN_TABLE_NAME, where, limit); 20361 if (!rowSet) { 20362 return NULL; 20363 } 20364 20365 // convert psMetadata rows to row objects 20366 20367 returnSet = psArrayAllocEmpty(rowSet->n); 20368 20369 for (i = 0; i < rowSet->n; i++) { 20370 magicRunRow *object = magicRunObjectFromMetadata(rowSet->data[i]); 20371 psArrayAdd(returnSet, 0, object); 20372 psFree(object); 20373 } 20374 20375 psFree(rowSet); 20376 20377 return returnSet; 20378 } 20379 bool magicRunDeleteObject(psDB *dbh, const magicRunRow *object) 20380 { 20381 psMetadata *where = magicRunMetadataFromObject(object); 20382 long long count = psDBDeleteRows(dbh, MAGICRUN_TABLE_NAME, where, 0); 20383 psFree(where); 20384 if (count < 0) { 20385 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicRun"); 20386 return false; 20387 } 20388 if (count > 1) { 20389 // XXX should this be a psAbort() instead? It is possible that 20390 // having an object match multiple rows was by design. 20391 psError(PS_ERR_UNKNOWN, true, "magicRunRow object matched more then one row. Check your database schema"); 20392 return false; 20393 } 20394 20395 return true; 20396 } 20397 long long magicRunDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit) 20398 { 20399 long long deleted = 0; 20400 20401 for (long long i = 0; i < objects->n; i++) { 20402 magicRunRow *object = objects->data[i]; 20403 psMetadata *where = magicRunMetadataFromObject(object); 20404 long long count = psDBDeleteRows(dbh, MAGICRUN_TABLE_NAME, where, limit); 20405 psFree(where); 20406 if (count < 0) { 20407 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicRun"); 20408 return count; 20409 } 20410 20411 deleted += count; 20412 } 20413 20414 return deleted; 20415 } 20416 bool magicRunPrintObjects(FILE *stream, psArray *objects, bool mdcf) 20417 { 20418 PS_ASSERT_PTR_NON_NULL(objects, false); 20419 20420 psMetadata *output = psMetadataAlloc(); 20421 for (long i = 0; i < psArrayLength(objects); i++) { 20422 psMetadata *md = magicRunMetadataFromObject(objects->data[i]); 20423 if (!psMetadataAddMetadata( 20424 output, 20425 PS_LIST_TAIL, 20426 MAGICRUN_TABLE_NAME, 20427 PS_META_DUPLICATE_OK, 20428 NULL, 20429 md 20430 )) { 20431 psError(PS_ERR_UNKNOWN, false, "failed to add metadata"); 20432 psFree(md); 20433 psFree(output); 20434 return false; 20435 } 20436 psFree(md); 20437 } 20438 20439 if (!ippdbPrintMetadataRaw(stream, output, mdcf)) { 20440 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 20441 psFree(output); 20442 } 20443 psFree(output); 20444 20445 return true; 20446 } 20447 bool magicRunPrintObject(FILE *stream, magicRunRow *object, bool mdcf) 20448 { 20449 PS_ASSERT_PTR_NON_NULL(object, false); 20450 20451 psMetadata *md = magicRunMetadataFromObject(object); 20452 20453 if (!ippdbPrintMetadataRaw(stream, md, mdcf)) { 20454 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 20455 psFree(md); 20456 } 20457 20458 psFree(md); 20459 20460 return true; 20461 } 20462 static void magicInputSkyfileRowFree(magicInputSkyfileRow *object); 20463 20464 magicInputSkyfileRow *magicInputSkyfileRowAlloc(psS64 magic_id, psS64 diff_id, const char *node) 20465 { 20466 magicInputSkyfileRow *_object; 20467 20468 _object = psAlloc(sizeof(magicInputSkyfileRow)); 20469 psMemSetDeallocator(_object, (psFreeFunc)magicInputSkyfileRowFree); 20470 20471 _object->magic_id = magic_id; 20472 _object->diff_id = diff_id; 20473 _object->node = psStringCopy(node); 20474 20475 return _object; 20476 } 20477 20478 static void magicInputSkyfileRowFree(magicInputSkyfileRow *object) 20479 { 20480 psFree(object->node); 20481 } 20482 20483 bool magicInputSkyfileCreateTable(psDB *dbh) 20484 { 20485 psMetadata *md = psMetadataAlloc(); 20486 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, "Primary Key fkey(magic_id) ref magicRun(magic_id)", 0)) { 20487 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 20488 psFree(md); 20489 return false; 20490 } 20491 if (!psMetadataAdd(md, PS_LIST_TAIL, "diff_id", PS_DATA_S64, "Primary Key fkey(diff_id) ref diffRun(diff_id)", 0)) { 20492 psError(PS_ERR_UNKNOWN, false, "failed to add item diff_id"); 20493 psFree(md); 20494 return false; 20495 } 20496 if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_STRING, NULL, "64")) { 20497 psError(PS_ERR_UNKNOWN, false, "failed to add item node"); 20498 psFree(md); 20499 return false; 20500 } 20501 20502 bool status = psDBCreateTable(dbh, MAGICINPUTSKYFILE_TABLE_NAME, md); 20503 20504 psFree(md); 20505 20506 return status; 20507 } 20508 20509 bool magicInputSkyfileDropTable(psDB *dbh) 20510 { 20511 return psDBDropTable(dbh, MAGICINPUTSKYFILE_TABLE_NAME); 20512 } 20513 20514 bool magicInputSkyfileInsert(psDB * dbh, psS64 magic_id, psS64 diff_id, const char *node) 20515 { 20516 psMetadata *md = psMetadataAlloc(); 20517 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, NULL, magic_id)) { 20518 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 20519 psFree(md); 20520 return false; 20521 } 20522 if (!psMetadataAdd(md, PS_LIST_TAIL, "diff_id", PS_DATA_S64, NULL, diff_id)) { 20523 psError(PS_ERR_UNKNOWN, false, "failed to add item diff_id"); 20524 psFree(md); 20525 return false; 20526 } 20527 if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_STRING, NULL, node)) { 20528 psError(PS_ERR_UNKNOWN, false, "failed to add item node"); 20529 psFree(md); 20530 return false; 20531 } 20532 20533 bool status = psDBInsertOneRow(dbh, MAGICINPUTSKYFILE_TABLE_NAME, md); 20534 psFree(md); 20535 20536 return status; 20537 } 20538 20539 long long magicInputSkyfileDelete(psDB *dbh, const psMetadata *where, unsigned long long limit) 20540 { 20541 long long deleted = 0; 20542 20543 long long count = psDBDeleteRows(dbh, MAGICINPUTSKYFILE_TABLE_NAME, where, limit); 20544 if (count < 0) { 20545 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicInputSkyfile"); 20546 return count; 20547 20548 deleted += count; 20549 } 20550 20551 return deleted; 20552 } 20553 bool magicInputSkyfileInsertObject(psDB *dbh, magicInputSkyfileRow *object) 20554 { 20555 return magicInputSkyfileInsert(dbh, object->magic_id, object->diff_id, object->node); 20556 } 20557 20558 bool magicInputSkyfileInsertObjects(psDB *dbh, psArray *objects) 20559 { 20560 for (long i = 0; i < psArrayLength(objects); i++) { 20561 if (!magicInputSkyfileInsertObject(dbh, objects->data[i])) { 20562 return false; 20563 } 20564 } 20565 20566 return true; 20567 } 20568 20569 bool magicInputSkyfileInsertFits(psDB *dbh, const psFits *fits) 20570 { 20571 psArray *rowSet; 20572 20573 // move to (the first?) extension named MAGICINPUTSKYFILE_TABLE_NAME 20574 if (!psFitsMoveExtName(fits, MAGICINPUTSKYFILE_TABLE_NAME)) { 20575 psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", MAGICINPUTSKYFILE_TABLE_NAME); 20576 return false; 20577 } 20578 20579 // check HDU type 20580 if (psFitsGetExtType(fits) != PS_FITS_TYPE_BINARY_TABLE) { 20581 psError(PS_ERR_UNKNOWN, true, "FITS HDU type is not PS_FITS_TYPE_BINARY_TABLE"); 20582 return false; 20583 } 20584 20585 // read fits table 20586 rowSet = psFitsReadTable(fits); 20587 if (!rowSet) { 20588 psError(PS_ERR_UNKNOWN, true, "FITS read error or FITS table is empty"); 20589 psFree(rowSet); 20590 return false; 20591 } 20592 20593 if (!psDBInsertRows(dbh, MAGICINPUTSKYFILE_TABLE_NAME, rowSet)) { 20594 psError(PS_ERR_UNKNOWN, false, "databse insert failed"); 20595 psFree(rowSet); 20596 return false; 20597 } 20598 20599 psFree(rowSet); 20600 20601 return true; 20602 } 20603 20604 bool magicInputSkyfileSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit) 20605 { 20606 psArray *rowSet; 20607 20608 rowSet = psDBSelectRows(dbh, MAGICINPUTSKYFILE_TABLE_NAME, where, limit); 20609 if (!rowSet) { 20610 return false; 20611 } 20612 20613 // output to fits 20614 if (!psFitsWriteTable(fits, NULL, rowSet, MAGICINPUTSKYFILE_TABLE_NAME)) { 20615 psError(PS_ERR_UNKNOWN, false, "FITS table write failed"); 20616 psFree(rowSet); 20617 return false; 20618 } 20619 20620 psFree(rowSet); 20621 20622 return true; 20623 } 20624 20625 psMetadata *magicInputSkyfileMetadataFromObject(const magicInputSkyfileRow *object) 20626 { 20627 psMetadata *md = psMetadataAlloc(); 20628 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, NULL, object->magic_id)) { 20629 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 20630 psFree(md); 20631 return false; 20632 } 20633 if (!psMetadataAdd(md, PS_LIST_TAIL, "diff_id", PS_DATA_S64, NULL, object->diff_id)) { 20634 psError(PS_ERR_UNKNOWN, false, "failed to add item diff_id"); 20635 psFree(md); 20636 return false; 20637 } 20638 if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_STRING, NULL, object->node)) { 20639 psError(PS_ERR_UNKNOWN, false, "failed to add item node"); 20640 psFree(md); 20641 return false; 20642 } 20643 20644 20645 return md; 20646 } 20647 20648 magicInputSkyfileRow *magicInputSkyfileObjectFromMetadata(psMetadata *md) 20649 { 20650 20651 bool status = false; 20652 psS64 magic_id = psMetadataLookupS64(&status, md, "magic_id"); 20653 if (!status) { 20654 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item magic_id"); 20655 return false; 20656 } 20657 psS64 diff_id = psMetadataLookupS64(&status, md, "diff_id"); 20658 if (!status) { 20659 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item diff_id"); 20660 return false; 20661 } 20662 char* node = psMetadataLookupPtr(&status, md, "node"); 20663 if (!status) { 20664 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item node"); 20665 return false; 20666 } 20667 20668 return magicInputSkyfileRowAlloc(magic_id, diff_id, node); 20669 } 20670 psArray *magicInputSkyfileSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) 20671 { 20672 psArray *rowSet; 20673 psArray *returnSet; 20674 psU64 i; 20675 20676 rowSet = psDBSelectRows(dbh, MAGICINPUTSKYFILE_TABLE_NAME, where, limit); 20677 if (!rowSet) { 20678 return NULL; 20679 } 20680 20681 // convert psMetadata rows to row objects 20682 20683 returnSet = psArrayAllocEmpty(rowSet->n); 20684 20685 for (i = 0; i < rowSet->n; i++) { 20686 magicInputSkyfileRow *object = magicInputSkyfileObjectFromMetadata(rowSet->data[i]); 20687 psArrayAdd(returnSet, 0, object); 20688 psFree(object); 20689 } 20690 20691 psFree(rowSet); 20692 20693 return returnSet; 20694 } 20695 bool magicInputSkyfileDeleteObject(psDB *dbh, const magicInputSkyfileRow *object) 20696 { 20697 psMetadata *where = magicInputSkyfileMetadataFromObject(object); 20698 long long count = psDBDeleteRows(dbh, MAGICINPUTSKYFILE_TABLE_NAME, where, 0); 20699 psFree(where); 20700 if (count < 0) { 20701 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicInputSkyfile"); 20702 return false; 20703 } 20704 if (count > 1) { 20705 // XXX should this be a psAbort() instead? It is possible that 20706 // having an object match multiple rows was by design. 20707 psError(PS_ERR_UNKNOWN, true, "magicInputSkyfileRow object matched more then one row. Check your database schema"); 20708 return false; 20709 } 20710 20711 return true; 20712 } 20713 long long magicInputSkyfileDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit) 20714 { 20715 long long deleted = 0; 20716 20717 for (long long i = 0; i < objects->n; i++) { 20718 magicInputSkyfileRow *object = objects->data[i]; 20719 psMetadata *where = magicInputSkyfileMetadataFromObject(object); 20720 long long count = psDBDeleteRows(dbh, MAGICINPUTSKYFILE_TABLE_NAME, where, limit); 20721 psFree(where); 20722 if (count < 0) { 20723 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicInputSkyfile"); 20724 return count; 20725 } 20726 20727 deleted += count; 20728 } 20729 20730 return deleted; 20731 } 20732 bool magicInputSkyfilePrintObjects(FILE *stream, psArray *objects, bool mdcf) 20733 { 20734 PS_ASSERT_PTR_NON_NULL(objects, false); 20735 20736 psMetadata *output = psMetadataAlloc(); 20737 for (long i = 0; i < psArrayLength(objects); i++) { 20738 psMetadata *md = magicInputSkyfileMetadataFromObject(objects->data[i]); 20739 if (!psMetadataAddMetadata( 20740 output, 20741 PS_LIST_TAIL, 20742 MAGICINPUTSKYFILE_TABLE_NAME, 20743 PS_META_DUPLICATE_OK, 20744 NULL, 20745 md 20746 )) { 20747 psError(PS_ERR_UNKNOWN, false, "failed to add metadata"); 20748 psFree(md); 20749 psFree(output); 20750 return false; 20751 } 20752 psFree(md); 20753 } 20754 20755 if (!ippdbPrintMetadataRaw(stream, output, mdcf)) { 20756 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 20757 psFree(output); 20758 } 20759 psFree(output); 20760 20761 return true; 20762 } 20763 bool magicInputSkyfilePrintObject(FILE *stream, magicInputSkyfileRow *object, bool mdcf) 20764 { 20765 PS_ASSERT_PTR_NON_NULL(object, false); 20766 20767 psMetadata *md = magicInputSkyfileMetadataFromObject(object); 20768 20769 if (!ippdbPrintMetadataRaw(stream, md, mdcf)) { 20770 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 20771 psFree(md); 20772 } 20773 20774 psFree(md); 20775 20776 return true; 20777 } 20778 static void magicTreeRowFree(magicTreeRow *object); 20779 20780 magicTreeRow *magicTreeRowAlloc(psS64 magic_id, const char *node, const char *dep) 20781 { 20782 magicTreeRow *_object; 20783 20784 _object = psAlloc(sizeof(magicTreeRow)); 20785 psMemSetDeallocator(_object, (psFreeFunc)magicTreeRowFree); 20786 20787 _object->magic_id = magic_id; 20788 _object->node = psStringCopy(node); 20789 _object->dep = psStringCopy(dep); 20790 20791 return _object; 20792 } 20793 20794 static void magicTreeRowFree(magicTreeRow *object) 20795 { 20796 psFree(object->node); 20797 psFree(object->dep); 20798 } 20799 20800 bool magicTreeCreateTable(psDB *dbh) 20801 { 20802 psMetadata *md = psMetadataAlloc(); 20803 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, "Key fkey(magic_id) ref magicRun(magic_id)", 0)) { 20804 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 20805 psFree(md); 20806 return false; 20807 } 20808 if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_STRING, "Key INDEX(magic_id, node)", "64")) { 20809 psError(PS_ERR_UNKNOWN, false, "failed to add item node"); 20810 psFree(md); 20811 return false; 20812 } 20813 if (!psMetadataAdd(md, PS_LIST_TAIL, "dep", PS_DATA_STRING, "Key", "64")) { 20814 psError(PS_ERR_UNKNOWN, false, "failed to add item dep"); 20815 psFree(md); 20816 return false; 20817 } 20818 20819 bool status = psDBCreateTable(dbh, MAGICTREE_TABLE_NAME, md); 20820 20821 psFree(md); 20822 20823 return status; 20824 } 20825 20826 bool magicTreeDropTable(psDB *dbh) 20827 { 20828 return psDBDropTable(dbh, MAGICTREE_TABLE_NAME); 20829 } 20830 20831 bool magicTreeInsert(psDB * dbh, psS64 magic_id, const char *node, const char *dep) 20832 { 20833 psMetadata *md = psMetadataAlloc(); 20834 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, NULL, magic_id)) { 20835 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 20836 psFree(md); 20837 return false; 20838 } 20839 if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_STRING, NULL, node)) { 20840 psError(PS_ERR_UNKNOWN, false, "failed to add item node"); 20841 psFree(md); 20842 return false; 20843 } 20844 if (!psMetadataAdd(md, PS_LIST_TAIL, "dep", PS_DATA_STRING, NULL, dep)) { 20845 psError(PS_ERR_UNKNOWN, false, "failed to add item dep"); 20846 psFree(md); 20847 return false; 20848 } 20849 20850 bool status = psDBInsertOneRow(dbh, MAGICTREE_TABLE_NAME, md); 20851 psFree(md); 20852 20853 return status; 20854 } 20855 20856 long long magicTreeDelete(psDB *dbh, const psMetadata *where, unsigned long long limit) 20857 { 20858 long long deleted = 0; 20859 20860 long long count = psDBDeleteRows(dbh, MAGICTREE_TABLE_NAME, where, limit); 20861 if (count < 0) { 20862 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicTree"); 20863 return count; 20864 20865 deleted += count; 20866 } 20867 20868 return deleted; 20869 } 20870 bool magicTreeInsertObject(psDB *dbh, magicTreeRow *object) 20871 { 20872 return magicTreeInsert(dbh, object->magic_id, object->node, object->dep); 20873 } 20874 20875 bool magicTreeInsertObjects(psDB *dbh, psArray *objects) 20876 { 20877 for (long i = 0; i < psArrayLength(objects); i++) { 20878 if (!magicTreeInsertObject(dbh, objects->data[i])) { 20879 return false; 20880 } 20881 } 20882 20883 return true; 20884 } 20885 20886 bool magicTreeInsertFits(psDB *dbh, const psFits *fits) 20887 { 20888 psArray *rowSet; 20889 20890 // move to (the first?) extension named MAGICTREE_TABLE_NAME 20891 if (!psFitsMoveExtName(fits, MAGICTREE_TABLE_NAME)) { 20892 psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", MAGICTREE_TABLE_NAME); 20893 return false; 20894 } 20895 20896 // check HDU type 20897 if (psFitsGetExtType(fits) != PS_FITS_TYPE_BINARY_TABLE) { 20898 psError(PS_ERR_UNKNOWN, true, "FITS HDU type is not PS_FITS_TYPE_BINARY_TABLE"); 20899 return false; 20900 } 20901 20902 // read fits table 20903 rowSet = psFitsReadTable(fits); 20904 if (!rowSet) { 20905 psError(PS_ERR_UNKNOWN, true, "FITS read error or FITS table is empty"); 20906 psFree(rowSet); 20907 return false; 20908 } 20909 20910 if (!psDBInsertRows(dbh, MAGICTREE_TABLE_NAME, rowSet)) { 20911 psError(PS_ERR_UNKNOWN, false, "databse insert failed"); 20912 psFree(rowSet); 20913 return false; 20914 } 20915 20916 psFree(rowSet); 20917 20918 return true; 20919 } 20920 20921 bool magicTreeSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit) 20922 { 20923 psArray *rowSet; 20924 20925 rowSet = psDBSelectRows(dbh, MAGICTREE_TABLE_NAME, where, limit); 20926 if (!rowSet) { 20927 return false; 20928 } 20929 20930 // output to fits 20931 if (!psFitsWriteTable(fits, NULL, rowSet, MAGICTREE_TABLE_NAME)) { 20932 psError(PS_ERR_UNKNOWN, false, "FITS table write failed"); 20933 psFree(rowSet); 20934 return false; 20935 } 20936 20937 psFree(rowSet); 20938 20939 return true; 20940 } 20941 20942 psMetadata *magicTreeMetadataFromObject(const magicTreeRow *object) 20943 { 20944 psMetadata *md = psMetadataAlloc(); 20945 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, NULL, object->magic_id)) { 20946 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 20947 psFree(md); 20948 return false; 20949 } 20950 if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_STRING, NULL, object->node)) { 20951 psError(PS_ERR_UNKNOWN, false, "failed to add item node"); 20952 psFree(md); 20953 return false; 20954 } 20955 if (!psMetadataAdd(md, PS_LIST_TAIL, "dep", PS_DATA_STRING, NULL, object->dep)) { 20956 psError(PS_ERR_UNKNOWN, false, "failed to add item dep"); 20957 psFree(md); 20958 return false; 20959 } 20960 20961 20962 return md; 20963 } 20964 20965 magicTreeRow *magicTreeObjectFromMetadata(psMetadata *md) 20966 { 20967 20968 bool status = false; 20969 psS64 magic_id = psMetadataLookupS64(&status, md, "magic_id"); 20970 if (!status) { 20971 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item magic_id"); 20972 return false; 20973 } 20974 char* node = psMetadataLookupPtr(&status, md, "node"); 20975 if (!status) { 20976 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item node"); 20977 return false; 20978 } 20979 char* dep = psMetadataLookupPtr(&status, md, "dep"); 20980 if (!status) { 20981 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item dep"); 20982 return false; 20983 } 20984 20985 return magicTreeRowAlloc(magic_id, node, dep); 20986 } 20987 psArray *magicTreeSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) 20988 { 20989 psArray *rowSet; 20990 psArray *returnSet; 20991 psU64 i; 20992 20993 rowSet = psDBSelectRows(dbh, MAGICTREE_TABLE_NAME, where, limit); 20994 if (!rowSet) { 20995 return NULL; 20996 } 20997 20998 // convert psMetadata rows to row objects 20999 21000 returnSet = psArrayAllocEmpty(rowSet->n); 21001 21002 for (i = 0; i < rowSet->n; i++) { 21003 magicTreeRow *object = magicTreeObjectFromMetadata(rowSet->data[i]); 21004 psArrayAdd(returnSet, 0, object); 21005 psFree(object); 21006 } 21007 21008 psFree(rowSet); 21009 21010 return returnSet; 21011 } 21012 bool magicTreeDeleteObject(psDB *dbh, const magicTreeRow *object) 21013 { 21014 psMetadata *where = magicTreeMetadataFromObject(object); 21015 long long count = psDBDeleteRows(dbh, MAGICTREE_TABLE_NAME, where, 0); 21016 psFree(where); 21017 if (count < 0) { 21018 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicTree"); 21019 return false; 21020 } 21021 if (count > 1) { 21022 // XXX should this be a psAbort() instead? It is possible that 21023 // having an object match multiple rows was by design. 21024 psError(PS_ERR_UNKNOWN, true, "magicTreeRow object matched more then one row. Check your database schema"); 21025 return false; 21026 } 21027 21028 return true; 21029 } 21030 long long magicTreeDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit) 21031 { 21032 long long deleted = 0; 21033 21034 for (long long i = 0; i < objects->n; i++) { 21035 magicTreeRow *object = objects->data[i]; 21036 psMetadata *where = magicTreeMetadataFromObject(object); 21037 long long count = psDBDeleteRows(dbh, MAGICTREE_TABLE_NAME, where, limit); 21038 psFree(where); 21039 if (count < 0) { 21040 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicTree"); 21041 return count; 21042 } 21043 21044 deleted += count; 21045 } 21046 21047 return deleted; 21048 } 21049 bool magicTreePrintObjects(FILE *stream, psArray *objects, bool mdcf) 21050 { 21051 PS_ASSERT_PTR_NON_NULL(objects, false); 21052 21053 psMetadata *output = psMetadataAlloc(); 21054 for (long i = 0; i < psArrayLength(objects); i++) { 21055 psMetadata *md = magicTreeMetadataFromObject(objects->data[i]); 21056 if (!psMetadataAddMetadata( 21057 output, 21058 PS_LIST_TAIL, 21059 MAGICTREE_TABLE_NAME, 21060 PS_META_DUPLICATE_OK, 21061 NULL, 21062 md 21063 )) { 21064 psError(PS_ERR_UNKNOWN, false, "failed to add metadata"); 21065 psFree(md); 21066 psFree(output); 21067 return false; 21068 } 21069 psFree(md); 21070 } 21071 21072 if (!ippdbPrintMetadataRaw(stream, output, mdcf)) { 21073 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 21074 psFree(output); 21075 } 21076 psFree(output); 21077 21078 return true; 21079 } 21080 bool magicTreePrintObject(FILE *stream, magicTreeRow *object, bool mdcf) 21081 { 21082 PS_ASSERT_PTR_NON_NULL(object, false); 21083 21084 psMetadata *md = magicTreeMetadataFromObject(object); 21085 21086 if (!ippdbPrintMetadataRaw(stream, md, mdcf)) { 21087 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 21088 psFree(md); 21089 } 21090 21091 psFree(md); 21092 21093 return true; 21094 } 21095 static void magicNodeResultRowFree(magicNodeResultRow *object); 21096 21097 magicNodeResultRow *magicNodeResultRowAlloc(psS64 magic_id, const char *node, const char *uri) 21098 { 21099 magicNodeResultRow *_object; 21100 21101 _object = psAlloc(sizeof(magicNodeResultRow)); 21102 psMemSetDeallocator(_object, (psFreeFunc)magicNodeResultRowFree); 21103 21104 _object->magic_id = magic_id; 21105 _object->node = psStringCopy(node); 21106 _object->uri = psStringCopy(uri); 21107 21108 return _object; 21109 } 21110 21111 static void magicNodeResultRowFree(magicNodeResultRow *object) 21112 { 21113 psFree(object->node); 21114 psFree(object->uri); 21115 } 21116 21117 bool magicNodeResultCreateTable(psDB *dbh) 21118 { 21119 psMetadata *md = psMetadataAlloc(); 21120 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, "Primary Key fkey(magic_id) ref magicRun(magic_id)", 0)) { 21121 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 21122 psFree(md); 21123 return false; 21124 } 21125 if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_STRING, "Primary Key fkey(magic_id, node) ref magicTree(magic_id, node)", "64")) { 21126 psError(PS_ERR_UNKNOWN, false, "failed to add item node"); 21127 psFree(md); 21128 return false; 21129 } 21130 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, "255")) { 21131 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 21132 psFree(md); 21133 return false; 21134 } 21135 21136 bool status = psDBCreateTable(dbh, MAGICNODERESULT_TABLE_NAME, md); 21137 21138 psFree(md); 21139 21140 return status; 21141 } 21142 21143 bool magicNodeResultDropTable(psDB *dbh) 21144 { 21145 return psDBDropTable(dbh, MAGICNODERESULT_TABLE_NAME); 21146 } 21147 21148 bool magicNodeResultInsert(psDB * dbh, psS64 magic_id, const char *node, const char *uri) 21149 { 21150 psMetadata *md = psMetadataAlloc(); 21151 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, NULL, magic_id)) { 21152 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 21153 psFree(md); 21154 return false; 21155 } 21156 if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_STRING, NULL, node)) { 21157 psError(PS_ERR_UNKNOWN, false, "failed to add item node"); 21158 psFree(md); 21159 return false; 21160 } 21161 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, uri)) { 21162 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 21163 psFree(md); 21164 return false; 21165 } 21166 21167 bool status = psDBInsertOneRow(dbh, MAGICNODERESULT_TABLE_NAME, md); 21168 psFree(md); 21169 21170 return status; 21171 } 21172 21173 long long magicNodeResultDelete(psDB *dbh, const psMetadata *where, unsigned long long limit) 21174 { 21175 long long deleted = 0; 21176 21177 long long count = psDBDeleteRows(dbh, MAGICNODERESULT_TABLE_NAME, where, limit); 21178 if (count < 0) { 21179 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicNodeResult"); 21180 return count; 21181 21182 deleted += count; 21183 } 21184 21185 return deleted; 21186 } 21187 bool magicNodeResultInsertObject(psDB *dbh, magicNodeResultRow *object) 21188 { 21189 return magicNodeResultInsert(dbh, object->magic_id, object->node, object->uri); 21190 } 21191 21192 bool magicNodeResultInsertObjects(psDB *dbh, psArray *objects) 21193 { 21194 for (long i = 0; i < psArrayLength(objects); i++) { 21195 if (!magicNodeResultInsertObject(dbh, objects->data[i])) { 21196 return false; 21197 } 21198 } 21199 21200 return true; 21201 } 21202 21203 bool magicNodeResultInsertFits(psDB *dbh, const psFits *fits) 21204 { 21205 psArray *rowSet; 21206 21207 // move to (the first?) extension named MAGICNODERESULT_TABLE_NAME 21208 if (!psFitsMoveExtName(fits, MAGICNODERESULT_TABLE_NAME)) { 21209 psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", MAGICNODERESULT_TABLE_NAME); 21210 return false; 21211 } 21212 21213 // check HDU type 21214 if (psFitsGetExtType(fits) != PS_FITS_TYPE_BINARY_TABLE) { 21215 psError(PS_ERR_UNKNOWN, true, "FITS HDU type is not PS_FITS_TYPE_BINARY_TABLE"); 21216 return false; 21217 } 21218 21219 // read fits table 21220 rowSet = psFitsReadTable(fits); 21221 if (!rowSet) { 21222 psError(PS_ERR_UNKNOWN, true, "FITS read error or FITS table is empty"); 21223 psFree(rowSet); 21224 return false; 21225 } 21226 21227 if (!psDBInsertRows(dbh, MAGICNODERESULT_TABLE_NAME, rowSet)) { 21228 psError(PS_ERR_UNKNOWN, false, "databse insert failed"); 21229 psFree(rowSet); 21230 return false; 21231 } 21232 21233 psFree(rowSet); 21234 21235 return true; 21236 } 21237 21238 bool magicNodeResultSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit) 21239 { 21240 psArray *rowSet; 21241 21242 rowSet = psDBSelectRows(dbh, MAGICNODERESULT_TABLE_NAME, where, limit); 21243 if (!rowSet) { 21244 return false; 21245 } 21246 21247 // output to fits 21248 if (!psFitsWriteTable(fits, NULL, rowSet, MAGICNODERESULT_TABLE_NAME)) { 21249 psError(PS_ERR_UNKNOWN, false, "FITS table write failed"); 21250 psFree(rowSet); 21251 return false; 21252 } 21253 21254 psFree(rowSet); 21255 21256 return true; 21257 } 21258 21259 psMetadata *magicNodeResultMetadataFromObject(const magicNodeResultRow *object) 21260 { 21261 psMetadata *md = psMetadataAlloc(); 21262 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, NULL, object->magic_id)) { 21263 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 21264 psFree(md); 21265 return false; 21266 } 21267 if (!psMetadataAdd(md, PS_LIST_TAIL, "node", PS_DATA_STRING, NULL, object->node)) { 21268 psError(PS_ERR_UNKNOWN, false, "failed to add item node"); 21269 psFree(md); 21270 return false; 21271 } 21272 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, object->uri)) { 21273 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 21274 psFree(md); 21275 return false; 21276 } 21277 21278 21279 return md; 21280 } 21281 21282 magicNodeResultRow *magicNodeResultObjectFromMetadata(psMetadata *md) 21283 { 21284 21285 bool status = false; 21286 psS64 magic_id = psMetadataLookupS64(&status, md, "magic_id"); 21287 if (!status) { 21288 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item magic_id"); 21289 return false; 21290 } 21291 char* node = psMetadataLookupPtr(&status, md, "node"); 21292 if (!status) { 21293 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item node"); 21294 return false; 21295 } 21296 char* uri = psMetadataLookupPtr(&status, md, "uri"); 21297 if (!status) { 21298 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item uri"); 21299 return false; 21300 } 21301 21302 return magicNodeResultRowAlloc(magic_id, node, uri); 21303 } 21304 psArray *magicNodeResultSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) 21305 { 21306 psArray *rowSet; 21307 psArray *returnSet; 21308 psU64 i; 21309 21310 rowSet = psDBSelectRows(dbh, MAGICNODERESULT_TABLE_NAME, where, limit); 21311 if (!rowSet) { 21312 return NULL; 21313 } 21314 21315 // convert psMetadata rows to row objects 21316 21317 returnSet = psArrayAllocEmpty(rowSet->n); 21318 21319 for (i = 0; i < rowSet->n; i++) { 21320 magicNodeResultRow *object = magicNodeResultObjectFromMetadata(rowSet->data[i]); 21321 psArrayAdd(returnSet, 0, object); 21322 psFree(object); 21323 } 21324 21325 psFree(rowSet); 21326 21327 return returnSet; 21328 } 21329 bool magicNodeResultDeleteObject(psDB *dbh, const magicNodeResultRow *object) 21330 { 21331 psMetadata *where = magicNodeResultMetadataFromObject(object); 21332 long long count = psDBDeleteRows(dbh, MAGICNODERESULT_TABLE_NAME, where, 0); 21333 psFree(where); 21334 if (count < 0) { 21335 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicNodeResult"); 21336 return false; 21337 } 21338 if (count > 1) { 21339 // XXX should this be a psAbort() instead? It is possible that 21340 // having an object match multiple rows was by design. 21341 psError(PS_ERR_UNKNOWN, true, "magicNodeResultRow object matched more then one row. Check your database schema"); 21342 return false; 21343 } 21344 21345 return true; 21346 } 21347 long long magicNodeResultDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit) 21348 { 21349 long long deleted = 0; 21350 21351 for (long long i = 0; i < objects->n; i++) { 21352 magicNodeResultRow *object = objects->data[i]; 21353 psMetadata *where = magicNodeResultMetadataFromObject(object); 21354 long long count = psDBDeleteRows(dbh, MAGICNODERESULT_TABLE_NAME, where, limit); 21355 psFree(where); 21356 if (count < 0) { 21357 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicNodeResult"); 21358 return count; 21359 } 21360 21361 deleted += count; 21362 } 21363 21364 return deleted; 21365 } 21366 bool magicNodeResultPrintObjects(FILE *stream, psArray *objects, bool mdcf) 21367 { 21368 PS_ASSERT_PTR_NON_NULL(objects, false); 21369 21370 psMetadata *output = psMetadataAlloc(); 21371 for (long i = 0; i < psArrayLength(objects); i++) { 21372 psMetadata *md = magicNodeResultMetadataFromObject(objects->data[i]); 21373 if (!psMetadataAddMetadata( 21374 output, 21375 PS_LIST_TAIL, 21376 MAGICNODERESULT_TABLE_NAME, 21377 PS_META_DUPLICATE_OK, 21378 NULL, 21379 md 21380 )) { 21381 psError(PS_ERR_UNKNOWN, false, "failed to add metadata"); 21382 psFree(md); 21383 psFree(output); 21384 return false; 21385 } 21386 psFree(md); 21387 } 21388 21389 if (!ippdbPrintMetadataRaw(stream, output, mdcf)) { 21390 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 21391 psFree(output); 21392 } 21393 psFree(output); 21394 21395 return true; 21396 } 21397 bool magicNodeResultPrintObject(FILE *stream, magicNodeResultRow *object, bool mdcf) 21398 { 21399 PS_ASSERT_PTR_NON_NULL(object, false); 21400 21401 psMetadata *md = magicNodeResultMetadataFromObject(object); 21402 21403 if (!ippdbPrintMetadataRaw(stream, md, mdcf)) { 21404 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 21405 psFree(md); 21406 } 21407 21408 psFree(md); 21409 21410 return true; 21411 } 21412 static void magicMaskRowFree(magicMaskRow *object); 21413 21414 magicMaskRow *magicMaskRowAlloc(psS64 magic_id, const char *uri) 21415 { 21416 magicMaskRow *_object; 21417 21418 _object = psAlloc(sizeof(magicMaskRow)); 21419 psMemSetDeallocator(_object, (psFreeFunc)magicMaskRowFree); 21420 21421 _object->magic_id = magic_id; 21422 _object->uri = psStringCopy(uri); 21423 21424 return _object; 21425 } 21426 21427 static void magicMaskRowFree(magicMaskRow *object) 21428 { 21429 psFree(object->uri); 21430 } 21431 21432 bool magicMaskCreateTable(psDB *dbh) 21433 { 21434 psMetadata *md = psMetadataAlloc(); 21435 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, "Primary Key fkey(magic_id) ref magicRun(magic_id)", 0)) { 21436 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 21437 psFree(md); 21438 return false; 21439 } 21440 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, "255")) { 21441 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 21442 psFree(md); 21443 return false; 21444 } 21445 21446 bool status = psDBCreateTable(dbh, MAGICMASK_TABLE_NAME, md); 21447 21448 psFree(md); 21449 21450 return status; 21451 } 21452 21453 bool magicMaskDropTable(psDB *dbh) 21454 { 21455 return psDBDropTable(dbh, MAGICMASK_TABLE_NAME); 21456 } 21457 21458 bool magicMaskInsert(psDB * dbh, psS64 magic_id, const char *uri) 21459 { 21460 psMetadata *md = psMetadataAlloc(); 21461 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, NULL, magic_id)) { 21462 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 21463 psFree(md); 21464 return false; 21465 } 21466 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, uri)) { 21467 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 21468 psFree(md); 21469 return false; 21470 } 21471 21472 bool status = psDBInsertOneRow(dbh, MAGICMASK_TABLE_NAME, md); 21473 psFree(md); 21474 21475 return status; 21476 } 21477 21478 long long magicMaskDelete(psDB *dbh, const psMetadata *where, unsigned long long limit) 21479 { 21480 long long deleted = 0; 21481 21482 long long count = psDBDeleteRows(dbh, MAGICMASK_TABLE_NAME, where, limit); 21483 if (count < 0) { 21484 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicMask"); 21485 return count; 21486 21487 deleted += count; 21488 } 21489 21490 return deleted; 21491 } 21492 bool magicMaskInsertObject(psDB *dbh, magicMaskRow *object) 21493 { 21494 return magicMaskInsert(dbh, object->magic_id, object->uri); 21495 } 21496 21497 bool magicMaskInsertObjects(psDB *dbh, psArray *objects) 21498 { 21499 for (long i = 0; i < psArrayLength(objects); i++) { 21500 if (!magicMaskInsertObject(dbh, objects->data[i])) { 21501 return false; 21502 } 21503 } 21504 21505 return true; 21506 } 21507 21508 bool magicMaskInsertFits(psDB *dbh, const psFits *fits) 21509 { 21510 psArray *rowSet; 21511 21512 // move to (the first?) extension named MAGICMASK_TABLE_NAME 21513 if (!psFitsMoveExtName(fits, MAGICMASK_TABLE_NAME)) { 21514 psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", MAGICMASK_TABLE_NAME); 21515 return false; 21516 } 21517 21518 // check HDU type 21519 if (psFitsGetExtType(fits) != PS_FITS_TYPE_BINARY_TABLE) { 21520 psError(PS_ERR_UNKNOWN, true, "FITS HDU type is not PS_FITS_TYPE_BINARY_TABLE"); 21521 return false; 21522 } 21523 21524 // read fits table 21525 rowSet = psFitsReadTable(fits); 21526 if (!rowSet) { 21527 psError(PS_ERR_UNKNOWN, true, "FITS read error or FITS table is empty"); 21528 psFree(rowSet); 21529 return false; 21530 } 21531 21532 if (!psDBInsertRows(dbh, MAGICMASK_TABLE_NAME, rowSet)) { 21533 psError(PS_ERR_UNKNOWN, false, "databse insert failed"); 21534 psFree(rowSet); 21535 return false; 21536 } 21537 21538 psFree(rowSet); 21539 21540 return true; 21541 } 21542 21543 bool magicMaskSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit) 21544 { 21545 psArray *rowSet; 21546 21547 rowSet = psDBSelectRows(dbh, MAGICMASK_TABLE_NAME, where, limit); 21548 if (!rowSet) { 21549 return false; 21550 } 21551 21552 // output to fits 21553 if (!psFitsWriteTable(fits, NULL, rowSet, MAGICMASK_TABLE_NAME)) { 21554 psError(PS_ERR_UNKNOWN, false, "FITS table write failed"); 21555 psFree(rowSet); 21556 return false; 21557 } 21558 21559 psFree(rowSet); 21560 21561 return true; 21562 } 21563 21564 psMetadata *magicMaskMetadataFromObject(const magicMaskRow *object) 21565 { 21566 psMetadata *md = psMetadataAlloc(); 21567 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, NULL, object->magic_id)) { 21568 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 21569 psFree(md); 21570 return false; 21571 } 21572 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, object->uri)) { 21573 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 21574 psFree(md); 21575 return false; 21576 } 21577 21578 21579 return md; 21580 } 21581 21582 magicMaskRow *magicMaskObjectFromMetadata(psMetadata *md) 21583 { 21584 21585 bool status = false; 21586 psS64 magic_id = psMetadataLookupS64(&status, md, "magic_id"); 21587 if (!status) { 21588 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item magic_id"); 21589 return false; 21590 } 21591 char* uri = psMetadataLookupPtr(&status, md, "uri"); 21592 if (!status) { 21593 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item uri"); 21594 return false; 21595 } 21596 21597 return magicMaskRowAlloc(magic_id, uri); 21598 } 21599 psArray *magicMaskSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) 21600 { 21601 psArray *rowSet; 21602 psArray *returnSet; 21603 psU64 i; 21604 21605 rowSet = psDBSelectRows(dbh, MAGICMASK_TABLE_NAME, where, limit); 21606 if (!rowSet) { 21607 return NULL; 21608 } 21609 21610 // convert psMetadata rows to row objects 21611 21612 returnSet = psArrayAllocEmpty(rowSet->n); 21613 21614 for (i = 0; i < rowSet->n; i++) { 21615 magicMaskRow *object = magicMaskObjectFromMetadata(rowSet->data[i]); 21616 psArrayAdd(returnSet, 0, object); 21617 psFree(object); 21618 } 21619 21620 psFree(rowSet); 21621 21622 return returnSet; 21623 } 21624 bool magicMaskDeleteObject(psDB *dbh, const magicMaskRow *object) 21625 { 21626 psMetadata *where = magicMaskMetadataFromObject(object); 21627 long long count = psDBDeleteRows(dbh, MAGICMASK_TABLE_NAME, where, 0); 21628 psFree(where); 21629 if (count < 0) { 21630 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicMask"); 21631 return false; 21632 } 21633 if (count > 1) { 21634 // XXX should this be a psAbort() instead? It is possible that 21635 // having an object match multiple rows was by design. 21636 psError(PS_ERR_UNKNOWN, true, "magicMaskRow object matched more then one row. Check your database schema"); 21637 return false; 21638 } 21639 21640 return true; 21641 } 21642 long long magicMaskDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit) 21643 { 21644 long long deleted = 0; 21645 21646 for (long long i = 0; i < objects->n; i++) { 21647 magicMaskRow *object = objects->data[i]; 21648 psMetadata *where = magicMaskMetadataFromObject(object); 21649 long long count = psDBDeleteRows(dbh, MAGICMASK_TABLE_NAME, where, limit); 21650 psFree(where); 21651 if (count < 0) { 21652 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicMask"); 21653 return count; 21654 } 21655 21656 deleted += count; 21657 } 21658 21659 return deleted; 21660 } 21661 bool magicMaskPrintObjects(FILE *stream, psArray *objects, bool mdcf) 21662 { 21663 PS_ASSERT_PTR_NON_NULL(objects, false); 21664 21665 psMetadata *output = psMetadataAlloc(); 21666 for (long i = 0; i < psArrayLength(objects); i++) { 21667 psMetadata *md = magicMaskMetadataFromObject(objects->data[i]); 21668 if (!psMetadataAddMetadata( 21669 output, 21670 PS_LIST_TAIL, 21671 MAGICMASK_TABLE_NAME, 21672 PS_META_DUPLICATE_OK, 21673 NULL, 21674 md 21675 )) { 21676 psError(PS_ERR_UNKNOWN, false, "failed to add metadata"); 21677 psFree(md); 21678 psFree(output); 21679 return false; 21680 } 21681 psFree(md); 21682 } 21683 21684 if (!ippdbPrintMetadataRaw(stream, output, mdcf)) { 21685 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 21686 psFree(output); 21687 } 21688 psFree(output); 21689 21690 return true; 21691 } 21692 bool magicMaskPrintObject(FILE *stream, magicMaskRow *object, bool mdcf) 21693 { 21694 PS_ASSERT_PTR_NON_NULL(object, false); 21695 21696 psMetadata *md = magicMaskMetadataFromObject(object); 21697 21698 if (!ippdbPrintMetadataRaw(stream, md, mdcf)) { 21699 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 21700 psFree(md); 21701 } 21702 21703 psFree(md); 21704 21705 return true; 21706 } 21707 static void magicSkyfileMaskRowFree(magicSkyfileMaskRow *object); 21708 21709 magicSkyfileMaskRow *magicSkyfileMaskRowAlloc(psS64 magic_id, psS64 diff_id, const char *uri) 21710 { 21711 magicSkyfileMaskRow *_object; 21712 21713 _object = psAlloc(sizeof(magicSkyfileMaskRow)); 21714 psMemSetDeallocator(_object, (psFreeFunc)magicSkyfileMaskRowFree); 21715 21716 _object->magic_id = magic_id; 21717 _object->diff_id = diff_id; 21718 _object->uri = psStringCopy(uri); 21719 21720 return _object; 21721 } 21722 21723 static void magicSkyfileMaskRowFree(magicSkyfileMaskRow *object) 21724 { 21725 psFree(object->uri); 21726 } 21727 21728 bool magicSkyfileMaskCreateTable(psDB *dbh) 21729 { 21730 psMetadata *md = psMetadataAlloc(); 21731 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, "Primary Key fkey(magic_id) ref magicRun(magic_id)", 0)) { 21732 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 21733 psFree(md); 21734 return false; 21735 } 21736 if (!psMetadataAdd(md, PS_LIST_TAIL, "diff_id", PS_DATA_S64, "Primary Key fkey(magic_id, diff_id) ref magicInputSkyfile(magic_id, diff_id)", 0)) { 21737 psError(PS_ERR_UNKNOWN, false, "failed to add item diff_id"); 21738 psFree(md); 21739 return false; 21740 } 21741 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, "fkey(magic_id) ref magicMask(magic_id)", "255")) { 21742 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 21743 psFree(md); 21744 return false; 21745 } 21746 21747 bool status = psDBCreateTable(dbh, MAGICSKYFILEMASK_TABLE_NAME, md); 21748 21749 psFree(md); 21750 21751 return status; 21752 } 21753 21754 bool magicSkyfileMaskDropTable(psDB *dbh) 21755 { 21756 return psDBDropTable(dbh, MAGICSKYFILEMASK_TABLE_NAME); 21757 } 21758 21759 bool magicSkyfileMaskInsert(psDB * dbh, psS64 magic_id, psS64 diff_id, const char *uri) 21760 { 21761 psMetadata *md = psMetadataAlloc(); 21762 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, NULL, magic_id)) { 21763 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 21764 psFree(md); 21765 return false; 21766 } 21767 if (!psMetadataAdd(md, PS_LIST_TAIL, "diff_id", PS_DATA_S64, NULL, diff_id)) { 21768 psError(PS_ERR_UNKNOWN, false, "failed to add item diff_id"); 21769 psFree(md); 21770 return false; 21771 } 21772 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, uri)) { 21773 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 21774 psFree(md); 21775 return false; 21776 } 21777 21778 bool status = psDBInsertOneRow(dbh, MAGICSKYFILEMASK_TABLE_NAME, md); 21779 psFree(md); 21780 21781 return status; 21782 } 21783 21784 long long magicSkyfileMaskDelete(psDB *dbh, const psMetadata *where, unsigned long long limit) 21785 { 21786 long long deleted = 0; 21787 21788 long long count = psDBDeleteRows(dbh, MAGICSKYFILEMASK_TABLE_NAME, where, limit); 21789 if (count < 0) { 21790 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicSkyfileMask"); 21791 return count; 21792 21793 deleted += count; 21794 } 21795 21796 return deleted; 21797 } 21798 bool magicSkyfileMaskInsertObject(psDB *dbh, magicSkyfileMaskRow *object) 21799 { 21800 return magicSkyfileMaskInsert(dbh, object->magic_id, object->diff_id, object->uri); 21801 } 21802 21803 bool magicSkyfileMaskInsertObjects(psDB *dbh, psArray *objects) 21804 { 21805 for (long i = 0; i < psArrayLength(objects); i++) { 21806 if (!magicSkyfileMaskInsertObject(dbh, objects->data[i])) { 21807 return false; 21808 } 21809 } 21810 21811 return true; 21812 } 21813 21814 bool magicSkyfileMaskInsertFits(psDB *dbh, const psFits *fits) 21815 { 21816 psArray *rowSet; 21817 21818 // move to (the first?) extension named MAGICSKYFILEMASK_TABLE_NAME 21819 if (!psFitsMoveExtName(fits, MAGICSKYFILEMASK_TABLE_NAME)) { 21820 psError(PS_ERR_UNKNOWN, true, "failed to find FITS extension %s", MAGICSKYFILEMASK_TABLE_NAME); 21821 return false; 21822 } 21823 21824 // check HDU type 21825 if (psFitsGetExtType(fits) != PS_FITS_TYPE_BINARY_TABLE) { 21826 psError(PS_ERR_UNKNOWN, true, "FITS HDU type is not PS_FITS_TYPE_BINARY_TABLE"); 21827 return false; 21828 } 21829 21830 // read fits table 21831 rowSet = psFitsReadTable(fits); 21832 if (!rowSet) { 21833 psError(PS_ERR_UNKNOWN, true, "FITS read error or FITS table is empty"); 21834 psFree(rowSet); 21835 return false; 21836 } 21837 21838 if (!psDBInsertRows(dbh, MAGICSKYFILEMASK_TABLE_NAME, rowSet)) { 21839 psError(PS_ERR_UNKNOWN, false, "databse insert failed"); 21840 psFree(rowSet); 21841 return false; 21842 } 21843 21844 psFree(rowSet); 21845 21846 return true; 21847 } 21848 21849 bool magicSkyfileMaskSelectRowsFits(psDB *dbh, psFits *fits, const psMetadata *where, unsigned long long limit) 21850 { 21851 psArray *rowSet; 21852 21853 rowSet = psDBSelectRows(dbh, MAGICSKYFILEMASK_TABLE_NAME, where, limit); 21854 if (!rowSet) { 21855 return false; 21856 } 21857 21858 // output to fits 21859 if (!psFitsWriteTable(fits, NULL, rowSet, MAGICSKYFILEMASK_TABLE_NAME)) { 21860 psError(PS_ERR_UNKNOWN, false, "FITS table write failed"); 21861 psFree(rowSet); 21862 return false; 21863 } 21864 21865 psFree(rowSet); 21866 21867 return true; 21868 } 21869 21870 psMetadata *magicSkyfileMaskMetadataFromObject(const magicSkyfileMaskRow *object) 21871 { 21872 psMetadata *md = psMetadataAlloc(); 21873 if (!psMetadataAdd(md, PS_LIST_TAIL, "magic_id", PS_DATA_S64, NULL, object->magic_id)) { 21874 psError(PS_ERR_UNKNOWN, false, "failed to add item magic_id"); 21875 psFree(md); 21876 return false; 21877 } 21878 if (!psMetadataAdd(md, PS_LIST_TAIL, "diff_id", PS_DATA_S64, NULL, object->diff_id)) { 21879 psError(PS_ERR_UNKNOWN, false, "failed to add item diff_id"); 21880 psFree(md); 21881 return false; 21882 } 21883 if (!psMetadataAdd(md, PS_LIST_TAIL, "uri", PS_DATA_STRING, NULL, object->uri)) { 21884 psError(PS_ERR_UNKNOWN, false, "failed to add item uri"); 21885 psFree(md); 21886 return false; 21887 } 21888 21889 21890 return md; 21891 } 21892 21893 magicSkyfileMaskRow *magicSkyfileMaskObjectFromMetadata(psMetadata *md) 21894 { 21895 21896 bool status = false; 21897 psS64 magic_id = psMetadataLookupS64(&status, md, "magic_id"); 21898 if (!status) { 21899 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item magic_id"); 21900 return false; 21901 } 21902 psS64 diff_id = psMetadataLookupS64(&status, md, "diff_id"); 21903 if (!status) { 21904 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item diff_id"); 21905 return false; 21906 } 21907 char* uri = psMetadataLookupPtr(&status, md, "uri"); 21908 if (!status) { 21909 psError(PS_ERR_UNKNOWN, true, "failed to lookup value for item uri"); 21910 return false; 21911 } 21912 21913 return magicSkyfileMaskRowAlloc(magic_id, diff_id, uri); 21914 } 21915 psArray *magicSkyfileMaskSelectRowObjects(psDB *dbh, const psMetadata *where, unsigned long long limit) 21916 { 21917 psArray *rowSet; 21918 psArray *returnSet; 21919 psU64 i; 21920 21921 rowSet = psDBSelectRows(dbh, MAGICSKYFILEMASK_TABLE_NAME, where, limit); 21922 if (!rowSet) { 21923 return NULL; 21924 } 21925 21926 // convert psMetadata rows to row objects 21927 21928 returnSet = psArrayAllocEmpty(rowSet->n); 21929 21930 for (i = 0; i < rowSet->n; i++) { 21931 magicSkyfileMaskRow *object = magicSkyfileMaskObjectFromMetadata(rowSet->data[i]); 21932 psArrayAdd(returnSet, 0, object); 21933 psFree(object); 21934 } 21935 21936 psFree(rowSet); 21937 21938 return returnSet; 21939 } 21940 bool magicSkyfileMaskDeleteObject(psDB *dbh, const magicSkyfileMaskRow *object) 21941 { 21942 psMetadata *where = magicSkyfileMaskMetadataFromObject(object); 21943 long long count = psDBDeleteRows(dbh, MAGICSKYFILEMASK_TABLE_NAME, where, 0); 21944 psFree(where); 21945 if (count < 0) { 21946 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicSkyfileMask"); 21947 return false; 21948 } 21949 if (count > 1) { 21950 // XXX should this be a psAbort() instead? It is possible that 21951 // having an object match multiple rows was by design. 21952 psError(PS_ERR_UNKNOWN, true, "magicSkyfileMaskRow object matched more then one row. Check your database schema"); 21953 return false; 21954 } 21955 21956 return true; 21957 } 21958 long long magicSkyfileMaskDeleteRowObjects(psDB *dbh, const psArray *objects, unsigned long long limit) 21959 { 21960 long long deleted = 0; 21961 21962 for (long long i = 0; i < objects->n; i++) { 21963 magicSkyfileMaskRow *object = objects->data[i]; 21964 psMetadata *where = magicSkyfileMaskMetadataFromObject(object); 21965 long long count = psDBDeleteRows(dbh, MAGICSKYFILEMASK_TABLE_NAME, where, limit); 21966 psFree(where); 21967 if (count < 0) { 21968 psError(PS_ERR_UNKNOWN, true, "failed to delete row from magicSkyfileMask"); 21969 return count; 21970 } 21971 21972 deleted += count; 21973 } 21974 21975 return deleted; 21976 } 21977 bool magicSkyfileMaskPrintObjects(FILE *stream, psArray *objects, bool mdcf) 21978 { 21979 PS_ASSERT_PTR_NON_NULL(objects, false); 21980 21981 psMetadata *output = psMetadataAlloc(); 21982 for (long i = 0; i < psArrayLength(objects); i++) { 21983 psMetadata *md = magicSkyfileMaskMetadataFromObject(objects->data[i]); 21984 if (!psMetadataAddMetadata( 21985 output, 21986 PS_LIST_TAIL, 21987 MAGICSKYFILEMASK_TABLE_NAME, 21988 PS_META_DUPLICATE_OK, 21989 NULL, 21990 md 21991 )) { 21992 psError(PS_ERR_UNKNOWN, false, "failed to add metadata"); 21993 psFree(md); 21994 psFree(output); 21995 return false; 21996 } 21997 psFree(md); 21998 } 21999 22000 if (!ippdbPrintMetadataRaw(stream, output, mdcf)) { 22001 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 22002 psFree(output); 22003 } 22004 psFree(output); 22005 22006 return true; 22007 } 22008 bool magicSkyfileMaskPrintObject(FILE *stream, magicSkyfileMaskRow *object, bool mdcf) 22009 { 22010 PS_ASSERT_PTR_NON_NULL(object, false); 22011 22012 psMetadata *md = magicSkyfileMaskMetadataFromObject(object); 22013 22014 if (!ippdbPrintMetadataRaw(stream, md, mdcf)) { 22015 psError(PS_ERR_UNKNOWN, false, "failed to print metadata"); 22016 psFree(md); 22017 } 22018 22019 psFree(md); 22020 22021 return true; 22022 } -
trunk/ippdb/src/ippdb.h
r15420 r15421 125 125 ); 126 126 127 /** pzDataStoreRow data structure 128 * 129 * Structure for representing a single row of pzDataStore table data. 130 */ 131 132 typedef struct { 133 char *camera; 134 char *telescope; 135 char *uri; 136 } pzDataStoreRow; 137 138 /** Creates a new pzDataStoreRow object 139 * 140 * @return A new pzDataStoreRow object or NULL on failure. 141 */ 142 143 pzDataStoreRow *pzDataStoreRowAlloc( 144 const char *camera, 145 const char *telescope, 146 const char *uri 147 ); 148 149 /** Creates a new pzDataStore table 150 * 151 * @return true on success 152 */ 153 154 bool pzDataStoreCreateTable( 155 psDB *dbh ///< Database handle 156 ); 157 158 /** Deletes a pzDataStore table 159 * 160 * @return true on success 161 */ 162 163 bool pzDataStoreDropTable( 164 psDB *dbh ///< Database handle 165 ); 166 167 /** Insert a single row into a table 168 * 169 * This function constructs and inserts a single row based on it's parameters. 170 * 171 * @return true on success 172 */ 173 174 bool pzDataStoreInsert( 175 psDB *dbh, ///< Database handle 176 const char *camera, 177 const char *telescope, 178 const char *uri 179 ); 180 181 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 182 * 183 * @return A The number of rows removed or a negative value on error 184 */ 185 186 long long pzDataStoreDelete( 187 psDB *dbh, ///< Database handle 188 const psMetadata *where, ///< Row match criteria 189 unsigned long long limit ///< Maximum number of elements to delete 190 ); 191 192 /** Insert a single pzDataStoreRow object into a table 193 * 194 * This function constructs and inserts a single row based on it's parameters. 195 * 196 * @return true on success 197 */ 198 199 bool pzDataStoreInsertObject( 200 psDB *dbh, ///< Database handle 201 pzDataStoreRow *object ///< pzDataStoreRow object 202 ); 203 204 /** Insert an array of pzDataStoreRow object into a table 205 * 206 * This function constructs and inserts multiple rows based on it's parameters. 207 * 208 * @return true on success 209 */ 210 211 bool pzDataStoreInsertObjects( 212 psDB *dbh, ///< Database handle 213 psArray *objects ///< array of pzDataStoreRow objects 214 ); 215 216 /** Insert data from a binary FITS table pzDataStoreRow into the database 217 * 218 * This function expects a psFits object with a FITS table as the first 219 * extension. The table must have at least one row of data in it, that is of 220 * the appropriate format (number of columns and their type). All other 221 * extensions are ignored. 222 * 223 * @return true on success 224 */ 225 226 bool pzDataStoreInsertFits( 227 psDB *dbh, ///< Database handle 228 const psFits *fits ///< psFits object 229 ); 230 231 /** Selects up to limit from the database and returns them in a binary FITS table 232 * 233 * This function assumes an empty psFits object and will create a FITS table 234 * as the first extension. 235 * 236 * See psDBSelectRows() for documentation on the format of where. 237 * 238 * @return true on success 239 */ 240 241 bool pzDataStoreSelectRowsFits( 242 psDB *dbh, ///< Database handle 243 psFits *fits, ///< psFits object 244 const psMetadata *where, ///< Row match criteria 245 unsigned long long limit ///< Maximum number of elements to return 246 ); 247 248 /** Convert a pzDataStoreRow into an equivalent psMetadata 249 * 250 * @return A psMetadata pointer or NULL on error 251 */ 252 253 psMetadata *pzDataStoreMetadataFromObject( 254 const pzDataStoreRow *object ///< fooRow to convert into a psMetadata 255 ); 256 257 /** Convert a psMetadata into an equivalent fooRow 258 * 259 * @return A pzDataStoreRow pointer or NULL on error 260 */ 261 262 pzDataStoreRow *pzDataStoreObjectFromMetadata( 263 psMetadata *md ///< psMetadata to convert into a fooRow 264 ); 265 /** Selects up to limit rows from the database and returns as pzDataStoreRow objects in a psArray 266 * 267 * See psDBSelectRows() for documentation on the format of where. 268 * 269 * @return A psArray pointer or NULL on error 270 */ 271 272 psArray *pzDataStoreSelectRowObjects( 273 psDB *dbh, ///< Database handle 274 const psMetadata *where, ///< Row match criteria 275 unsigned long long limit ///< Maximum number of elements to return 276 ); 277 /** Deletes a row from the database coresponding to an pzDataStore 278 * 279 * Note that a 'where' search psMetadata is constructed from each object and 280 * used to find rows to delete. 281 * 282 * @return A The number of rows removed or a negative value on error 283 */ 284 285 bool pzDataStoreDeleteObject( 286 psDB *dbh, ///< Database handle 287 const pzDataStoreRow *object ///< Object to delete 288 ); 289 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 290 * 291 * Note that a 'where' search psMetadata is constructed from each object and 292 * used to find rows to delete. 293 * 294 * @return A The number of rows removed or a negative value on error 295 */ 296 297 long long pzDataStoreDeleteRowObjects( 298 psDB *dbh, ///< Database handle 299 const psArray *objects, ///< Array of objects to delete 300 unsigned long long limit ///< Maximum number of elements to delete 301 ); 302 /** Formats and prints an array of pzDataStoreRow objects 303 * 304 * When mdcf is set the formated output is in psMetadataConfig 305 * format, otherwise it is in a simple tabular format. 306 * 307 * @return true on success 308 */ 309 310 bool pzDataStorePrintObjects( 311 FILE *stream, ///< a stream 312 psArray *objects, ///< An array of pzDataStoreRow objects 313 bool mdcf ///< format as mdconfig or simple 314 ); 315 /** Formats and prints an pzDataStoreRow object 316 * 317 * When mdcf is set the formated output is in psMetadataConfig 318 * format, otherwise it is in a simple tabular format. 319 * 320 * @return true on success 321 */ 322 323 bool pzDataStorePrintObject( 324 FILE *stream, ///< a stream 325 pzDataStoreRow *object, ///< an pzDataStoreRow object 326 bool mdcf ///< format as mdconfig or simple 327 ); 127 328 /** summitExpRow data structure 128 329 * … … 769 970 char *class; 770 971 char *class_id; 771 psS64 exp_id;772 972 } pzPendingImfileRow; 773 973 … … 782 982 const char *telescope, 783 983 const char *class, 784 const char *class_id, 785 psS64 exp_id 984 const char *class_id 786 985 ); 787 986 … … 817 1016 const char *telescope, 818 1017 const char *class, 819 const char *class_id, 820 psS64 exp_id 1018 const char *class_id 821 1019 ); 822 1020 … … 1180 1378 char *class; 1181 1379 char *class_id; 1182 psS64 exp_id;1183 1380 char *uri; 1184 1381 } pzDoneImfileRow; … … 1195 1392 const char *class, 1196 1393 const char *class_id, 1197 psS64 exp_id,1198 1394 const char *uri 1199 1395 ); … … 1231 1427 const char *class, 1232 1428 const char *class_id, 1233 psS64 exp_id,1234 1429 const char *uri 1235 1430 ); … … 1393 1588 char *tmp_telescope; 1394 1589 char *state; 1395 psS32 imfiles;1396 1590 char *workdir; 1397 1591 char *workdir_state; 1592 char *reduction; 1398 1593 } newExpRow; 1399 1594 … … 1409 1604 const char *tmp_telescope, 1410 1605 const char *state, 1411 psS32 imfiles,1412 1606 const char *workdir, 1413 const char *workdir_state 1607 const char *workdir_state, 1608 const char *reduction 1414 1609 ); 1415 1610 … … 1446 1641 const char *tmp_telescope, 1447 1642 const char *state, 1448 psS32 imfiles,1449 1643 const char *workdir, 1450 const char *workdir_state 1644 const char *workdir_state, 1645 const char *reduction 1451 1646 ); 1452 1647 … … 1812 2007 char *exp_tag; 1813 2008 char *exp_type; 1814 psS32 imfiles;1815 2009 char *filelevel; 1816 2010 char *workdir; 2011 char *reduction; 1817 2012 char *filter; 1818 2013 psF32 airmass; … … 1851 2046 const char *exp_tag, 1852 2047 const char *exp_type, 1853 psS32 imfiles,1854 2048 const char *filelevel, 1855 2049 const char *workdir, 2050 const char *reduction, 1856 2051 const char *filter, 1857 2052 psF32 airmass, … … 1911 2106 const char *exp_tag, 1912 2107 const char *exp_type, 1913 psS32 imfiles,1914 2108 const char *filelevel, 1915 2109 const char *workdir, 2110 const char *reduction, 1916 2111 const char *filter, 1917 2112 psF32 airmass, … … 2574 2769 typedef struct { 2575 2770 psS64 chip_id; 2771 psS64 exp_id; 2576 2772 char *state; 2577 2773 char *workdir; … … 2590 2786 chipRunRow *chipRunRowAlloc( 2591 2787 psS64 chip_id, 2788 psS64 exp_id, 2592 2789 const char *state, 2593 2790 const char *workdir, … … 2627 2824 psDB *dbh, ///< Database handle 2628 2825 psS64 chip_id, 2826 psS64 exp_id, 2629 2827 const char *state, 2630 2828 const char *workdir, … … 2781 2979 FILE *stream, ///< a stream 2782 2980 chipRunRow *object, ///< an chipRunRow object 2783 bool mdcf ///< format as mdconfig or simple2784 );2785 /** chipInputImfileRow data structure2786 *2787 * Structure for representing a single row of chipInputImfile table data.2788 */2789 2790 typedef struct {2791 psS64 chip_id;2792 psS64 exp_id;2793 char *class_id;2794 } chipInputImfileRow;2795 2796 /** Creates a new chipInputImfileRow object2797 *2798 * @return A new chipInputImfileRow object or NULL on failure.2799 */2800 2801 chipInputImfileRow *chipInputImfileRowAlloc(2802 psS64 chip_id,2803 psS64 exp_id,2804 const char *class_id2805 );2806 2807 /** Creates a new chipInputImfile table2808 *2809 * @return true on success2810 */2811 2812 bool chipInputImfileCreateTable(2813 psDB *dbh ///< Database handle2814 );2815 2816 /** Deletes a chipInputImfile table2817 *2818 * @return true on success2819 */2820 2821 bool chipInputImfileDropTable(2822 psDB *dbh ///< Database handle2823 );2824 2825 /** Insert a single row into a table2826 *2827 * This function constructs and inserts a single row based on it's parameters.2828 *2829 * @return true on success2830 */2831 2832 bool chipInputImfileInsert(2833 psDB *dbh, ///< Database handle2834 psS64 chip_id,2835 psS64 exp_id,2836 const char *class_id2837 );2838 2839 /** Deletes up to limit rows from the database and returns the number of rows actually deleted.2840 *2841 * @return A The number of rows removed or a negative value on error2842 */2843 2844 long long chipInputImfileDelete(2845 psDB *dbh, ///< Database handle2846 const psMetadata *where, ///< Row match criteria2847 unsigned long long limit ///< Maximum number of elements to delete2848 );2849 2850 /** Insert a single chipInputImfileRow object into a table2851 *2852 * This function constructs and inserts a single row based on it's parameters.2853 *2854 * @return true on success2855 */2856 2857 bool chipInputImfileInsertObject(2858 psDB *dbh, ///< Database handle2859 chipInputImfileRow *object ///< chipInputImfileRow object2860 );2861 2862 /** Insert an array of chipInputImfileRow object into a table2863 *2864 * This function constructs and inserts multiple rows based on it's parameters.2865 *2866 * @return true on success2867 */2868 2869 bool chipInputImfileInsertObjects(2870 psDB *dbh, ///< Database handle2871 psArray *objects ///< array of chipInputImfileRow objects2872 );2873 2874 /** Insert data from a binary FITS table chipInputImfileRow into the database2875 *2876 * This function expects a psFits object with a FITS table as the first2877 * extension. The table must have at least one row of data in it, that is of2878 * the appropriate format (number of columns and their type). All other2879 * extensions are ignored.2880 *2881 * @return true on success2882 */2883 2884 bool chipInputImfileInsertFits(2885 psDB *dbh, ///< Database handle2886 const psFits *fits ///< psFits object2887 );2888 2889 /** Selects up to limit from the database and returns them in a binary FITS table2890 *2891 * This function assumes an empty psFits object and will create a FITS table2892 * as the first extension.2893 *2894 * See psDBSelectRows() for documentation on the format of where.2895 *2896 * @return true on success2897 */2898 2899 bool chipInputImfileSelectRowsFits(2900 psDB *dbh, ///< Database handle2901 psFits *fits, ///< psFits object2902 const psMetadata *where, ///< Row match criteria2903 unsigned long long limit ///< Maximum number of elements to return2904 );2905 2906 /** Convert a chipInputImfileRow into an equivalent psMetadata2907 *2908 * @return A psMetadata pointer or NULL on error2909 */2910 2911 psMetadata *chipInputImfileMetadataFromObject(2912 const chipInputImfileRow *object ///< fooRow to convert into a psMetadata2913 );2914 2915 /** Convert a psMetadata into an equivalent fooRow2916 *2917 * @return A chipInputImfileRow pointer or NULL on error2918 */2919 2920 chipInputImfileRow *chipInputImfileObjectFromMetadata(2921 psMetadata *md ///< psMetadata to convert into a fooRow2922 );2923 /** Selects up to limit rows from the database and returns as chipInputImfileRow objects in a psArray2924 *2925 * See psDBSelectRows() for documentation on the format of where.2926 *2927 * @return A psArray pointer or NULL on error2928 */2929 2930 psArray *chipInputImfileSelectRowObjects(2931 psDB *dbh, ///< Database handle2932 const psMetadata *where, ///< Row match criteria2933 unsigned long long limit ///< Maximum number of elements to return2934 );2935 /** Deletes a row from the database coresponding to an chipInputImfile2936 *2937 * Note that a 'where' search psMetadata is constructed from each object and2938 * used to find rows to delete.2939 *2940 * @return A The number of rows removed or a negative value on error2941 */2942 2943 bool chipInputImfileDeleteObject(2944 psDB *dbh, ///< Database handle2945 const chipInputImfileRow *object ///< Object to delete2946 );2947 /** Deletes up to limit rows from the database and returns the number of rows actually deleted.2948 *2949 * Note that a 'where' search psMetadata is constructed from each object and2950 * used to find rows to delete.2951 *2952 * @return A The number of rows removed or a negative value on error2953 */2954 2955 long long chipInputImfileDeleteRowObjects(2956 psDB *dbh, ///< Database handle2957 const psArray *objects, ///< Array of objects to delete2958 unsigned long long limit ///< Maximum number of elements to delete2959 );2960 /** Formats and prints an array of chipInputImfileRow objects2961 *2962 * When mdcf is set the formated output is in psMetadataConfig2963 * format, otherwise it is in a simple tabular format.2964 *2965 * @return true on success2966 */2967 2968 bool chipInputImfilePrintObjects(2969 FILE *stream, ///< a stream2970 psArray *objects, ///< An array of chipInputImfileRow objects2971 bool mdcf ///< format as mdconfig or simple2972 );2973 /** Formats and prints an chipInputImfileRow object2974 *2975 * When mdcf is set the formated output is in psMetadataConfig2976 * format, otherwise it is in a simple tabular format.2977 *2978 * @return true on success2979 */2980 2981 bool chipInputImfilePrintObject(2982 FILE *stream, ///< a stream2983 chipInputImfileRow *object, ///< an chipInputImfileRow object2984 2981 bool mdcf ///< format as mdconfig or simple 2985 2982 ); … … 4737 4734 psF64 bg; 4738 4735 psF64 bg_stdev; 4736 psF64 good_frac; 4737 psS16 fault; 4739 4738 } warpSkyfileRow; 4740 4739 … … 4751 4750 const char *path_base, 4752 4751 psF64 bg, 4753 psF64 bg_stdev 4752 psF64 bg_stdev, 4753 psF64 good_frac, 4754 psS16 fault 4754 4755 ); 4755 4756 … … 4787 4788 const char *path_base, 4788 4789 psF64 bg, 4789 psF64 bg_stdev 4790 psF64 bg_stdev, 4791 psF64 good_frac, 4792 psS16 fault 4790 4793 ); 4791 4794 … … 5157 5160 typedef struct { 5158 5161 psS64 diff_id; 5162 bool template; 5163 psS64 stack_id; 5159 5164 psS64 warp_id; 5160 5165 char *skycell_id; 5161 5166 char *tess_id; 5162 5167 char *kind; 5163 bool template;5164 5168 } diffInputSkyfileRow; 5165 5169 … … 5171 5175 diffInputSkyfileRow *diffInputSkyfileRowAlloc( 5172 5176 psS64 diff_id, 5177 bool template, 5178 psS64 stack_id, 5173 5179 psS64 warp_id, 5174 5180 const char *skycell_id, 5175 5181 const char *tess_id, 5176 const char *kind, 5177 bool template 5182 const char *kind 5178 5183 ); 5179 5184 … … 5206 5211 psDB *dbh, ///< Database handle 5207 5212 psS64 diff_id, 5213 bool template, 5214 psS64 stack_id, 5208 5215 psS64 warp_id, 5209 5216 const char *skycell_id, 5210 5217 const char *tess_id, 5211 const char *kind, 5212 bool template 5218 const char *kind 5213 5219 ); 5214 5220 … … 5371 5377 psF64 bg; 5372 5378 psF64 bg_stdev; 5379 psF64 good_frac; 5380 psS16 fault; 5373 5381 } diffSkyfileRow; 5374 5382 … … 5383 5391 const char *path_base, 5384 5392 psF64 bg, 5385 psF64 bg_stdev 5393 psF64 bg_stdev, 5394 psF64 good_frac, 5395 psS16 fault 5386 5396 ); 5387 5397 … … 5417 5427 const char *path_base, 5418 5428 psF64 bg, 5419 psF64 bg_stdev 5429 psF64 bg_stdev, 5430 psF64 good_frac, 5431 psS16 fault 5420 5432 ); 5421 5433 … … 5989 6001 psF64 bg; 5990 6002 psF64 bg_stdev; 6003 psF64 good_frac; 6004 psS16 fault; 5991 6005 } stackSumSkyfileRow; 5992 6006 … … 6001 6015 const char *path_base, 6002 6016 psF64 bg, 6003 psF64 bg_stdev 6017 psF64 bg_stdev, 6018 psF64 good_frac, 6019 psS16 fault 6004 6020 ); 6005 6021 … … 6035 6051 const char *path_base, 6036 6052 psF64 bg, 6037 psF64 bg_stdev 6053 psF64 bg_stdev, 6054 psF64 good_frac, 6055 psS16 fault 6038 6056 ); 6039 6057 … … 8075 8093 psF64 bg_stdev; 8076 8094 psF64 bg_mean_stdev; 8095 psF64 bg_skewness; 8096 psF64 bg_kurtosis; 8077 8097 psF64 bin_stdev; 8078 8098 psF64 fringe_0; 8079 8099 psF64 fringe_1; 8080 8100 psF64 fringe_2; 8101 psF64 fringe_resid_0; 8102 psF64 fringe_resid_1; 8103 psF64 fringe_resid_2; 8081 8104 psF64 user_1; 8082 8105 psF64 user_2; … … 8103 8126 psF64 bg_stdev, 8104 8127 psF64 bg_mean_stdev, 8128 psF64 bg_skewness, 8129 psF64 bg_kurtosis, 8105 8130 psF64 bin_stdev, 8106 8131 psF64 fringe_0, 8107 8132 psF64 fringe_1, 8108 8133 psF64 fringe_2, 8134 psF64 fringe_resid_0, 8135 psF64 fringe_resid_1, 8136 psF64 fringe_resid_2, 8109 8137 psF64 user_1, 8110 8138 psF64 user_2, … … 8152 8180 psF64 bg_stdev, 8153 8181 psF64 bg_mean_stdev, 8182 psF64 bg_skewness, 8183 psF64 bg_kurtosis, 8154 8184 psF64 bin_stdev, 8155 8185 psF64 fringe_0, 8156 8186 psF64 fringe_1, 8157 8187 psF64 fringe_2, 8188 psF64 fringe_resid_0, 8189 psF64 fringe_resid_1, 8190 psF64 fringe_resid_2, 8158 8191 psF64 user_1, 8159 8192 psF64 user_2, … … 8325 8358 psF64 bg_stdev; 8326 8359 psF64 bg_mean_stdev; 8360 psF64 bg_skewness; 8361 psF64 bg_kurtosis; 8327 8362 psF64 bin_stdev; 8328 8363 psF64 fringe_0; 8329 8364 psF64 fringe_1; 8330 8365 psF64 fringe_2; 8366 psF64 fringe_resid_0; 8367 psF64 fringe_resid_1; 8368 psF64 fringe_resid_2; 8331 8369 psF64 user_1; 8332 8370 psF64 user_2; … … 8352 8390 psF64 bg_stdev, 8353 8391 psF64 bg_mean_stdev, 8392 psF64 bg_skewness, 8393 psF64 bg_kurtosis, 8354 8394 psF64 bin_stdev, 8355 8395 psF64 fringe_0, 8356 8396 psF64 fringe_1, 8357 8397 psF64 fringe_2, 8398 psF64 fringe_resid_0, 8399 psF64 fringe_resid_1, 8400 psF64 fringe_resid_2, 8358 8401 psF64 user_1, 8359 8402 psF64 user_2, … … 8400 8443 psF64 bg_stdev, 8401 8444 psF64 bg_mean_stdev, 8445 psF64 bg_skewness, 8446 psF64 bg_kurtosis, 8402 8447 psF64 bin_stdev, 8403 8448 psF64 fringe_0, 8404 8449 psF64 fringe_1, 8405 8450 psF64 fringe_2, 8451 psF64 fringe_resid_0, 8452 psF64 fringe_resid_1, 8453 psF64 fringe_resid_2, 8406 8454 psF64 user_1, 8407 8455 psF64 user_2, … … 8774 8822 bool mdcf ///< format as mdconfig or simple 8775 8823 ); 8824 /** detRegisteredImfileRow data structure 8825 * 8826 * Structure for representing a single row of detRegisteredImfile table data. 8827 */ 8828 8829 typedef struct { 8830 psS64 det_id; 8831 psS32 iteration; 8832 char *class_id; 8833 char *uri; 8834 psF64 bg; 8835 psF64 bg_stdev; 8836 psF64 bg_mean_stdev; 8837 psF64 user_1; 8838 psF64 user_2; 8839 psF64 user_3; 8840 psF64 user_4; 8841 psF64 user_5; 8842 char *path_base; 8843 psS16 fault; 8844 } detRegisteredImfileRow; 8845 8846 /** Creates a new detRegisteredImfileRow object 8847 * 8848 * @return A new detRegisteredImfileRow object or NULL on failure. 8849 */ 8850 8851 detRegisteredImfileRow *detRegisteredImfileRowAlloc( 8852 psS64 det_id, 8853 psS32 iteration, 8854 const char *class_id, 8855 const char *uri, 8856 psF64 bg, 8857 psF64 bg_stdev, 8858 psF64 bg_mean_stdev, 8859 psF64 user_1, 8860 psF64 user_2, 8861 psF64 user_3, 8862 psF64 user_4, 8863 psF64 user_5, 8864 const char *path_base, 8865 psS16 fault 8866 ); 8867 8868 /** Creates a new detRegisteredImfile table 8869 * 8870 * @return true on success 8871 */ 8872 8873 bool detRegisteredImfileCreateTable( 8874 psDB *dbh ///< Database handle 8875 ); 8876 8877 /** Deletes a detRegisteredImfile table 8878 * 8879 * @return true on success 8880 */ 8881 8882 bool detRegisteredImfileDropTable( 8883 psDB *dbh ///< Database handle 8884 ); 8885 8886 /** Insert a single row into a table 8887 * 8888 * This function constructs and inserts a single row based on it's parameters. 8889 * 8890 * @return true on success 8891 */ 8892 8893 bool detRegisteredImfileInsert( 8894 psDB *dbh, ///< Database handle 8895 psS64 det_id, 8896 psS32 iteration, 8897 const char *class_id, 8898 const char *uri, 8899 psF64 bg, 8900 psF64 bg_stdev, 8901 psF64 bg_mean_stdev, 8902 psF64 user_1, 8903 psF64 user_2, 8904 psF64 user_3, 8905 psF64 user_4, 8906 psF64 user_5, 8907 const char *path_base, 8908 psS16 fault 8909 ); 8910 8911 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 8912 * 8913 * @return A The number of rows removed or a negative value on error 8914 */ 8915 8916 long long detRegisteredImfileDelete( 8917 psDB *dbh, ///< Database handle 8918 const psMetadata *where, ///< Row match criteria 8919 unsigned long long limit ///< Maximum number of elements to delete 8920 ); 8921 8922 /** Insert a single detRegisteredImfileRow object into a table 8923 * 8924 * This function constructs and inserts a single row based on it's parameters. 8925 * 8926 * @return true on success 8927 */ 8928 8929 bool detRegisteredImfileInsertObject( 8930 psDB *dbh, ///< Database handle 8931 detRegisteredImfileRow *object ///< detRegisteredImfileRow object 8932 ); 8933 8934 /** Insert an array of detRegisteredImfileRow object into a table 8935 * 8936 * This function constructs and inserts multiple rows based on it's parameters. 8937 * 8938 * @return true on success 8939 */ 8940 8941 bool detRegisteredImfileInsertObjects( 8942 psDB *dbh, ///< Database handle 8943 psArray *objects ///< array of detRegisteredImfileRow objects 8944 ); 8945 8946 /** Insert data from a binary FITS table detRegisteredImfileRow into the database 8947 * 8948 * This function expects a psFits object with a FITS table as the first 8949 * extension. The table must have at least one row of data in it, that is of 8950 * the appropriate format (number of columns and their type). All other 8951 * extensions are ignored. 8952 * 8953 * @return true on success 8954 */ 8955 8956 bool detRegisteredImfileInsertFits( 8957 psDB *dbh, ///< Database handle 8958 const psFits *fits ///< psFits object 8959 ); 8960 8961 /** Selects up to limit from the database and returns them in a binary FITS table 8962 * 8963 * This function assumes an empty psFits object and will create a FITS table 8964 * as the first extension. 8965 * 8966 * See psDBSelectRows() for documentation on the format of where. 8967 * 8968 * @return true on success 8969 */ 8970 8971 bool detRegisteredImfileSelectRowsFits( 8972 psDB *dbh, ///< Database handle 8973 psFits *fits, ///< psFits object 8974 const psMetadata *where, ///< Row match criteria 8975 unsigned long long limit ///< Maximum number of elements to return 8976 ); 8977 8978 /** Convert a detRegisteredImfileRow into an equivalent psMetadata 8979 * 8980 * @return A psMetadata pointer or NULL on error 8981 */ 8982 8983 psMetadata *detRegisteredImfileMetadataFromObject( 8984 const detRegisteredImfileRow *object ///< fooRow to convert into a psMetadata 8985 ); 8986 8987 /** Convert a psMetadata into an equivalent fooRow 8988 * 8989 * @return A detRegisteredImfileRow pointer or NULL on error 8990 */ 8991 8992 detRegisteredImfileRow *detRegisteredImfileObjectFromMetadata( 8993 psMetadata *md ///< psMetadata to convert into a fooRow 8994 ); 8995 /** Selects up to limit rows from the database and returns as detRegisteredImfileRow objects in a psArray 8996 * 8997 * See psDBSelectRows() for documentation on the format of where. 8998 * 8999 * @return A psArray pointer or NULL on error 9000 */ 9001 9002 psArray *detRegisteredImfileSelectRowObjects( 9003 psDB *dbh, ///< Database handle 9004 const psMetadata *where, ///< Row match criteria 9005 unsigned long long limit ///< Maximum number of elements to return 9006 ); 9007 /** Deletes a row from the database coresponding to an detRegisteredImfile 9008 * 9009 * Note that a 'where' search psMetadata is constructed from each object and 9010 * used to find rows to delete. 9011 * 9012 * @return A The number of rows removed or a negative value on error 9013 */ 9014 9015 bool detRegisteredImfileDeleteObject( 9016 psDB *dbh, ///< Database handle 9017 const detRegisteredImfileRow *object ///< Object to delete 9018 ); 9019 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 9020 * 9021 * Note that a 'where' search psMetadata is constructed from each object and 9022 * used to find rows to delete. 9023 * 9024 * @return A The number of rows removed or a negative value on error 9025 */ 9026 9027 long long detRegisteredImfileDeleteRowObjects( 9028 psDB *dbh, ///< Database handle 9029 const psArray *objects, ///< Array of objects to delete 9030 unsigned long long limit ///< Maximum number of elements to delete 9031 ); 9032 /** Formats and prints an array of detRegisteredImfileRow objects 9033 * 9034 * When mdcf is set the formated output is in psMetadataConfig 9035 * format, otherwise it is in a simple tabular format. 9036 * 9037 * @return true on success 9038 */ 9039 9040 bool detRegisteredImfilePrintObjects( 9041 FILE *stream, ///< a stream 9042 psArray *objects, ///< An array of detRegisteredImfileRow objects 9043 bool mdcf ///< format as mdconfig or simple 9044 ); 9045 /** Formats and prints an detRegisteredImfileRow object 9046 * 9047 * When mdcf is set the formated output is in psMetadataConfig 9048 * format, otherwise it is in a simple tabular format. 9049 * 9050 * @return true on success 9051 */ 9052 9053 bool detRegisteredImfilePrintObject( 9054 FILE *stream, ///< a stream 9055 detRegisteredImfileRow *object, ///< an detRegisteredImfileRow object 9056 bool mdcf ///< format as mdconfig or simple 9057 ); 9058 /** detCorrectedExpRow data structure 9059 * 9060 * Structure for representing a single row of detCorrectedExp table data. 9061 */ 9062 9063 typedef struct { 9064 psS64 det_id; 9065 psS64 exp_id; 9066 char *uri; 9067 psS64 corr_id; 9068 char *corr_type; 9069 char *recipe; 9070 char *path_base; 9071 psS16 fault; 9072 } detCorrectedExpRow; 9073 9074 /** Creates a new detCorrectedExpRow object 9075 * 9076 * @return A new detCorrectedExpRow object or NULL on failure. 9077 */ 9078 9079 detCorrectedExpRow *detCorrectedExpRowAlloc( 9080 psS64 det_id, 9081 psS64 exp_id, 9082 const char *uri, 9083 psS64 corr_id, 9084 const char *corr_type, 9085 const char *recipe, 9086 const char *path_base, 9087 psS16 fault 9088 ); 9089 9090 /** Creates a new detCorrectedExp table 9091 * 9092 * @return true on success 9093 */ 9094 9095 bool detCorrectedExpCreateTable( 9096 psDB *dbh ///< Database handle 9097 ); 9098 9099 /** Deletes a detCorrectedExp table 9100 * 9101 * @return true on success 9102 */ 9103 9104 bool detCorrectedExpDropTable( 9105 psDB *dbh ///< Database handle 9106 ); 9107 9108 /** Insert a single row into a table 9109 * 9110 * This function constructs and inserts a single row based on it's parameters. 9111 * 9112 * @return true on success 9113 */ 9114 9115 bool detCorrectedExpInsert( 9116 psDB *dbh, ///< Database handle 9117 psS64 det_id, 9118 psS64 exp_id, 9119 const char *uri, 9120 psS64 corr_id, 9121 const char *corr_type, 9122 const char *recipe, 9123 const char *path_base, 9124 psS16 fault 9125 ); 9126 9127 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 9128 * 9129 * @return A The number of rows removed or a negative value on error 9130 */ 9131 9132 long long detCorrectedExpDelete( 9133 psDB *dbh, ///< Database handle 9134 const psMetadata *where, ///< Row match criteria 9135 unsigned long long limit ///< Maximum number of elements to delete 9136 ); 9137 9138 /** Insert a single detCorrectedExpRow object into a table 9139 * 9140 * This function constructs and inserts a single row based on it's parameters. 9141 * 9142 * @return true on success 9143 */ 9144 9145 bool detCorrectedExpInsertObject( 9146 psDB *dbh, ///< Database handle 9147 detCorrectedExpRow *object ///< detCorrectedExpRow object 9148 ); 9149 9150 /** Insert an array of detCorrectedExpRow object into a table 9151 * 9152 * This function constructs and inserts multiple rows based on it's parameters. 9153 * 9154 * @return true on success 9155 */ 9156 9157 bool detCorrectedExpInsertObjects( 9158 psDB *dbh, ///< Database handle 9159 psArray *objects ///< array of detCorrectedExpRow objects 9160 ); 9161 9162 /** Insert data from a binary FITS table detCorrectedExpRow into the database 9163 * 9164 * This function expects a psFits object with a FITS table as the first 9165 * extension. The table must have at least one row of data in it, that is of 9166 * the appropriate format (number of columns and their type). All other 9167 * extensions are ignored. 9168 * 9169 * @return true on success 9170 */ 9171 9172 bool detCorrectedExpInsertFits( 9173 psDB *dbh, ///< Database handle 9174 const psFits *fits ///< psFits object 9175 ); 9176 9177 /** Selects up to limit from the database and returns them in a binary FITS table 9178 * 9179 * This function assumes an empty psFits object and will create a FITS table 9180 * as the first extension. 9181 * 9182 * See psDBSelectRows() for documentation on the format of where. 9183 * 9184 * @return true on success 9185 */ 9186 9187 bool detCorrectedExpSelectRowsFits( 9188 psDB *dbh, ///< Database handle 9189 psFits *fits, ///< psFits object 9190 const psMetadata *where, ///< Row match criteria 9191 unsigned long long limit ///< Maximum number of elements to return 9192 ); 9193 9194 /** Convert a detCorrectedExpRow into an equivalent psMetadata 9195 * 9196 * @return A psMetadata pointer or NULL on error 9197 */ 9198 9199 psMetadata *detCorrectedExpMetadataFromObject( 9200 const detCorrectedExpRow *object ///< fooRow to convert into a psMetadata 9201 ); 9202 9203 /** Convert a psMetadata into an equivalent fooRow 9204 * 9205 * @return A detCorrectedExpRow pointer or NULL on error 9206 */ 9207 9208 detCorrectedExpRow *detCorrectedExpObjectFromMetadata( 9209 psMetadata *md ///< psMetadata to convert into a fooRow 9210 ); 9211 /** Selects up to limit rows from the database and returns as detCorrectedExpRow objects in a psArray 9212 * 9213 * See psDBSelectRows() for documentation on the format of where. 9214 * 9215 * @return A psArray pointer or NULL on error 9216 */ 9217 9218 psArray *detCorrectedExpSelectRowObjects( 9219 psDB *dbh, ///< Database handle 9220 const psMetadata *where, ///< Row match criteria 9221 unsigned long long limit ///< Maximum number of elements to return 9222 ); 9223 /** Deletes a row from the database coresponding to an detCorrectedExp 9224 * 9225 * Note that a 'where' search psMetadata is constructed from each object and 9226 * used to find rows to delete. 9227 * 9228 * @return A The number of rows removed or a negative value on error 9229 */ 9230 9231 bool detCorrectedExpDeleteObject( 9232 psDB *dbh, ///< Database handle 9233 const detCorrectedExpRow *object ///< Object to delete 9234 ); 9235 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 9236 * 9237 * Note that a 'where' search psMetadata is constructed from each object and 9238 * used to find rows to delete. 9239 * 9240 * @return A The number of rows removed or a negative value on error 9241 */ 9242 9243 long long detCorrectedExpDeleteRowObjects( 9244 psDB *dbh, ///< Database handle 9245 const psArray *objects, ///< Array of objects to delete 9246 unsigned long long limit ///< Maximum number of elements to delete 9247 ); 9248 /** Formats and prints an array of detCorrectedExpRow objects 9249 * 9250 * When mdcf is set the formated output is in psMetadataConfig 9251 * format, otherwise it is in a simple tabular format. 9252 * 9253 * @return true on success 9254 */ 9255 9256 bool detCorrectedExpPrintObjects( 9257 FILE *stream, ///< a stream 9258 psArray *objects, ///< An array of detCorrectedExpRow objects 9259 bool mdcf ///< format as mdconfig or simple 9260 ); 9261 /** Formats and prints an detCorrectedExpRow object 9262 * 9263 * When mdcf is set the formated output is in psMetadataConfig 9264 * format, otherwise it is in a simple tabular format. 9265 * 9266 * @return true on success 9267 */ 9268 9269 bool detCorrectedExpPrintObject( 9270 FILE *stream, ///< a stream 9271 detCorrectedExpRow *object, ///< an detCorrectedExpRow object 9272 bool mdcf ///< format as mdconfig or simple 9273 ); 9274 /** detCorrectedImfileRow data structure 9275 * 9276 * Structure for representing a single row of detCorrectedImfile table data. 9277 */ 9278 9279 typedef struct { 9280 psS64 det_id; 9281 psS64 exp_id; 9282 char *class_id; 9283 char *uri; 9284 char *path_base; 9285 psS16 fault; 9286 } detCorrectedImfileRow; 9287 9288 /** Creates a new detCorrectedImfileRow object 9289 * 9290 * @return A new detCorrectedImfileRow object or NULL on failure. 9291 */ 9292 9293 detCorrectedImfileRow *detCorrectedImfileRowAlloc( 9294 psS64 det_id, 9295 psS64 exp_id, 9296 const char *class_id, 9297 const char *uri, 9298 const char *path_base, 9299 psS16 fault 9300 ); 9301 9302 /** Creates a new detCorrectedImfile table 9303 * 9304 * @return true on success 9305 */ 9306 9307 bool detCorrectedImfileCreateTable( 9308 psDB *dbh ///< Database handle 9309 ); 9310 9311 /** Deletes a detCorrectedImfile table 9312 * 9313 * @return true on success 9314 */ 9315 9316 bool detCorrectedImfileDropTable( 9317 psDB *dbh ///< Database handle 9318 ); 9319 9320 /** Insert a single row into a table 9321 * 9322 * This function constructs and inserts a single row based on it's parameters. 9323 * 9324 * @return true on success 9325 */ 9326 9327 bool detCorrectedImfileInsert( 9328 psDB *dbh, ///< Database handle 9329 psS64 det_id, 9330 psS64 exp_id, 9331 const char *class_id, 9332 const char *uri, 9333 const char *path_base, 9334 psS16 fault 9335 ); 9336 9337 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 9338 * 9339 * @return A The number of rows removed or a negative value on error 9340 */ 9341 9342 long long detCorrectedImfileDelete( 9343 psDB *dbh, ///< Database handle 9344 const psMetadata *where, ///< Row match criteria 9345 unsigned long long limit ///< Maximum number of elements to delete 9346 ); 9347 9348 /** Insert a single detCorrectedImfileRow object into a table 9349 * 9350 * This function constructs and inserts a single row based on it's parameters. 9351 * 9352 * @return true on success 9353 */ 9354 9355 bool detCorrectedImfileInsertObject( 9356 psDB *dbh, ///< Database handle 9357 detCorrectedImfileRow *object ///< detCorrectedImfileRow object 9358 ); 9359 9360 /** Insert an array of detCorrectedImfileRow object into a table 9361 * 9362 * This function constructs and inserts multiple rows based on it's parameters. 9363 * 9364 * @return true on success 9365 */ 9366 9367 bool detCorrectedImfileInsertObjects( 9368 psDB *dbh, ///< Database handle 9369 psArray *objects ///< array of detCorrectedImfileRow objects 9370 ); 9371 9372 /** Insert data from a binary FITS table detCorrectedImfileRow into the database 9373 * 9374 * This function expects a psFits object with a FITS table as the first 9375 * extension. The table must have at least one row of data in it, that is of 9376 * the appropriate format (number of columns and their type). All other 9377 * extensions are ignored. 9378 * 9379 * @return true on success 9380 */ 9381 9382 bool detCorrectedImfileInsertFits( 9383 psDB *dbh, ///< Database handle 9384 const psFits *fits ///< psFits object 9385 ); 9386 9387 /** Selects up to limit from the database and returns them in a binary FITS table 9388 * 9389 * This function assumes an empty psFits object and will create a FITS table 9390 * as the first extension. 9391 * 9392 * See psDBSelectRows() for documentation on the format of where. 9393 * 9394 * @return true on success 9395 */ 9396 9397 bool detCorrectedImfileSelectRowsFits( 9398 psDB *dbh, ///< Database handle 9399 psFits *fits, ///< psFits object 9400 const psMetadata *where, ///< Row match criteria 9401 unsigned long long limit ///< Maximum number of elements to return 9402 ); 9403 9404 /** Convert a detCorrectedImfileRow into an equivalent psMetadata 9405 * 9406 * @return A psMetadata pointer or NULL on error 9407 */ 9408 9409 psMetadata *detCorrectedImfileMetadataFromObject( 9410 const detCorrectedImfileRow *object ///< fooRow to convert into a psMetadata 9411 ); 9412 9413 /** Convert a psMetadata into an equivalent fooRow 9414 * 9415 * @return A detCorrectedImfileRow pointer or NULL on error 9416 */ 9417 9418 detCorrectedImfileRow *detCorrectedImfileObjectFromMetadata( 9419 psMetadata *md ///< psMetadata to convert into a fooRow 9420 ); 9421 /** Selects up to limit rows from the database and returns as detCorrectedImfileRow objects in a psArray 9422 * 9423 * See psDBSelectRows() for documentation on the format of where. 9424 * 9425 * @return A psArray pointer or NULL on error 9426 */ 9427 9428 psArray *detCorrectedImfileSelectRowObjects( 9429 psDB *dbh, ///< Database handle 9430 const psMetadata *where, ///< Row match criteria 9431 unsigned long long limit ///< Maximum number of elements to return 9432 ); 9433 /** Deletes a row from the database coresponding to an detCorrectedImfile 9434 * 9435 * Note that a 'where' search psMetadata is constructed from each object and 9436 * used to find rows to delete. 9437 * 9438 * @return A The number of rows removed or a negative value on error 9439 */ 9440 9441 bool detCorrectedImfileDeleteObject( 9442 psDB *dbh, ///< Database handle 9443 const detCorrectedImfileRow *object ///< Object to delete 9444 ); 9445 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 9446 * 9447 * Note that a 'where' search psMetadata is constructed from each object and 9448 * used to find rows to delete. 9449 * 9450 * @return A The number of rows removed or a negative value on error 9451 */ 9452 9453 long long detCorrectedImfileDeleteRowObjects( 9454 psDB *dbh, ///< Database handle 9455 const psArray *objects, ///< Array of objects to delete 9456 unsigned long long limit ///< Maximum number of elements to delete 9457 ); 9458 /** Formats and prints an array of detCorrectedImfileRow objects 9459 * 9460 * When mdcf is set the formated output is in psMetadataConfig 9461 * format, otherwise it is in a simple tabular format. 9462 * 9463 * @return true on success 9464 */ 9465 9466 bool detCorrectedImfilePrintObjects( 9467 FILE *stream, ///< a stream 9468 psArray *objects, ///< An array of detCorrectedImfileRow objects 9469 bool mdcf ///< format as mdconfig or simple 9470 ); 9471 /** Formats and prints an detCorrectedImfileRow object 9472 * 9473 * When mdcf is set the formated output is in psMetadataConfig 9474 * format, otherwise it is in a simple tabular format. 9475 * 9476 * @return true on success 9477 */ 9478 9479 bool detCorrectedImfilePrintObject( 9480 FILE *stream, ///< a stream 9481 detCorrectedImfileRow *object, ///< an detCorrectedImfileRow object 9482 bool mdcf ///< format as mdconfig or simple 9483 ); 9484 /** magicRunRow data structure 9485 * 9486 * Structure for representing a single row of magicRun table data. 9487 */ 9488 9489 typedef struct { 9490 psS64 magic_id; 9491 char *state; 9492 char *workdir; 9493 char *workdir_state; 9494 char *label; 9495 char *dvodb; 9496 psTime* registered; 9497 } magicRunRow; 9498 9499 /** Creates a new magicRunRow object 9500 * 9501 * @return A new magicRunRow object or NULL on failure. 9502 */ 9503 9504 magicRunRow *magicRunRowAlloc( 9505 psS64 magic_id, 9506 const char *state, 9507 const char *workdir, 9508 const char *workdir_state, 9509 const char *label, 9510 const char *dvodb, 9511 psTime* registered 9512 ); 9513 9514 /** Creates a new magicRun table 9515 * 9516 * @return true on success 9517 */ 9518 9519 bool magicRunCreateTable( 9520 psDB *dbh ///< Database handle 9521 ); 9522 9523 /** Deletes a magicRun table 9524 * 9525 * @return true on success 9526 */ 9527 9528 bool magicRunDropTable( 9529 psDB *dbh ///< Database handle 9530 ); 9531 9532 /** Insert a single row into a table 9533 * 9534 * This function constructs and inserts a single row based on it's parameters. 9535 * 9536 * @return true on success 9537 */ 9538 9539 bool magicRunInsert( 9540 psDB *dbh, ///< Database handle 9541 psS64 magic_id, 9542 const char *state, 9543 const char *workdir, 9544 const char *workdir_state, 9545 const char *label, 9546 const char *dvodb, 9547 psTime* registered 9548 ); 9549 9550 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 9551 * 9552 * @return A The number of rows removed or a negative value on error 9553 */ 9554 9555 long long magicRunDelete( 9556 psDB *dbh, ///< Database handle 9557 const psMetadata *where, ///< Row match criteria 9558 unsigned long long limit ///< Maximum number of elements to delete 9559 ); 9560 9561 /** Insert a single magicRunRow object into a table 9562 * 9563 * This function constructs and inserts a single row based on it's parameters. 9564 * 9565 * @return true on success 9566 */ 9567 9568 bool magicRunInsertObject( 9569 psDB *dbh, ///< Database handle 9570 magicRunRow *object ///< magicRunRow object 9571 ); 9572 9573 /** Insert an array of magicRunRow object into a table 9574 * 9575 * This function constructs and inserts multiple rows based on it's parameters. 9576 * 9577 * @return true on success 9578 */ 9579 9580 bool magicRunInsertObjects( 9581 psDB *dbh, ///< Database handle 9582 psArray *objects ///< array of magicRunRow objects 9583 ); 9584 9585 /** Insert data from a binary FITS table magicRunRow into the database 9586 * 9587 * This function expects a psFits object with a FITS table as the first 9588 * extension. The table must have at least one row of data in it, that is of 9589 * the appropriate format (number of columns and their type). All other 9590 * extensions are ignored. 9591 * 9592 * @return true on success 9593 */ 9594 9595 bool magicRunInsertFits( 9596 psDB *dbh, ///< Database handle 9597 const psFits *fits ///< psFits object 9598 ); 9599 9600 /** Selects up to limit from the database and returns them in a binary FITS table 9601 * 9602 * This function assumes an empty psFits object and will create a FITS table 9603 * as the first extension. 9604 * 9605 * See psDBSelectRows() for documentation on the format of where. 9606 * 9607 * @return true on success 9608 */ 9609 9610 bool magicRunSelectRowsFits( 9611 psDB *dbh, ///< Database handle 9612 psFits *fits, ///< psFits object 9613 const psMetadata *where, ///< Row match criteria 9614 unsigned long long limit ///< Maximum number of elements to return 9615 ); 9616 9617 /** Convert a magicRunRow into an equivalent psMetadata 9618 * 9619 * @return A psMetadata pointer or NULL on error 9620 */ 9621 9622 psMetadata *magicRunMetadataFromObject( 9623 const magicRunRow *object ///< fooRow to convert into a psMetadata 9624 ); 9625 9626 /** Convert a psMetadata into an equivalent fooRow 9627 * 9628 * @return A magicRunRow pointer or NULL on error 9629 */ 9630 9631 magicRunRow *magicRunObjectFromMetadata( 9632 psMetadata *md ///< psMetadata to convert into a fooRow 9633 ); 9634 /** Selects up to limit rows from the database and returns as magicRunRow objects in a psArray 9635 * 9636 * See psDBSelectRows() for documentation on the format of where. 9637 * 9638 * @return A psArray pointer or NULL on error 9639 */ 9640 9641 psArray *magicRunSelectRowObjects( 9642 psDB *dbh, ///< Database handle 9643 const psMetadata *where, ///< Row match criteria 9644 unsigned long long limit ///< Maximum number of elements to return 9645 ); 9646 /** Deletes a row from the database coresponding to an magicRun 9647 * 9648 * Note that a 'where' search psMetadata is constructed from each object and 9649 * used to find rows to delete. 9650 * 9651 * @return A The number of rows removed or a negative value on error 9652 */ 9653 9654 bool magicRunDeleteObject( 9655 psDB *dbh, ///< Database handle 9656 const magicRunRow *object ///< Object to delete 9657 ); 9658 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 9659 * 9660 * Note that a 'where' search psMetadata is constructed from each object and 9661 * used to find rows to delete. 9662 * 9663 * @return A The number of rows removed or a negative value on error 9664 */ 9665 9666 long long magicRunDeleteRowObjects( 9667 psDB *dbh, ///< Database handle 9668 const psArray *objects, ///< Array of objects to delete 9669 unsigned long long limit ///< Maximum number of elements to delete 9670 ); 9671 /** Formats and prints an array of magicRunRow objects 9672 * 9673 * When mdcf is set the formated output is in psMetadataConfig 9674 * format, otherwise it is in a simple tabular format. 9675 * 9676 * @return true on success 9677 */ 9678 9679 bool magicRunPrintObjects( 9680 FILE *stream, ///< a stream 9681 psArray *objects, ///< An array of magicRunRow objects 9682 bool mdcf ///< format as mdconfig or simple 9683 ); 9684 /** Formats and prints an magicRunRow object 9685 * 9686 * When mdcf is set the formated output is in psMetadataConfig 9687 * format, otherwise it is in a simple tabular format. 9688 * 9689 * @return true on success 9690 */ 9691 9692 bool magicRunPrintObject( 9693 FILE *stream, ///< a stream 9694 magicRunRow *object, ///< an magicRunRow object 9695 bool mdcf ///< format as mdconfig or simple 9696 ); 9697 /** magicInputSkyfileRow data structure 9698 * 9699 * Structure for representing a single row of magicInputSkyfile table data. 9700 */ 9701 9702 typedef struct { 9703 psS64 magic_id; 9704 psS64 diff_id; 9705 char *node; 9706 } magicInputSkyfileRow; 9707 9708 /** Creates a new magicInputSkyfileRow object 9709 * 9710 * @return A new magicInputSkyfileRow object or NULL on failure. 9711 */ 9712 9713 magicInputSkyfileRow *magicInputSkyfileRowAlloc( 9714 psS64 magic_id, 9715 psS64 diff_id, 9716 const char *node 9717 ); 9718 9719 /** Creates a new magicInputSkyfile table 9720 * 9721 * @return true on success 9722 */ 9723 9724 bool magicInputSkyfileCreateTable( 9725 psDB *dbh ///< Database handle 9726 ); 9727 9728 /** Deletes a magicInputSkyfile table 9729 * 9730 * @return true on success 9731 */ 9732 9733 bool magicInputSkyfileDropTable( 9734 psDB *dbh ///< Database handle 9735 ); 9736 9737 /** Insert a single row into a table 9738 * 9739 * This function constructs and inserts a single row based on it's parameters. 9740 * 9741 * @return true on success 9742 */ 9743 9744 bool magicInputSkyfileInsert( 9745 psDB *dbh, ///< Database handle 9746 psS64 magic_id, 9747 psS64 diff_id, 9748 const char *node 9749 ); 9750 9751 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 9752 * 9753 * @return A The number of rows removed or a negative value on error 9754 */ 9755 9756 long long magicInputSkyfileDelete( 9757 psDB *dbh, ///< Database handle 9758 const psMetadata *where, ///< Row match criteria 9759 unsigned long long limit ///< Maximum number of elements to delete 9760 ); 9761 9762 /** Insert a single magicInputSkyfileRow object into a table 9763 * 9764 * This function constructs and inserts a single row based on it's parameters. 9765 * 9766 * @return true on success 9767 */ 9768 9769 bool magicInputSkyfileInsertObject( 9770 psDB *dbh, ///< Database handle 9771 magicInputSkyfileRow *object ///< magicInputSkyfileRow object 9772 ); 9773 9774 /** Insert an array of magicInputSkyfileRow object into a table 9775 * 9776 * This function constructs and inserts multiple rows based on it's parameters. 9777 * 9778 * @return true on success 9779 */ 9780 9781 bool magicInputSkyfileInsertObjects( 9782 psDB *dbh, ///< Database handle 9783 psArray *objects ///< array of magicInputSkyfileRow objects 9784 ); 9785 9786 /** Insert data from a binary FITS table magicInputSkyfileRow into the database 9787 * 9788 * This function expects a psFits object with a FITS table as the first 9789 * extension. The table must have at least one row of data in it, that is of 9790 * the appropriate format (number of columns and their type). All other 9791 * extensions are ignored. 9792 * 9793 * @return true on success 9794 */ 9795 9796 bool magicInputSkyfileInsertFits( 9797 psDB *dbh, ///< Database handle 9798 const psFits *fits ///< psFits object 9799 ); 9800 9801 /** Selects up to limit from the database and returns them in a binary FITS table 9802 * 9803 * This function assumes an empty psFits object and will create a FITS table 9804 * as the first extension. 9805 * 9806 * See psDBSelectRows() for documentation on the format of where. 9807 * 9808 * @return true on success 9809 */ 9810 9811 bool magicInputSkyfileSelectRowsFits( 9812 psDB *dbh, ///< Database handle 9813 psFits *fits, ///< psFits object 9814 const psMetadata *where, ///< Row match criteria 9815 unsigned long long limit ///< Maximum number of elements to return 9816 ); 9817 9818 /** Convert a magicInputSkyfileRow into an equivalent psMetadata 9819 * 9820 * @return A psMetadata pointer or NULL on error 9821 */ 9822 9823 psMetadata *magicInputSkyfileMetadataFromObject( 9824 const magicInputSkyfileRow *object ///< fooRow to convert into a psMetadata 9825 ); 9826 9827 /** Convert a psMetadata into an equivalent fooRow 9828 * 9829 * @return A magicInputSkyfileRow pointer or NULL on error 9830 */ 9831 9832 magicInputSkyfileRow *magicInputSkyfileObjectFromMetadata( 9833 psMetadata *md ///< psMetadata to convert into a fooRow 9834 ); 9835 /** Selects up to limit rows from the database and returns as magicInputSkyfileRow objects in a psArray 9836 * 9837 * See psDBSelectRows() for documentation on the format of where. 9838 * 9839 * @return A psArray pointer or NULL on error 9840 */ 9841 9842 psArray *magicInputSkyfileSelectRowObjects( 9843 psDB *dbh, ///< Database handle 9844 const psMetadata *where, ///< Row match criteria 9845 unsigned long long limit ///< Maximum number of elements to return 9846 ); 9847 /** Deletes a row from the database coresponding to an magicInputSkyfile 9848 * 9849 * Note that a 'where' search psMetadata is constructed from each object and 9850 * used to find rows to delete. 9851 * 9852 * @return A The number of rows removed or a negative value on error 9853 */ 9854 9855 bool magicInputSkyfileDeleteObject( 9856 psDB *dbh, ///< Database handle 9857 const magicInputSkyfileRow *object ///< Object to delete 9858 ); 9859 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 9860 * 9861 * Note that a 'where' search psMetadata is constructed from each object and 9862 * used to find rows to delete. 9863 * 9864 * @return A The number of rows removed or a negative value on error 9865 */ 9866 9867 long long magicInputSkyfileDeleteRowObjects( 9868 psDB *dbh, ///< Database handle 9869 const psArray *objects, ///< Array of objects to delete 9870 unsigned long long limit ///< Maximum number of elements to delete 9871 ); 9872 /** Formats and prints an array of magicInputSkyfileRow objects 9873 * 9874 * When mdcf is set the formated output is in psMetadataConfig 9875 * format, otherwise it is in a simple tabular format. 9876 * 9877 * @return true on success 9878 */ 9879 9880 bool magicInputSkyfilePrintObjects( 9881 FILE *stream, ///< a stream 9882 psArray *objects, ///< An array of magicInputSkyfileRow objects 9883 bool mdcf ///< format as mdconfig or simple 9884 ); 9885 /** Formats and prints an magicInputSkyfileRow object 9886 * 9887 * When mdcf is set the formated output is in psMetadataConfig 9888 * format, otherwise it is in a simple tabular format. 9889 * 9890 * @return true on success 9891 */ 9892 9893 bool magicInputSkyfilePrintObject( 9894 FILE *stream, ///< a stream 9895 magicInputSkyfileRow *object, ///< an magicInputSkyfileRow object 9896 bool mdcf ///< format as mdconfig or simple 9897 ); 9898 /** magicTreeRow data structure 9899 * 9900 * Structure for representing a single row of magicTree table data. 9901 */ 9902 9903 typedef struct { 9904 psS64 magic_id; 9905 char *node; 9906 char *dep; 9907 } magicTreeRow; 9908 9909 /** Creates a new magicTreeRow object 9910 * 9911 * @return A new magicTreeRow object or NULL on failure. 9912 */ 9913 9914 magicTreeRow *magicTreeRowAlloc( 9915 psS64 magic_id, 9916 const char *node, 9917 const char *dep 9918 ); 9919 9920 /** Creates a new magicTree table 9921 * 9922 * @return true on success 9923 */ 9924 9925 bool magicTreeCreateTable( 9926 psDB *dbh ///< Database handle 9927 ); 9928 9929 /** Deletes a magicTree table 9930 * 9931 * @return true on success 9932 */ 9933 9934 bool magicTreeDropTable( 9935 psDB *dbh ///< Database handle 9936 ); 9937 9938 /** Insert a single row into a table 9939 * 9940 * This function constructs and inserts a single row based on it's parameters. 9941 * 9942 * @return true on success 9943 */ 9944 9945 bool magicTreeInsert( 9946 psDB *dbh, ///< Database handle 9947 psS64 magic_id, 9948 const char *node, 9949 const char *dep 9950 ); 9951 9952 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 9953 * 9954 * @return A The number of rows removed or a negative value on error 9955 */ 9956 9957 long long magicTreeDelete( 9958 psDB *dbh, ///< Database handle 9959 const psMetadata *where, ///< Row match criteria 9960 unsigned long long limit ///< Maximum number of elements to delete 9961 ); 9962 9963 /** Insert a single magicTreeRow object into a table 9964 * 9965 * This function constructs and inserts a single row based on it's parameters. 9966 * 9967 * @return true on success 9968 */ 9969 9970 bool magicTreeInsertObject( 9971 psDB *dbh, ///< Database handle 9972 magicTreeRow *object ///< magicTreeRow object 9973 ); 9974 9975 /** Insert an array of magicTreeRow object into a table 9976 * 9977 * This function constructs and inserts multiple rows based on it's parameters. 9978 * 9979 * @return true on success 9980 */ 9981 9982 bool magicTreeInsertObjects( 9983 psDB *dbh, ///< Database handle 9984 psArray *objects ///< array of magicTreeRow objects 9985 ); 9986 9987 /** Insert data from a binary FITS table magicTreeRow into the database 9988 * 9989 * This function expects a psFits object with a FITS table as the first 9990 * extension. The table must have at least one row of data in it, that is of 9991 * the appropriate format (number of columns and their type). All other 9992 * extensions are ignored. 9993 * 9994 * @return true on success 9995 */ 9996 9997 bool magicTreeInsertFits( 9998 psDB *dbh, ///< Database handle 9999 const psFits *fits ///< psFits object 10000 ); 10001 10002 /** Selects up to limit from the database and returns them in a binary FITS table 10003 * 10004 * This function assumes an empty psFits object and will create a FITS table 10005 * as the first extension. 10006 * 10007 * See psDBSelectRows() for documentation on the format of where. 10008 * 10009 * @return true on success 10010 */ 10011 10012 bool magicTreeSelectRowsFits( 10013 psDB *dbh, ///< Database handle 10014 psFits *fits, ///< psFits object 10015 const psMetadata *where, ///< Row match criteria 10016 unsigned long long limit ///< Maximum number of elements to return 10017 ); 10018 10019 /** Convert a magicTreeRow into an equivalent psMetadata 10020 * 10021 * @return A psMetadata pointer or NULL on error 10022 */ 10023 10024 psMetadata *magicTreeMetadataFromObject( 10025 const magicTreeRow *object ///< fooRow to convert into a psMetadata 10026 ); 10027 10028 /** Convert a psMetadata into an equivalent fooRow 10029 * 10030 * @return A magicTreeRow pointer or NULL on error 10031 */ 10032 10033 magicTreeRow *magicTreeObjectFromMetadata( 10034 psMetadata *md ///< psMetadata to convert into a fooRow 10035 ); 10036 /** Selects up to limit rows from the database and returns as magicTreeRow objects in a psArray 10037 * 10038 * See psDBSelectRows() for documentation on the format of where. 10039 * 10040 * @return A psArray pointer or NULL on error 10041 */ 10042 10043 psArray *magicTreeSelectRowObjects( 10044 psDB *dbh, ///< Database handle 10045 const psMetadata *where, ///< Row match criteria 10046 unsigned long long limit ///< Maximum number of elements to return 10047 ); 10048 /** Deletes a row from the database coresponding to an magicTree 10049 * 10050 * Note that a 'where' search psMetadata is constructed from each object and 10051 * used to find rows to delete. 10052 * 10053 * @return A The number of rows removed or a negative value on error 10054 */ 10055 10056 bool magicTreeDeleteObject( 10057 psDB *dbh, ///< Database handle 10058 const magicTreeRow *object ///< Object to delete 10059 ); 10060 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 10061 * 10062 * Note that a 'where' search psMetadata is constructed from each object and 10063 * used to find rows to delete. 10064 * 10065 * @return A The number of rows removed or a negative value on error 10066 */ 10067 10068 long long magicTreeDeleteRowObjects( 10069 psDB *dbh, ///< Database handle 10070 const psArray *objects, ///< Array of objects to delete 10071 unsigned long long limit ///< Maximum number of elements to delete 10072 ); 10073 /** Formats and prints an array of magicTreeRow objects 10074 * 10075 * When mdcf is set the formated output is in psMetadataConfig 10076 * format, otherwise it is in a simple tabular format. 10077 * 10078 * @return true on success 10079 */ 10080 10081 bool magicTreePrintObjects( 10082 FILE *stream, ///< a stream 10083 psArray *objects, ///< An array of magicTreeRow objects 10084 bool mdcf ///< format as mdconfig or simple 10085 ); 10086 /** Formats and prints an magicTreeRow object 10087 * 10088 * When mdcf is set the formated output is in psMetadataConfig 10089 * format, otherwise it is in a simple tabular format. 10090 * 10091 * @return true on success 10092 */ 10093 10094 bool magicTreePrintObject( 10095 FILE *stream, ///< a stream 10096 magicTreeRow *object, ///< an magicTreeRow object 10097 bool mdcf ///< format as mdconfig or simple 10098 ); 10099 /** magicNodeResultRow data structure 10100 * 10101 * Structure for representing a single row of magicNodeResult table data. 10102 */ 10103 10104 typedef struct { 10105 psS64 magic_id; 10106 char *node; 10107 char *uri; 10108 } magicNodeResultRow; 10109 10110 /** Creates a new magicNodeResultRow object 10111 * 10112 * @return A new magicNodeResultRow object or NULL on failure. 10113 */ 10114 10115 magicNodeResultRow *magicNodeResultRowAlloc( 10116 psS64 magic_id, 10117 const char *node, 10118 const char *uri 10119 ); 10120 10121 /** Creates a new magicNodeResult table 10122 * 10123 * @return true on success 10124 */ 10125 10126 bool magicNodeResultCreateTable( 10127 psDB *dbh ///< Database handle 10128 ); 10129 10130 /** Deletes a magicNodeResult table 10131 * 10132 * @return true on success 10133 */ 10134 10135 bool magicNodeResultDropTable( 10136 psDB *dbh ///< Database handle 10137 ); 10138 10139 /** Insert a single row into a table 10140 * 10141 * This function constructs and inserts a single row based on it's parameters. 10142 * 10143 * @return true on success 10144 */ 10145 10146 bool magicNodeResultInsert( 10147 psDB *dbh, ///< Database handle 10148 psS64 magic_id, 10149 const char *node, 10150 const char *uri 10151 ); 10152 10153 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 10154 * 10155 * @return A The number of rows removed or a negative value on error 10156 */ 10157 10158 long long magicNodeResultDelete( 10159 psDB *dbh, ///< Database handle 10160 const psMetadata *where, ///< Row match criteria 10161 unsigned long long limit ///< Maximum number of elements to delete 10162 ); 10163 10164 /** Insert a single magicNodeResultRow object into a table 10165 * 10166 * This function constructs and inserts a single row based on it's parameters. 10167 * 10168 * @return true on success 10169 */ 10170 10171 bool magicNodeResultInsertObject( 10172 psDB *dbh, ///< Database handle 10173 magicNodeResultRow *object ///< magicNodeResultRow object 10174 ); 10175 10176 /** Insert an array of magicNodeResultRow object into a table 10177 * 10178 * This function constructs and inserts multiple rows based on it's parameters. 10179 * 10180 * @return true on success 10181 */ 10182 10183 bool magicNodeResultInsertObjects( 10184 psDB *dbh, ///< Database handle 10185 psArray *objects ///< array of magicNodeResultRow objects 10186 ); 10187 10188 /** Insert data from a binary FITS table magicNodeResultRow into the database 10189 * 10190 * This function expects a psFits object with a FITS table as the first 10191 * extension. The table must have at least one row of data in it, that is of 10192 * the appropriate format (number of columns and their type). All other 10193 * extensions are ignored. 10194 * 10195 * @return true on success 10196 */ 10197 10198 bool magicNodeResultInsertFits( 10199 psDB *dbh, ///< Database handle 10200 const psFits *fits ///< psFits object 10201 ); 10202 10203 /** Selects up to limit from the database and returns them in a binary FITS table 10204 * 10205 * This function assumes an empty psFits object and will create a FITS table 10206 * as the first extension. 10207 * 10208 * See psDBSelectRows() for documentation on the format of where. 10209 * 10210 * @return true on success 10211 */ 10212 10213 bool magicNodeResultSelectRowsFits( 10214 psDB *dbh, ///< Database handle 10215 psFits *fits, ///< psFits object 10216 const psMetadata *where, ///< Row match criteria 10217 unsigned long long limit ///< Maximum number of elements to return 10218 ); 10219 10220 /** Convert a magicNodeResultRow into an equivalent psMetadata 10221 * 10222 * @return A psMetadata pointer or NULL on error 10223 */ 10224 10225 psMetadata *magicNodeResultMetadataFromObject( 10226 const magicNodeResultRow *object ///< fooRow to convert into a psMetadata 10227 ); 10228 10229 /** Convert a psMetadata into an equivalent fooRow 10230 * 10231 * @return A magicNodeResultRow pointer or NULL on error 10232 */ 10233 10234 magicNodeResultRow *magicNodeResultObjectFromMetadata( 10235 psMetadata *md ///< psMetadata to convert into a fooRow 10236 ); 10237 /** Selects up to limit rows from the database and returns as magicNodeResultRow objects in a psArray 10238 * 10239 * See psDBSelectRows() for documentation on the format of where. 10240 * 10241 * @return A psArray pointer or NULL on error 10242 */ 10243 10244 psArray *magicNodeResultSelectRowObjects( 10245 psDB *dbh, ///< Database handle 10246 const psMetadata *where, ///< Row match criteria 10247 unsigned long long limit ///< Maximum number of elements to return 10248 ); 10249 /** Deletes a row from the database coresponding to an magicNodeResult 10250 * 10251 * Note that a 'where' search psMetadata is constructed from each object and 10252 * used to find rows to delete. 10253 * 10254 * @return A The number of rows removed or a negative value on error 10255 */ 10256 10257 bool magicNodeResultDeleteObject( 10258 psDB *dbh, ///< Database handle 10259 const magicNodeResultRow *object ///< Object to delete 10260 ); 10261 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 10262 * 10263 * Note that a 'where' search psMetadata is constructed from each object and 10264 * used to find rows to delete. 10265 * 10266 * @return A The number of rows removed or a negative value on error 10267 */ 10268 10269 long long magicNodeResultDeleteRowObjects( 10270 psDB *dbh, ///< Database handle 10271 const psArray *objects, ///< Array of objects to delete 10272 unsigned long long limit ///< Maximum number of elements to delete 10273 ); 10274 /** Formats and prints an array of magicNodeResultRow objects 10275 * 10276 * When mdcf is set the formated output is in psMetadataConfig 10277 * format, otherwise it is in a simple tabular format. 10278 * 10279 * @return true on success 10280 */ 10281 10282 bool magicNodeResultPrintObjects( 10283 FILE *stream, ///< a stream 10284 psArray *objects, ///< An array of magicNodeResultRow objects 10285 bool mdcf ///< format as mdconfig or simple 10286 ); 10287 /** Formats and prints an magicNodeResultRow object 10288 * 10289 * When mdcf is set the formated output is in psMetadataConfig 10290 * format, otherwise it is in a simple tabular format. 10291 * 10292 * @return true on success 10293 */ 10294 10295 bool magicNodeResultPrintObject( 10296 FILE *stream, ///< a stream 10297 magicNodeResultRow *object, ///< an magicNodeResultRow object 10298 bool mdcf ///< format as mdconfig or simple 10299 ); 10300 /** magicMaskRow data structure 10301 * 10302 * Structure for representing a single row of magicMask table data. 10303 */ 10304 10305 typedef struct { 10306 psS64 magic_id; 10307 char *uri; 10308 } magicMaskRow; 10309 10310 /** Creates a new magicMaskRow object 10311 * 10312 * @return A new magicMaskRow object or NULL on failure. 10313 */ 10314 10315 magicMaskRow *magicMaskRowAlloc( 10316 psS64 magic_id, 10317 const char *uri 10318 ); 10319 10320 /** Creates a new magicMask table 10321 * 10322 * @return true on success 10323 */ 10324 10325 bool magicMaskCreateTable( 10326 psDB *dbh ///< Database handle 10327 ); 10328 10329 /** Deletes a magicMask table 10330 * 10331 * @return true on success 10332 */ 10333 10334 bool magicMaskDropTable( 10335 psDB *dbh ///< Database handle 10336 ); 10337 10338 /** Insert a single row into a table 10339 * 10340 * This function constructs and inserts a single row based on it's parameters. 10341 * 10342 * @return true on success 10343 */ 10344 10345 bool magicMaskInsert( 10346 psDB *dbh, ///< Database handle 10347 psS64 magic_id, 10348 const char *uri 10349 ); 10350 10351 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 10352 * 10353 * @return A The number of rows removed or a negative value on error 10354 */ 10355 10356 long long magicMaskDelete( 10357 psDB *dbh, ///< Database handle 10358 const psMetadata *where, ///< Row match criteria 10359 unsigned long long limit ///< Maximum number of elements to delete 10360 ); 10361 10362 /** Insert a single magicMaskRow object into a table 10363 * 10364 * This function constructs and inserts a single row based on it's parameters. 10365 * 10366 * @return true on success 10367 */ 10368 10369 bool magicMaskInsertObject( 10370 psDB *dbh, ///< Database handle 10371 magicMaskRow *object ///< magicMaskRow object 10372 ); 10373 10374 /** Insert an array of magicMaskRow object into a table 10375 * 10376 * This function constructs and inserts multiple rows based on it's parameters. 10377 * 10378 * @return true on success 10379 */ 10380 10381 bool magicMaskInsertObjects( 10382 psDB *dbh, ///< Database handle 10383 psArray *objects ///< array of magicMaskRow objects 10384 ); 10385 10386 /** Insert data from a binary FITS table magicMaskRow into the database 10387 * 10388 * This function expects a psFits object with a FITS table as the first 10389 * extension. The table must have at least one row of data in it, that is of 10390 * the appropriate format (number of columns and their type). All other 10391 * extensions are ignored. 10392 * 10393 * @return true on success 10394 */ 10395 10396 bool magicMaskInsertFits( 10397 psDB *dbh, ///< Database handle 10398 const psFits *fits ///< psFits object 10399 ); 10400 10401 /** Selects up to limit from the database and returns them in a binary FITS table 10402 * 10403 * This function assumes an empty psFits object and will create a FITS table 10404 * as the first extension. 10405 * 10406 * See psDBSelectRows() for documentation on the format of where. 10407 * 10408 * @return true on success 10409 */ 10410 10411 bool magicMaskSelectRowsFits( 10412 psDB *dbh, ///< Database handle 10413 psFits *fits, ///< psFits object 10414 const psMetadata *where, ///< Row match criteria 10415 unsigned long long limit ///< Maximum number of elements to return 10416 ); 10417 10418 /** Convert a magicMaskRow into an equivalent psMetadata 10419 * 10420 * @return A psMetadata pointer or NULL on error 10421 */ 10422 10423 psMetadata *magicMaskMetadataFromObject( 10424 const magicMaskRow *object ///< fooRow to convert into a psMetadata 10425 ); 10426 10427 /** Convert a psMetadata into an equivalent fooRow 10428 * 10429 * @return A magicMaskRow pointer or NULL on error 10430 */ 10431 10432 magicMaskRow *magicMaskObjectFromMetadata( 10433 psMetadata *md ///< psMetadata to convert into a fooRow 10434 ); 10435 /** Selects up to limit rows from the database and returns as magicMaskRow objects in a psArray 10436 * 10437 * See psDBSelectRows() for documentation on the format of where. 10438 * 10439 * @return A psArray pointer or NULL on error 10440 */ 10441 10442 psArray *magicMaskSelectRowObjects( 10443 psDB *dbh, ///< Database handle 10444 const psMetadata *where, ///< Row match criteria 10445 unsigned long long limit ///< Maximum number of elements to return 10446 ); 10447 /** Deletes a row from the database coresponding to an magicMask 10448 * 10449 * Note that a 'where' search psMetadata is constructed from each object and 10450 * used to find rows to delete. 10451 * 10452 * @return A The number of rows removed or a negative value on error 10453 */ 10454 10455 bool magicMaskDeleteObject( 10456 psDB *dbh, ///< Database handle 10457 const magicMaskRow *object ///< Object to delete 10458 ); 10459 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 10460 * 10461 * Note that a 'where' search psMetadata is constructed from each object and 10462 * used to find rows to delete. 10463 * 10464 * @return A The number of rows removed or a negative value on error 10465 */ 10466 10467 long long magicMaskDeleteRowObjects( 10468 psDB *dbh, ///< Database handle 10469 const psArray *objects, ///< Array of objects to delete 10470 unsigned long long limit ///< Maximum number of elements to delete 10471 ); 10472 /** Formats and prints an array of magicMaskRow objects 10473 * 10474 * When mdcf is set the formated output is in psMetadataConfig 10475 * format, otherwise it is in a simple tabular format. 10476 * 10477 * @return true on success 10478 */ 10479 10480 bool magicMaskPrintObjects( 10481 FILE *stream, ///< a stream 10482 psArray *objects, ///< An array of magicMaskRow objects 10483 bool mdcf ///< format as mdconfig or simple 10484 ); 10485 /** Formats and prints an magicMaskRow object 10486 * 10487 * When mdcf is set the formated output is in psMetadataConfig 10488 * format, otherwise it is in a simple tabular format. 10489 * 10490 * @return true on success 10491 */ 10492 10493 bool magicMaskPrintObject( 10494 FILE *stream, ///< a stream 10495 magicMaskRow *object, ///< an magicMaskRow object 10496 bool mdcf ///< format as mdconfig or simple 10497 ); 10498 /** magicSkyfileMaskRow data structure 10499 * 10500 * Structure for representing a single row of magicSkyfileMask table data. 10501 */ 10502 10503 typedef struct { 10504 psS64 magic_id; 10505 psS64 diff_id; 10506 char *uri; 10507 } magicSkyfileMaskRow; 10508 10509 /** Creates a new magicSkyfileMaskRow object 10510 * 10511 * @return A new magicSkyfileMaskRow object or NULL on failure. 10512 */ 10513 10514 magicSkyfileMaskRow *magicSkyfileMaskRowAlloc( 10515 psS64 magic_id, 10516 psS64 diff_id, 10517 const char *uri 10518 ); 10519 10520 /** Creates a new magicSkyfileMask table 10521 * 10522 * @return true on success 10523 */ 10524 10525 bool magicSkyfileMaskCreateTable( 10526 psDB *dbh ///< Database handle 10527 ); 10528 10529 /** Deletes a magicSkyfileMask table 10530 * 10531 * @return true on success 10532 */ 10533 10534 bool magicSkyfileMaskDropTable( 10535 psDB *dbh ///< Database handle 10536 ); 10537 10538 /** Insert a single row into a table 10539 * 10540 * This function constructs and inserts a single row based on it's parameters. 10541 * 10542 * @return true on success 10543 */ 10544 10545 bool magicSkyfileMaskInsert( 10546 psDB *dbh, ///< Database handle 10547 psS64 magic_id, 10548 psS64 diff_id, 10549 const char *uri 10550 ); 10551 10552 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 10553 * 10554 * @return A The number of rows removed or a negative value on error 10555 */ 10556 10557 long long magicSkyfileMaskDelete( 10558 psDB *dbh, ///< Database handle 10559 const psMetadata *where, ///< Row match criteria 10560 unsigned long long limit ///< Maximum number of elements to delete 10561 ); 10562 10563 /** Insert a single magicSkyfileMaskRow object into a table 10564 * 10565 * This function constructs and inserts a single row based on it's parameters. 10566 * 10567 * @return true on success 10568 */ 10569 10570 bool magicSkyfileMaskInsertObject( 10571 psDB *dbh, ///< Database handle 10572 magicSkyfileMaskRow *object ///< magicSkyfileMaskRow object 10573 ); 10574 10575 /** Insert an array of magicSkyfileMaskRow object into a table 10576 * 10577 * This function constructs and inserts multiple rows based on it's parameters. 10578 * 10579 * @return true on success 10580 */ 10581 10582 bool magicSkyfileMaskInsertObjects( 10583 psDB *dbh, ///< Database handle 10584 psArray *objects ///< array of magicSkyfileMaskRow objects 10585 ); 10586 10587 /** Insert data from a binary FITS table magicSkyfileMaskRow into the database 10588 * 10589 * This function expects a psFits object with a FITS table as the first 10590 * extension. The table must have at least one row of data in it, that is of 10591 * the appropriate format (number of columns and their type). All other 10592 * extensions are ignored. 10593 * 10594 * @return true on success 10595 */ 10596 10597 bool magicSkyfileMaskInsertFits( 10598 psDB *dbh, ///< Database handle 10599 const psFits *fits ///< psFits object 10600 ); 10601 10602 /** Selects up to limit from the database and returns them in a binary FITS table 10603 * 10604 * This function assumes an empty psFits object and will create a FITS table 10605 * as the first extension. 10606 * 10607 * See psDBSelectRows() for documentation on the format of where. 10608 * 10609 * @return true on success 10610 */ 10611 10612 bool magicSkyfileMaskSelectRowsFits( 10613 psDB *dbh, ///< Database handle 10614 psFits *fits, ///< psFits object 10615 const psMetadata *where, ///< Row match criteria 10616 unsigned long long limit ///< Maximum number of elements to return 10617 ); 10618 10619 /** Convert a magicSkyfileMaskRow into an equivalent psMetadata 10620 * 10621 * @return A psMetadata pointer or NULL on error 10622 */ 10623 10624 psMetadata *magicSkyfileMaskMetadataFromObject( 10625 const magicSkyfileMaskRow *object ///< fooRow to convert into a psMetadata 10626 ); 10627 10628 /** Convert a psMetadata into an equivalent fooRow 10629 * 10630 * @return A magicSkyfileMaskRow pointer or NULL on error 10631 */ 10632 10633 magicSkyfileMaskRow *magicSkyfileMaskObjectFromMetadata( 10634 psMetadata *md ///< psMetadata to convert into a fooRow 10635 ); 10636 /** Selects up to limit rows from the database and returns as magicSkyfileMaskRow objects in a psArray 10637 * 10638 * See psDBSelectRows() for documentation on the format of where. 10639 * 10640 * @return A psArray pointer or NULL on error 10641 */ 10642 10643 psArray *magicSkyfileMaskSelectRowObjects( 10644 psDB *dbh, ///< Database handle 10645 const psMetadata *where, ///< Row match criteria 10646 unsigned long long limit ///< Maximum number of elements to return 10647 ); 10648 /** Deletes a row from the database coresponding to an magicSkyfileMask 10649 * 10650 * Note that a 'where' search psMetadata is constructed from each object and 10651 * used to find rows to delete. 10652 * 10653 * @return A The number of rows removed or a negative value on error 10654 */ 10655 10656 bool magicSkyfileMaskDeleteObject( 10657 psDB *dbh, ///< Database handle 10658 const magicSkyfileMaskRow *object ///< Object to delete 10659 ); 10660 /** Deletes up to limit rows from the database and returns the number of rows actually deleted. 10661 * 10662 * Note that a 'where' search psMetadata is constructed from each object and 10663 * used to find rows to delete. 10664 * 10665 * @return A The number of rows removed or a negative value on error 10666 */ 10667 10668 long long magicSkyfileMaskDeleteRowObjects( 10669 psDB *dbh, ///< Database handle 10670 const psArray *objects, ///< Array of objects to delete 10671 unsigned long long limit ///< Maximum number of elements to delete 10672 ); 10673 /** Formats and prints an array of magicSkyfileMaskRow objects 10674 * 10675 * When mdcf is set the formated output is in psMetadataConfig 10676 * format, otherwise it is in a simple tabular format. 10677 * 10678 * @return true on success 10679 */ 10680 10681 bool magicSkyfileMaskPrintObjects( 10682 FILE *stream, ///< a stream 10683 psArray *objects, ///< An array of magicSkyfileMaskRow objects 10684 bool mdcf ///< format as mdconfig or simple 10685 ); 10686 /** Formats and prints an magicSkyfileMaskRow object 10687 * 10688 * When mdcf is set the formated output is in psMetadataConfig 10689 * format, otherwise it is in a simple tabular format. 10690 * 10691 * @return true on success 10692 */ 10693 10694 bool magicSkyfileMaskPrintObject( 10695 FILE *stream, ///< a stream 10696 magicSkyfileMaskRow *object, ///< an magicSkyfileMaskRow object 10697 bool mdcf ///< format as mdconfig or simple 10698 ); 8776 10699 8777 10700 /// @} … … 8781 10704 #endif 8782 10705 8783 #endif // DETRUNSUMMARY_DB_H10706 #endif // MAGICSKYFILEMASK_DB_H -
trunk/ippdb/tests/alloc.c
r15420 r15421 9 9 { 10 10 { 11 pzDataStoreRow *object; 12 13 object = pzDataStoreRowAlloc("a string", "a string", "a string" ); 14 15 if (!object) { 16 exit(EXIT_FAILURE); 17 } 18 19 if (strncmp(object->camera, "a string", MAX_STRING_LENGTH)) { 20 psFree(object); 21 exit(EXIT_FAILURE); 22 } 23 if (strncmp(object->telescope, "a string", MAX_STRING_LENGTH)) { 24 psFree(object); 25 exit(EXIT_FAILURE); 26 } 27 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 28 psFree(object); 29 exit(EXIT_FAILURE); 30 } 31 32 psFree(object); 33 } 34 35 { 11 36 summitExpRow *object; 12 37 … … 125 150 pzPendingImfileRow *object; 126 151 127 object = pzPendingImfileRowAlloc("a string", "a string", "a string", "a string", "a string" , -64);152 object = pzPendingImfileRowAlloc("a string", "a string", "a string", "a string", "a string" ); 128 153 129 154 if (!object) { … … 151 176 exit(EXIT_FAILURE); 152 177 } 178 179 psFree(object); 180 } 181 182 { 183 pzDoneExpRow *object; 184 185 object = pzDoneExpRowAlloc("a string", "a string", "a string" ); 186 187 if (!object) { 188 exit(EXIT_FAILURE); 189 } 190 191 if (strncmp(object->exp_name, "a string", MAX_STRING_LENGTH)) { 192 psFree(object); 193 exit(EXIT_FAILURE); 194 } 195 if (strncmp(object->camera, "a string", MAX_STRING_LENGTH)) { 196 psFree(object); 197 exit(EXIT_FAILURE); 198 } 199 if (strncmp(object->telescope, "a string", MAX_STRING_LENGTH)) { 200 psFree(object); 201 exit(EXIT_FAILURE); 202 } 203 204 psFree(object); 205 } 206 207 { 208 pzDoneImfileRow *object; 209 210 object = pzDoneImfileRowAlloc("a string", "a string", "a string", "a string", "a string", "a string" ); 211 212 if (!object) { 213 exit(EXIT_FAILURE); 214 } 215 216 if (strncmp(object->exp_name, "a string", MAX_STRING_LENGTH)) { 217 psFree(object); 218 exit(EXIT_FAILURE); 219 } 220 if (strncmp(object->camera, "a string", MAX_STRING_LENGTH)) { 221 psFree(object); 222 exit(EXIT_FAILURE); 223 } 224 if (strncmp(object->telescope, "a string", MAX_STRING_LENGTH)) { 225 psFree(object); 226 exit(EXIT_FAILURE); 227 } 228 if (strncmp(object->class, "a string", MAX_STRING_LENGTH)) { 229 psFree(object); 230 exit(EXIT_FAILURE); 231 } 232 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 233 psFree(object); 234 exit(EXIT_FAILURE); 235 } 236 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 237 psFree(object); 238 exit(EXIT_FAILURE); 239 } 240 241 psFree(object); 242 } 243 244 { 245 newExpRow *object; 246 247 object = newExpRowAlloc(-64, "a string", "a string", "a string", "a string", "a string", "a string", "a string" ); 248 249 if (!object) { 250 exit(EXIT_FAILURE); 251 } 252 153 253 if (!object->exp_id == -64) { 154 254 psFree(object); 155 255 exit(EXIT_FAILURE); 156 256 } 157 158 psFree(object); 159 } 160 161 { 162 pzDoneExpRow *object; 163 164 object = pzDoneExpRowAlloc("a string", "a string", "a string" ); 165 166 if (!object) { 167 exit(EXIT_FAILURE); 168 } 169 257 if (strncmp(object->tmp_exp_name, "a string", MAX_STRING_LENGTH)) { 258 psFree(object); 259 exit(EXIT_FAILURE); 260 } 261 if (strncmp(object->tmp_camera, "a string", MAX_STRING_LENGTH)) { 262 psFree(object); 263 exit(EXIT_FAILURE); 264 } 265 if (strncmp(object->tmp_telescope, "a string", MAX_STRING_LENGTH)) { 266 psFree(object); 267 exit(EXIT_FAILURE); 268 } 269 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 270 psFree(object); 271 exit(EXIT_FAILURE); 272 } 273 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 274 psFree(object); 275 exit(EXIT_FAILURE); 276 } 277 if (strncmp(object->workdir_state, "a string", MAX_STRING_LENGTH)) { 278 psFree(object); 279 exit(EXIT_FAILURE); 280 } 281 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) { 282 psFree(object); 283 exit(EXIT_FAILURE); 284 } 285 286 psFree(object); 287 } 288 289 { 290 newImfileRow *object; 291 292 object = newImfileRowAlloc(-64, "a string", "a string" ); 293 294 if (!object) { 295 exit(EXIT_FAILURE); 296 } 297 298 if (!object->exp_id == -64) { 299 psFree(object); 300 exit(EXIT_FAILURE); 301 } 302 if (strncmp(object->tmp_class_id, "a string", MAX_STRING_LENGTH)) { 303 psFree(object); 304 exit(EXIT_FAILURE); 305 } 306 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 307 psFree(object); 308 exit(EXIT_FAILURE); 309 } 310 311 psFree(object); 312 } 313 314 { 315 rawExpRow *object; 316 317 object = rawExpRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16 ); 318 319 if (!object) { 320 exit(EXIT_FAILURE); 321 } 322 323 if (!object->exp_id == -64) { 324 psFree(object); 325 exit(EXIT_FAILURE); 326 } 170 327 if (strncmp(object->exp_name, "a string", MAX_STRING_LENGTH)) { 171 328 psFree(object); … … 180 337 exit(EXIT_FAILURE); 181 338 } 182 183 psFree(object); 184 } 185 186 { 187 pzDoneImfileRow *object; 188 189 object = pzDoneImfileRowAlloc("a string", "a string", "a string", "a string", "a string", -64, "a string" ); 190 191 if (!object) { 192 exit(EXIT_FAILURE); 193 } 194 339 psFree(object); 340 exit(EXIT_FAILURE); 341 } 342 if (strncmp(object->exp_tag, "a string", MAX_STRING_LENGTH)) { 343 psFree(object); 344 exit(EXIT_FAILURE); 345 } 346 if (strncmp(object->exp_type, "a string", MAX_STRING_LENGTH)) { 347 psFree(object); 348 exit(EXIT_FAILURE); 349 } 350 if (strncmp(object->filelevel, "a string", MAX_STRING_LENGTH)) { 351 psFree(object); 352 exit(EXIT_FAILURE); 353 } 354 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 355 psFree(object); 356 exit(EXIT_FAILURE); 357 } 358 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) { 359 psFree(object); 360 exit(EXIT_FAILURE); 361 } 362 if (strncmp(object->filter, "a string", MAX_STRING_LENGTH)) { 363 psFree(object); 364 exit(EXIT_FAILURE); 365 } 366 if (!object->airmass == 32.32) { 367 psFree(object); 368 exit(EXIT_FAILURE); 369 } 370 if (!object->ra == 64.64) { 371 psFree(object); 372 exit(EXIT_FAILURE); 373 } 374 if (!object->decl == 64.64) { 375 psFree(object); 376 exit(EXIT_FAILURE); 377 } 378 if (!object->exp_time == 32.32) { 379 psFree(object); 380 exit(EXIT_FAILURE); 381 } 382 if (!object->sat_pixel_frac == 32.32) { 383 psFree(object); 384 exit(EXIT_FAILURE); 385 } 386 if (!object->bg == 64.64) { 387 psFree(object); 388 exit(EXIT_FAILURE); 389 } 390 if (!object->bg_stdev == 64.64) { 391 psFree(object); 392 exit(EXIT_FAILURE); 393 } 394 if (!object->bg_mean_stdev == 64.64) { 395 psFree(object); 396 exit(EXIT_FAILURE); 397 } 398 if (!object->alt == 64.64) { 399 psFree(object); 400 exit(EXIT_FAILURE); 401 } 402 if (!object->az == 64.64) { 403 psFree(object); 404 exit(EXIT_FAILURE); 405 } 406 if (!object->ccd_temp == 32.32) { 407 psFree(object); 408 exit(EXIT_FAILURE); 409 } 410 if (!object->posang == 64.64) { 411 psFree(object); 412 exit(EXIT_FAILURE); 413 } 414 if (!object->user_1 == 64.64) { 415 psFree(object); 416 exit(EXIT_FAILURE); 417 } 418 if (!object->user_2 == 64.64) { 419 psFree(object); 420 exit(EXIT_FAILURE); 421 } 422 if (!object->user_3 == 64.64) { 423 psFree(object); 424 exit(EXIT_FAILURE); 425 } 426 if (!object->user_4 == 64.64) { 427 psFree(object); 428 exit(EXIT_FAILURE); 429 } 430 if (!object->user_5 == 64.64) { 431 psFree(object); 432 exit(EXIT_FAILURE); 433 } 434 if (strncmp(object->object, "a string", MAX_STRING_LENGTH)) { 435 psFree(object); 436 exit(EXIT_FAILURE); 437 } 438 if (!object->solang == 32.32) { 439 psFree(object); 440 exit(EXIT_FAILURE); 441 } 442 if (!object->fault == -16) { 443 psFree(object); 444 exit(EXIT_FAILURE); 445 } 446 447 psFree(object); 448 } 449 450 { 451 rawImfileRow *object; 452 453 object = rawImfileRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 ); 454 455 if (!object) { 456 exit(EXIT_FAILURE); 457 } 458 459 if (!object->exp_id == -64) { 460 psFree(object); 461 exit(EXIT_FAILURE); 462 } 195 463 if (strncmp(object->exp_name, "a string", MAX_STRING_LENGTH)) { 196 464 psFree(object); … … 205 473 exit(EXIT_FAILURE); 206 474 } 207 if (strncmp(object->class, "a string", MAX_STRING_LENGTH)) { 475 psFree(object); 476 exit(EXIT_FAILURE); 477 } 478 if (strncmp(object->tmp_class_id, "a string", MAX_STRING_LENGTH)) { 208 479 psFree(object); 209 480 exit(EXIT_FAILURE); … … 213 484 exit(EXIT_FAILURE); 214 485 } 486 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 487 psFree(object); 488 exit(EXIT_FAILURE); 489 } 490 if (strncmp(object->exp_type, "a string", MAX_STRING_LENGTH)) { 491 psFree(object); 492 exit(EXIT_FAILURE); 493 } 494 if (strncmp(object->filelevel, "a string", MAX_STRING_LENGTH)) { 495 psFree(object); 496 exit(EXIT_FAILURE); 497 } 498 if (strncmp(object->filter, "a string", MAX_STRING_LENGTH)) { 499 psFree(object); 500 exit(EXIT_FAILURE); 501 } 502 if (!object->airmass == 32.32) { 503 psFree(object); 504 exit(EXIT_FAILURE); 505 } 506 if (!object->ra == 64.64) { 507 psFree(object); 508 exit(EXIT_FAILURE); 509 } 510 if (!object->decl == 64.64) { 511 psFree(object); 512 exit(EXIT_FAILURE); 513 } 514 if (!object->exp_time == 32.32) { 515 psFree(object); 516 exit(EXIT_FAILURE); 517 } 518 if (!object->sat_pixel_frac == 32.32) { 519 psFree(object); 520 exit(EXIT_FAILURE); 521 } 522 if (!object->bg == 64.64) { 523 psFree(object); 524 exit(EXIT_FAILURE); 525 } 526 if (!object->bg_stdev == 64.64) { 527 psFree(object); 528 exit(EXIT_FAILURE); 529 } 530 if (!object->bg_mean_stdev == 64.64) { 531 psFree(object); 532 exit(EXIT_FAILURE); 533 } 534 if (!object->alt == 64.64) { 535 psFree(object); 536 exit(EXIT_FAILURE); 537 } 538 if (!object->az == 64.64) { 539 psFree(object); 540 exit(EXIT_FAILURE); 541 } 542 if (!object->ccd_temp == 32.32) { 543 psFree(object); 544 exit(EXIT_FAILURE); 545 } 546 if (!object->posang == 64.64) { 547 psFree(object); 548 exit(EXIT_FAILURE); 549 } 550 if (!object->user_1 == 64.64) { 551 psFree(object); 552 exit(EXIT_FAILURE); 553 } 554 if (!object->user_2 == 64.64) { 555 psFree(object); 556 exit(EXIT_FAILURE); 557 } 558 if (!object->user_3 == 64.64) { 559 psFree(object); 560 exit(EXIT_FAILURE); 561 } 562 if (!object->user_4 == 64.64) { 563 psFree(object); 564 exit(EXIT_FAILURE); 565 } 566 if (!object->user_5 == 64.64) { 567 psFree(object); 568 exit(EXIT_FAILURE); 569 } 570 if (strncmp(object->object, "a string", MAX_STRING_LENGTH)) { 571 psFree(object); 572 exit(EXIT_FAILURE); 573 } 574 if (!object->fault == -16) { 575 psFree(object); 576 exit(EXIT_FAILURE); 577 } 578 579 psFree(object); 580 } 581 582 { 583 guidePendingExpRow *object; 584 585 object = guidePendingExpRowAlloc(-64, -64, "a string" ); 586 587 if (!object) { 588 exit(EXIT_FAILURE); 589 } 590 591 if (!object->guide_id == -64) { 592 psFree(object); 593 exit(EXIT_FAILURE); 594 } 215 595 if (!object->exp_id == -64) { 216 596 psFree(object); 217 597 exit(EXIT_FAILURE); 218 598 } 599 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 600 psFree(object); 601 exit(EXIT_FAILURE); 602 } 603 604 psFree(object); 605 } 606 607 { 608 chipRunRow *object; 609 610 object = chipRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string" ); 611 612 if (!object) { 613 exit(EXIT_FAILURE); 614 } 615 616 if (!object->chip_id == -64) { 617 psFree(object); 618 exit(EXIT_FAILURE); 619 } 620 if (!object->exp_id == -64) { 621 psFree(object); 622 exit(EXIT_FAILURE); 623 } 624 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 625 psFree(object); 626 exit(EXIT_FAILURE); 627 } 628 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 629 psFree(object); 630 exit(EXIT_FAILURE); 631 } 632 if (strncmp(object->workdir_state, "a string", MAX_STRING_LENGTH)) { 633 psFree(object); 634 exit(EXIT_FAILURE); 635 } 636 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 637 psFree(object); 638 exit(EXIT_FAILURE); 639 } 640 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) { 641 psFree(object); 642 exit(EXIT_FAILURE); 643 } 644 if (strncmp(object->expgroup, "a string", MAX_STRING_LENGTH)) { 645 psFree(object); 646 exit(EXIT_FAILURE); 647 } 648 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 649 psFree(object); 650 exit(EXIT_FAILURE); 651 } 652 653 psFree(object); 654 } 655 656 { 657 chipProcessedImfileRow *object; 658 659 object = chipProcessedImfileRowAlloc(-64, -64, "a string", "a string", 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, -32, -32, -32, -32, "a string", -16 ); 660 661 if (!object) { 662 exit(EXIT_FAILURE); 663 } 664 665 if (!object->chip_id == -64) { 666 psFree(object); 667 exit(EXIT_FAILURE); 668 } 669 if (!object->exp_id == -64) { 670 psFree(object); 671 exit(EXIT_FAILURE); 672 } 673 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 674 psFree(object); 675 exit(EXIT_FAILURE); 676 } 219 677 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 220 678 psFree(object); 221 679 exit(EXIT_FAILURE); 222 680 } 223 224 psFree(object); 225 } 226 227 { 228 newExpRow *object; 229 230 object = newExpRowAlloc(-64, "a string", "a string", "a string", "a string", -32, "a string", "a string" ); 231 232 if (!object) { 233 exit(EXIT_FAILURE); 234 } 235 681 if (!object->bg == 32.32) { 682 psFree(object); 683 exit(EXIT_FAILURE); 684 } 685 if (!object->bg_stdev == 32.32) { 686 psFree(object); 687 exit(EXIT_FAILURE); 688 } 689 if (!object->bg_mean_stdev == 32.32) { 690 psFree(object); 691 exit(EXIT_FAILURE); 692 } 693 if (!object->bias == 32.32) { 694 psFree(object); 695 exit(EXIT_FAILURE); 696 } 697 if (!object->bias_stdev == 32.32) { 698 psFree(object); 699 exit(EXIT_FAILURE); 700 } 701 if (!object->fringe_0 == 32.32) { 702 psFree(object); 703 exit(EXIT_FAILURE); 704 } 705 if (!object->fringe_1 == 32.32) { 706 psFree(object); 707 exit(EXIT_FAILURE); 708 } 709 if (!object->fringe_2 == 32.32) { 710 psFree(object); 711 exit(EXIT_FAILURE); 712 } 713 if (!object->sigma_ra == 32.32) { 714 psFree(object); 715 exit(EXIT_FAILURE); 716 } 717 if (!object->sigma_dec == 32.32) { 718 psFree(object); 719 exit(EXIT_FAILURE); 720 } 721 if (!object->ap_resid == 32.32) { 722 psFree(object); 723 exit(EXIT_FAILURE); 724 } 725 if (!object->ap_resid_stdev == 32.32) { 726 psFree(object); 727 exit(EXIT_FAILURE); 728 } 729 if (!object->fwhm == 32.32) { 730 psFree(object); 731 exit(EXIT_FAILURE); 732 } 733 if (!object->fwhm_range == 32.32) { 734 psFree(object); 735 exit(EXIT_FAILURE); 736 } 737 if (!object->n_stars == -32) { 738 psFree(object); 739 exit(EXIT_FAILURE); 740 } 741 if (!object->n_extended == -32) { 742 psFree(object); 743 exit(EXIT_FAILURE); 744 } 745 if (!object->n_cr == -32) { 746 psFree(object); 747 exit(EXIT_FAILURE); 748 } 749 if (!object->n_astrom == -32) { 750 psFree(object); 751 exit(EXIT_FAILURE); 752 } 753 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 754 psFree(object); 755 exit(EXIT_FAILURE); 756 } 757 if (!object->fault == -16) { 758 psFree(object); 759 exit(EXIT_FAILURE); 760 } 761 762 psFree(object); 763 } 764 765 { 766 chipMaskRow *object; 767 768 object = chipMaskRowAlloc("a string" ); 769 770 if (!object) { 771 exit(EXIT_FAILURE); 772 } 773 774 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 775 psFree(object); 776 exit(EXIT_FAILURE); 777 } 778 779 psFree(object); 780 } 781 782 { 783 camRunRow *object; 784 785 object = camRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string" ); 786 787 if (!object) { 788 exit(EXIT_FAILURE); 789 } 790 791 if (!object->cam_id == -64) { 792 psFree(object); 793 exit(EXIT_FAILURE); 794 } 795 if (!object->chip_id == -64) { 796 psFree(object); 797 exit(EXIT_FAILURE); 798 } 799 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 800 psFree(object); 801 exit(EXIT_FAILURE); 802 } 803 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 804 psFree(object); 805 exit(EXIT_FAILURE); 806 } 807 if (strncmp(object->workdir_state, "a string", MAX_STRING_LENGTH)) { 808 psFree(object); 809 exit(EXIT_FAILURE); 810 } 811 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 812 psFree(object); 813 exit(EXIT_FAILURE); 814 } 815 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) { 816 psFree(object); 817 exit(EXIT_FAILURE); 818 } 819 if (strncmp(object->expgroup, "a string", MAX_STRING_LENGTH)) { 820 psFree(object); 821 exit(EXIT_FAILURE); 822 } 823 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 824 psFree(object); 825 exit(EXIT_FAILURE); 826 } 827 828 psFree(object); 829 } 830 831 { 832 camProcessedExpRow *object; 833 834 object = camProcessedExpRowAlloc(-64, -64, "a string", 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, -32, -32, -32, -32, "a string", -16 ); 835 836 if (!object) { 837 exit(EXIT_FAILURE); 838 } 839 840 if (!object->cam_id == -64) { 841 psFree(object); 842 exit(EXIT_FAILURE); 843 } 844 if (!object->chip_id == -64) { 845 psFree(object); 846 exit(EXIT_FAILURE); 847 } 848 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 849 psFree(object); 850 exit(EXIT_FAILURE); 851 } 852 if (!object->bg == 32.32) { 853 psFree(object); 854 exit(EXIT_FAILURE); 855 } 856 if (!object->bg_stdev == 32.32) { 857 psFree(object); 858 exit(EXIT_FAILURE); 859 } 860 if (!object->bg_mean_stdev == 32.32) { 861 psFree(object); 862 exit(EXIT_FAILURE); 863 } 864 if (!object->sigma_ra == 32.32) { 865 psFree(object); 866 exit(EXIT_FAILURE); 867 } 868 if (!object->sigma_dec == 32.32) { 869 psFree(object); 870 exit(EXIT_FAILURE); 871 } 872 if (!object->zp_mean == 32.32) { 873 psFree(object); 874 exit(EXIT_FAILURE); 875 } 876 if (!object->zp_stdev == 32.32) { 877 psFree(object); 878 exit(EXIT_FAILURE); 879 } 880 if (!object->fwhm == 32.32) { 881 psFree(object); 882 exit(EXIT_FAILURE); 883 } 884 if (!object->fwhm_range == 32.32) { 885 psFree(object); 886 exit(EXIT_FAILURE); 887 } 888 if (!object->n_stars == -32) { 889 psFree(object); 890 exit(EXIT_FAILURE); 891 } 892 if (!object->n_extended == -32) { 893 psFree(object); 894 exit(EXIT_FAILURE); 895 } 896 if (!object->n_cr == -32) { 897 psFree(object); 898 exit(EXIT_FAILURE); 899 } 900 if (!object->n_astrom == -32) { 901 psFree(object); 902 exit(EXIT_FAILURE); 903 } 904 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 905 psFree(object); 906 exit(EXIT_FAILURE); 907 } 908 if (!object->fault == -16) { 909 psFree(object); 910 exit(EXIT_FAILURE); 911 } 912 913 psFree(object); 914 } 915 916 { 917 camMaskRow *object; 918 919 object = camMaskRowAlloc("a string" ); 920 921 if (!object) { 922 exit(EXIT_FAILURE); 923 } 924 925 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 926 psFree(object); 927 exit(EXIT_FAILURE); 928 } 929 930 psFree(object); 931 } 932 933 { 934 warpRunRow *object; 935 936 object = warpRunRowAlloc(-64, "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z" ); 937 938 if (!object) { 939 exit(EXIT_FAILURE); 940 } 941 942 if (!object->warp_id == -64) { 943 psFree(object); 944 exit(EXIT_FAILURE); 945 } 946 if (strncmp(object->mode, "a string", MAX_STRING_LENGTH)) { 947 psFree(object); 948 exit(EXIT_FAILURE); 949 } 950 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 951 psFree(object); 952 exit(EXIT_FAILURE); 953 } 954 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 955 psFree(object); 956 exit(EXIT_FAILURE); 957 } 958 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 959 psFree(object); 960 exit(EXIT_FAILURE); 961 } 962 psFree(object); 963 exit(EXIT_FAILURE); 964 } 965 966 psFree(object); 967 } 968 969 { 970 warpInputExpRow *object; 971 972 object = warpInputExpRowAlloc(-64, -64, true ); 973 974 if (!object) { 975 exit(EXIT_FAILURE); 976 } 977 978 if (!object->warp_id == -64) { 979 psFree(object); 980 exit(EXIT_FAILURE); 981 } 982 if (!object->cam_id == -64) { 983 psFree(object); 984 exit(EXIT_FAILURE); 985 } 986 if (!object->magiced == true) { 987 psFree(object); 988 exit(EXIT_FAILURE); 989 } 990 991 psFree(object); 992 } 993 994 { 995 warpSkyCellMapRow *object; 996 997 object = warpSkyCellMapRowAlloc(-64, "a string", "a string", -64, "a string", -16 ); 998 999 if (!object) { 1000 exit(EXIT_FAILURE); 1001 } 1002 1003 if (!object->warp_id == -64) { 1004 psFree(object); 1005 exit(EXIT_FAILURE); 1006 } 1007 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 1008 psFree(object); 1009 exit(EXIT_FAILURE); 1010 } 1011 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 1012 psFree(object); 1013 exit(EXIT_FAILURE); 1014 } 1015 if (!object->cam_id == -64) { 1016 psFree(object); 1017 exit(EXIT_FAILURE); 1018 } 1019 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 1020 psFree(object); 1021 exit(EXIT_FAILURE); 1022 } 1023 if (!object->fault == -16) { 1024 psFree(object); 1025 exit(EXIT_FAILURE); 1026 } 1027 1028 psFree(object); 1029 } 1030 1031 { 1032 warpSkyfileRow *object; 1033 1034 object = warpSkyfileRowAlloc(-64, "a string", "a string", "a string", "a string", 64.64, 64.64, 64.64, -16 ); 1035 1036 if (!object) { 1037 exit(EXIT_FAILURE); 1038 } 1039 1040 if (!object->warp_id == -64) { 1041 psFree(object); 1042 exit(EXIT_FAILURE); 1043 } 1044 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 1045 psFree(object); 1046 exit(EXIT_FAILURE); 1047 } 1048 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 1049 psFree(object); 1050 exit(EXIT_FAILURE); 1051 } 1052 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 1053 psFree(object); 1054 exit(EXIT_FAILURE); 1055 } 1056 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1057 psFree(object); 1058 exit(EXIT_FAILURE); 1059 } 1060 if (!object->bg == 64.64) { 1061 psFree(object); 1062 exit(EXIT_FAILURE); 1063 } 1064 if (!object->bg_stdev == 64.64) { 1065 psFree(object); 1066 exit(EXIT_FAILURE); 1067 } 1068 if (!object->good_frac == 64.64) { 1069 psFree(object); 1070 exit(EXIT_FAILURE); 1071 } 1072 if (!object->fault == -16) { 1073 psFree(object); 1074 exit(EXIT_FAILURE); 1075 } 1076 1077 psFree(object); 1078 } 1079 1080 { 1081 diffRunRow *object; 1082 1083 object = diffRunRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string" ); 1084 1085 if (!object) { 1086 exit(EXIT_FAILURE); 1087 } 1088 1089 if (!object->diff_id == -64) { 1090 psFree(object); 1091 exit(EXIT_FAILURE); 1092 } 1093 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 1094 psFree(object); 1095 exit(EXIT_FAILURE); 1096 } 1097 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 1098 psFree(object); 1099 exit(EXIT_FAILURE); 1100 } 1101 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 1102 psFree(object); 1103 exit(EXIT_FAILURE); 1104 } 1105 psFree(object); 1106 exit(EXIT_FAILURE); 1107 } 1108 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 1109 psFree(object); 1110 exit(EXIT_FAILURE); 1111 } 1112 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 1113 psFree(object); 1114 exit(EXIT_FAILURE); 1115 } 1116 1117 psFree(object); 1118 } 1119 1120 { 1121 diffInputSkyfileRow *object; 1122 1123 object = diffInputSkyfileRowAlloc(-64, true, -64, -64, "a string", "a string", "a string" ); 1124 1125 if (!object) { 1126 exit(EXIT_FAILURE); 1127 } 1128 1129 if (!object->diff_id == -64) { 1130 psFree(object); 1131 exit(EXIT_FAILURE); 1132 } 1133 if (!object->template == true) { 1134 psFree(object); 1135 exit(EXIT_FAILURE); 1136 } 1137 if (!object->stack_id == -64) { 1138 psFree(object); 1139 exit(EXIT_FAILURE); 1140 } 1141 if (!object->warp_id == -64) { 1142 psFree(object); 1143 exit(EXIT_FAILURE); 1144 } 1145 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 1146 psFree(object); 1147 exit(EXIT_FAILURE); 1148 } 1149 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 1150 psFree(object); 1151 exit(EXIT_FAILURE); 1152 } 1153 if (strncmp(object->kind, "a string", MAX_STRING_LENGTH)) { 1154 psFree(object); 1155 exit(EXIT_FAILURE); 1156 } 1157 1158 psFree(object); 1159 } 1160 1161 { 1162 diffSkyfileRow *object; 1163 1164 object = diffSkyfileRowAlloc(-64, "a string", "a string", 64.64, 64.64, 64.64, -16 ); 1165 1166 if (!object) { 1167 exit(EXIT_FAILURE); 1168 } 1169 1170 if (!object->diff_id == -64) { 1171 psFree(object); 1172 exit(EXIT_FAILURE); 1173 } 1174 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 1175 psFree(object); 1176 exit(EXIT_FAILURE); 1177 } 1178 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1179 psFree(object); 1180 exit(EXIT_FAILURE); 1181 } 1182 if (!object->bg == 64.64) { 1183 psFree(object); 1184 exit(EXIT_FAILURE); 1185 } 1186 if (!object->bg_stdev == 64.64) { 1187 psFree(object); 1188 exit(EXIT_FAILURE); 1189 } 1190 if (!object->good_frac == 64.64) { 1191 psFree(object); 1192 exit(EXIT_FAILURE); 1193 } 1194 if (!object->fault == -16) { 1195 psFree(object); 1196 exit(EXIT_FAILURE); 1197 } 1198 1199 psFree(object); 1200 } 1201 1202 { 1203 stackRunRow *object; 1204 1205 object = stackRunRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string" ); 1206 1207 if (!object) { 1208 exit(EXIT_FAILURE); 1209 } 1210 1211 if (!object->stack_id == -64) { 1212 psFree(object); 1213 exit(EXIT_FAILURE); 1214 } 1215 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 1216 psFree(object); 1217 exit(EXIT_FAILURE); 1218 } 1219 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 1220 psFree(object); 1221 exit(EXIT_FAILURE); 1222 } 1223 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 1224 psFree(object); 1225 exit(EXIT_FAILURE); 1226 } 1227 psFree(object); 1228 exit(EXIT_FAILURE); 1229 } 1230 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 1231 psFree(object); 1232 exit(EXIT_FAILURE); 1233 } 1234 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 1235 psFree(object); 1236 exit(EXIT_FAILURE); 1237 } 1238 1239 psFree(object); 1240 } 1241 1242 { 1243 stackInputSkyfileRow *object; 1244 1245 object = stackInputSkyfileRowAlloc(-64, -64 ); 1246 1247 if (!object) { 1248 exit(EXIT_FAILURE); 1249 } 1250 1251 if (!object->stack_id == -64) { 1252 psFree(object); 1253 exit(EXIT_FAILURE); 1254 } 1255 if (!object->warp_id == -64) { 1256 psFree(object); 1257 exit(EXIT_FAILURE); 1258 } 1259 1260 psFree(object); 1261 } 1262 1263 { 1264 stackSumSkyfileRow *object; 1265 1266 object = stackSumSkyfileRowAlloc(-64, "a string", "a string", 64.64, 64.64, 64.64, -16 ); 1267 1268 if (!object) { 1269 exit(EXIT_FAILURE); 1270 } 1271 1272 if (!object->stack_id == -64) { 1273 psFree(object); 1274 exit(EXIT_FAILURE); 1275 } 1276 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 1277 psFree(object); 1278 exit(EXIT_FAILURE); 1279 } 1280 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1281 psFree(object); 1282 exit(EXIT_FAILURE); 1283 } 1284 if (!object->bg == 64.64) { 1285 psFree(object); 1286 exit(EXIT_FAILURE); 1287 } 1288 if (!object->bg_stdev == 64.64) { 1289 psFree(object); 1290 exit(EXIT_FAILURE); 1291 } 1292 if (!object->good_frac == 64.64) { 1293 psFree(object); 1294 exit(EXIT_FAILURE); 1295 } 1296 if (!object->fault == -16) { 1297 psFree(object); 1298 exit(EXIT_FAILURE); 1299 } 1300 1301 psFree(object); 1302 } 1303 1304 { 1305 detRunRow *object; 1306 1307 object = detRunRowAlloc(-64, -32, "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 64.64, 64.64, "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", 32.32, 32.32, "a string", -32 ); 1308 1309 if (!object) { 1310 exit(EXIT_FAILURE); 1311 } 1312 1313 if (!object->det_id == -64) { 1314 psFree(object); 1315 exit(EXIT_FAILURE); 1316 } 1317 if (!object->iteration == -32) { 1318 psFree(object); 1319 exit(EXIT_FAILURE); 1320 } 1321 if (strncmp(object->det_type, "a string", MAX_STRING_LENGTH)) { 1322 psFree(object); 1323 exit(EXIT_FAILURE); 1324 } 1325 if (strncmp(object->mode, "a string", MAX_STRING_LENGTH)) { 1326 psFree(object); 1327 exit(EXIT_FAILURE); 1328 } 1329 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 1330 psFree(object); 1331 exit(EXIT_FAILURE); 1332 } 1333 if (strncmp(object->filelevel, "a string", MAX_STRING_LENGTH)) { 1334 psFree(object); 1335 exit(EXIT_FAILURE); 1336 } 1337 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 1338 psFree(object); 1339 exit(EXIT_FAILURE); 1340 } 1341 if (strncmp(object->camera, "a string", MAX_STRING_LENGTH)) { 1342 psFree(object); 1343 exit(EXIT_FAILURE); 1344 } 1345 if (strncmp(object->telescope, "a string", MAX_STRING_LENGTH)) { 1346 psFree(object); 1347 exit(EXIT_FAILURE); 1348 } 1349 if (strncmp(object->exp_type, "a string", MAX_STRING_LENGTH)) { 1350 psFree(object); 1351 exit(EXIT_FAILURE); 1352 } 1353 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) { 1354 psFree(object); 1355 exit(EXIT_FAILURE); 1356 } 1357 if (strncmp(object->filter, "a string", MAX_STRING_LENGTH)) { 1358 psFree(object); 1359 exit(EXIT_FAILURE); 1360 } 1361 if (!object->airmass_min == 32.32) { 1362 psFree(object); 1363 exit(EXIT_FAILURE); 1364 } 1365 if (!object->airmass_max == 32.32) { 1366 psFree(object); 1367 exit(EXIT_FAILURE); 1368 } 1369 if (!object->exp_time_min == 32.32) { 1370 psFree(object); 1371 exit(EXIT_FAILURE); 1372 } 1373 if (!object->exp_time_max == 32.32) { 1374 psFree(object); 1375 exit(EXIT_FAILURE); 1376 } 1377 if (!object->ccd_temp_min == 32.32) { 1378 psFree(object); 1379 exit(EXIT_FAILURE); 1380 } 1381 if (!object->ccd_temp_max == 32.32) { 1382 psFree(object); 1383 exit(EXIT_FAILURE); 1384 } 1385 if (!object->posang_min == 64.64) { 1386 psFree(object); 1387 exit(EXIT_FAILURE); 1388 } 1389 if (!object->posang_max == 64.64) { 1390 psFree(object); 1391 exit(EXIT_FAILURE); 1392 } 1393 psFree(object); 1394 exit(EXIT_FAILURE); 1395 } 1396 psFree(object); 1397 exit(EXIT_FAILURE); 1398 } 1399 psFree(object); 1400 exit(EXIT_FAILURE); 1401 } 1402 psFree(object); 1403 exit(EXIT_FAILURE); 1404 } 1405 psFree(object); 1406 exit(EXIT_FAILURE); 1407 } 1408 if (!object->solang_min == 32.32) { 1409 psFree(object); 1410 exit(EXIT_FAILURE); 1411 } 1412 if (!object->solang_max == 32.32) { 1413 psFree(object); 1414 exit(EXIT_FAILURE); 1415 } 1416 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 1417 psFree(object); 1418 exit(EXIT_FAILURE); 1419 } 1420 if (!object->parent == -32) { 1421 psFree(object); 1422 exit(EXIT_FAILURE); 1423 } 1424 1425 psFree(object); 1426 } 1427 1428 { 1429 detInputExpRow *object; 1430 1431 object = detInputExpRowAlloc(-64, -32, -64, true ); 1432 1433 if (!object) { 1434 exit(EXIT_FAILURE); 1435 } 1436 1437 if (!object->det_id == -64) { 1438 psFree(object); 1439 exit(EXIT_FAILURE); 1440 } 1441 if (!object->iteration == -32) { 1442 psFree(object); 1443 exit(EXIT_FAILURE); 1444 } 236 1445 if (!object->exp_id == -64) { 237 1446 psFree(object); 238 1447 exit(EXIT_FAILURE); 239 1448 } 240 if (strncmp(object->tmp_exp_name, "a string", MAX_STRING_LENGTH)) { 241 psFree(object); 242 exit(EXIT_FAILURE); 243 } 244 if (strncmp(object->tmp_camera, "a string", MAX_STRING_LENGTH)) { 245 psFree(object); 246 exit(EXIT_FAILURE); 247 } 248 if (strncmp(object->tmp_telescope, "a string", MAX_STRING_LENGTH)) { 1449 if (!object->include == true) { 1450 psFree(object); 1451 exit(EXIT_FAILURE); 1452 } 1453 1454 psFree(object); 1455 } 1456 1457 { 1458 detProcessedImfileRow *object; 1459 1460 object = detProcessedImfileRowAlloc(-64, -64, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 ); 1461 1462 if (!object) { 1463 exit(EXIT_FAILURE); 1464 } 1465 1466 if (!object->det_id == -64) { 1467 psFree(object); 1468 exit(EXIT_FAILURE); 1469 } 1470 if (!object->exp_id == -64) { 1471 psFree(object); 1472 exit(EXIT_FAILURE); 1473 } 1474 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 1475 psFree(object); 1476 exit(EXIT_FAILURE); 1477 } 1478 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 1479 psFree(object); 1480 exit(EXIT_FAILURE); 1481 } 1482 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 1483 psFree(object); 1484 exit(EXIT_FAILURE); 1485 } 1486 if (!object->bg == 64.64) { 1487 psFree(object); 1488 exit(EXIT_FAILURE); 1489 } 1490 if (!object->bg_stdev == 64.64) { 1491 psFree(object); 1492 exit(EXIT_FAILURE); 1493 } 1494 if (!object->bg_mean_stdev == 64.64) { 1495 psFree(object); 1496 exit(EXIT_FAILURE); 1497 } 1498 if (!object->fringe_0 == 64.64) { 1499 psFree(object); 1500 exit(EXIT_FAILURE); 1501 } 1502 if (!object->fringe_1 == 64.64) { 1503 psFree(object); 1504 exit(EXIT_FAILURE); 1505 } 1506 if (!object->fringe_2 == 64.64) { 1507 psFree(object); 1508 exit(EXIT_FAILURE); 1509 } 1510 if (!object->user_1 == 64.64) { 1511 psFree(object); 1512 exit(EXIT_FAILURE); 1513 } 1514 if (!object->user_2 == 64.64) { 1515 psFree(object); 1516 exit(EXIT_FAILURE); 1517 } 1518 if (!object->user_3 == 64.64) { 1519 psFree(object); 1520 exit(EXIT_FAILURE); 1521 } 1522 if (!object->user_4 == 64.64) { 1523 psFree(object); 1524 exit(EXIT_FAILURE); 1525 } 1526 if (!object->user_5 == 64.64) { 1527 psFree(object); 1528 exit(EXIT_FAILURE); 1529 } 1530 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1531 psFree(object); 1532 exit(EXIT_FAILURE); 1533 } 1534 if (!object->fault == -16) { 1535 psFree(object); 1536 exit(EXIT_FAILURE); 1537 } 1538 1539 psFree(object); 1540 } 1541 1542 { 1543 detProcessedExpRow *object; 1544 1545 object = detProcessedExpRowAlloc(-64, -64, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 ); 1546 1547 if (!object) { 1548 exit(EXIT_FAILURE); 1549 } 1550 1551 if (!object->det_id == -64) { 1552 psFree(object); 1553 exit(EXIT_FAILURE); 1554 } 1555 if (!object->exp_id == -64) { 1556 psFree(object); 1557 exit(EXIT_FAILURE); 1558 } 1559 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 1560 psFree(object); 1561 exit(EXIT_FAILURE); 1562 } 1563 if (!object->bg == 64.64) { 1564 psFree(object); 1565 exit(EXIT_FAILURE); 1566 } 1567 if (!object->bg_stdev == 64.64) { 1568 psFree(object); 1569 exit(EXIT_FAILURE); 1570 } 1571 if (!object->bg_mean_stdev == 64.64) { 1572 psFree(object); 1573 exit(EXIT_FAILURE); 1574 } 1575 if (!object->fringe_0 == 64.64) { 1576 psFree(object); 1577 exit(EXIT_FAILURE); 1578 } 1579 if (!object->fringe_1 == 64.64) { 1580 psFree(object); 1581 exit(EXIT_FAILURE); 1582 } 1583 if (!object->fringe_2 == 64.64) { 1584 psFree(object); 1585 exit(EXIT_FAILURE); 1586 } 1587 if (!object->user_1 == 64.64) { 1588 psFree(object); 1589 exit(EXIT_FAILURE); 1590 } 1591 if (!object->user_2 == 64.64) { 1592 psFree(object); 1593 exit(EXIT_FAILURE); 1594 } 1595 if (!object->user_3 == 64.64) { 1596 psFree(object); 1597 exit(EXIT_FAILURE); 1598 } 1599 if (!object->user_4 == 64.64) { 1600 psFree(object); 1601 exit(EXIT_FAILURE); 1602 } 1603 if (!object->user_5 == 64.64) { 1604 psFree(object); 1605 exit(EXIT_FAILURE); 1606 } 1607 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1608 psFree(object); 1609 exit(EXIT_FAILURE); 1610 } 1611 if (!object->fault == -16) { 1612 psFree(object); 1613 exit(EXIT_FAILURE); 1614 } 1615 1616 psFree(object); 1617 } 1618 1619 { 1620 detStackedImfileRow *object; 1621 1622 object = detStackedImfileRowAlloc(-64, -32, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, -16 ); 1623 1624 if (!object) { 1625 exit(EXIT_FAILURE); 1626 } 1627 1628 if (!object->det_id == -64) { 1629 psFree(object); 1630 exit(EXIT_FAILURE); 1631 } 1632 if (!object->iteration == -32) { 1633 psFree(object); 1634 exit(EXIT_FAILURE); 1635 } 1636 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 1637 psFree(object); 1638 exit(EXIT_FAILURE); 1639 } 1640 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 1641 psFree(object); 1642 exit(EXIT_FAILURE); 1643 } 1644 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 1645 psFree(object); 1646 exit(EXIT_FAILURE); 1647 } 1648 if (!object->bg == 64.64) { 1649 psFree(object); 1650 exit(EXIT_FAILURE); 1651 } 1652 if (!object->bg_stdev == 64.64) { 1653 psFree(object); 1654 exit(EXIT_FAILURE); 1655 } 1656 if (!object->bg_mean_stdev == 64.64) { 1657 psFree(object); 1658 exit(EXIT_FAILURE); 1659 } 1660 if (!object->user_1 == 64.64) { 1661 psFree(object); 1662 exit(EXIT_FAILURE); 1663 } 1664 if (!object->user_2 == 64.64) { 1665 psFree(object); 1666 exit(EXIT_FAILURE); 1667 } 1668 if (!object->user_3 == 64.64) { 1669 psFree(object); 1670 exit(EXIT_FAILURE); 1671 } 1672 if (!object->user_4 == 64.64) { 1673 psFree(object); 1674 exit(EXIT_FAILURE); 1675 } 1676 if (!object->user_5 == 64.64) { 1677 psFree(object); 1678 exit(EXIT_FAILURE); 1679 } 1680 if (!object->fault == -16) { 1681 psFree(object); 1682 exit(EXIT_FAILURE); 1683 } 1684 1685 psFree(object); 1686 } 1687 1688 { 1689 detNormalizedStatImfileRow *object; 1690 1691 object = detNormalizedStatImfileRowAlloc(-64, -32, "a string", 32.32, -16 ); 1692 1693 if (!object) { 1694 exit(EXIT_FAILURE); 1695 } 1696 1697 if (!object->det_id == -64) { 1698 psFree(object); 1699 exit(EXIT_FAILURE); 1700 } 1701 if (!object->iteration == -32) { 1702 psFree(object); 1703 exit(EXIT_FAILURE); 1704 } 1705 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 1706 psFree(object); 1707 exit(EXIT_FAILURE); 1708 } 1709 if (!object->norm == 32.32) { 1710 psFree(object); 1711 exit(EXIT_FAILURE); 1712 } 1713 if (!object->fault == -16) { 1714 psFree(object); 1715 exit(EXIT_FAILURE); 1716 } 1717 1718 psFree(object); 1719 } 1720 1721 { 1722 detNormalizedImfileRow *object; 1723 1724 object = detNormalizedImfileRowAlloc(-64, -32, "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 ); 1725 1726 if (!object) { 1727 exit(EXIT_FAILURE); 1728 } 1729 1730 if (!object->det_id == -64) { 1731 psFree(object); 1732 exit(EXIT_FAILURE); 1733 } 1734 if (!object->iteration == -32) { 1735 psFree(object); 1736 exit(EXIT_FAILURE); 1737 } 1738 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 1739 psFree(object); 1740 exit(EXIT_FAILURE); 1741 } 1742 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 1743 psFree(object); 1744 exit(EXIT_FAILURE); 1745 } 1746 if (!object->bg == 64.64) { 1747 psFree(object); 1748 exit(EXIT_FAILURE); 1749 } 1750 if (!object->bg_stdev == 64.64) { 1751 psFree(object); 1752 exit(EXIT_FAILURE); 1753 } 1754 if (!object->bg_mean_stdev == 64.64) { 1755 psFree(object); 1756 exit(EXIT_FAILURE); 1757 } 1758 if (!object->user_1 == 64.64) { 1759 psFree(object); 1760 exit(EXIT_FAILURE); 1761 } 1762 if (!object->user_2 == 64.64) { 1763 psFree(object); 1764 exit(EXIT_FAILURE); 1765 } 1766 if (!object->user_3 == 64.64) { 1767 psFree(object); 1768 exit(EXIT_FAILURE); 1769 } 1770 if (!object->user_4 == 64.64) { 1771 psFree(object); 1772 exit(EXIT_FAILURE); 1773 } 1774 if (!object->user_5 == 64.64) { 1775 psFree(object); 1776 exit(EXIT_FAILURE); 1777 } 1778 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1779 psFree(object); 1780 exit(EXIT_FAILURE); 1781 } 1782 if (!object->fault == -16) { 1783 psFree(object); 1784 exit(EXIT_FAILURE); 1785 } 1786 1787 psFree(object); 1788 } 1789 1790 { 1791 detNormalizedExpRow *object; 1792 1793 object = detNormalizedExpRowAlloc(-64, -32, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 ); 1794 1795 if (!object) { 1796 exit(EXIT_FAILURE); 1797 } 1798 1799 if (!object->det_id == -64) { 1800 psFree(object); 1801 exit(EXIT_FAILURE); 1802 } 1803 if (!object->iteration == -32) { 1804 psFree(object); 1805 exit(EXIT_FAILURE); 1806 } 1807 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 1808 psFree(object); 1809 exit(EXIT_FAILURE); 1810 } 1811 if (!object->bg == 64.64) { 1812 psFree(object); 1813 exit(EXIT_FAILURE); 1814 } 1815 if (!object->bg_stdev == 64.64) { 1816 psFree(object); 1817 exit(EXIT_FAILURE); 1818 } 1819 if (!object->bg_mean_stdev == 64.64) { 1820 psFree(object); 1821 exit(EXIT_FAILURE); 1822 } 1823 if (!object->user_1 == 64.64) { 1824 psFree(object); 1825 exit(EXIT_FAILURE); 1826 } 1827 if (!object->user_2 == 64.64) { 1828 psFree(object); 1829 exit(EXIT_FAILURE); 1830 } 1831 if (!object->user_3 == 64.64) { 1832 psFree(object); 1833 exit(EXIT_FAILURE); 1834 } 1835 if (!object->user_4 == 64.64) { 1836 psFree(object); 1837 exit(EXIT_FAILURE); 1838 } 1839 if (!object->user_5 == 64.64) { 1840 psFree(object); 1841 exit(EXIT_FAILURE); 1842 } 1843 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1844 psFree(object); 1845 exit(EXIT_FAILURE); 1846 } 1847 if (!object->fault == -16) { 1848 psFree(object); 1849 exit(EXIT_FAILURE); 1850 } 1851 1852 psFree(object); 1853 } 1854 1855 { 1856 detResidImfileRow *object; 1857 1858 object = detResidImfileRowAlloc(-64, -32, -64, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 ); 1859 1860 if (!object) { 1861 exit(EXIT_FAILURE); 1862 } 1863 1864 if (!object->det_id == -64) { 1865 psFree(object); 1866 exit(EXIT_FAILURE); 1867 } 1868 if (!object->iteration == -32) { 1869 psFree(object); 1870 exit(EXIT_FAILURE); 1871 } 1872 if (!object->exp_id == -64) { 1873 psFree(object); 1874 exit(EXIT_FAILURE); 1875 } 1876 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 1877 psFree(object); 1878 exit(EXIT_FAILURE); 1879 } 1880 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 1881 psFree(object); 1882 exit(EXIT_FAILURE); 1883 } 1884 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 1885 psFree(object); 1886 exit(EXIT_FAILURE); 1887 } 1888 if (!object->bg == 64.64) { 1889 psFree(object); 1890 exit(EXIT_FAILURE); 1891 } 1892 if (!object->bg_stdev == 64.64) { 1893 psFree(object); 1894 exit(EXIT_FAILURE); 1895 } 1896 if (!object->bg_mean_stdev == 64.64) { 1897 psFree(object); 1898 exit(EXIT_FAILURE); 1899 } 1900 if (!object->bg_skewness == 64.64) { 1901 psFree(object); 1902 exit(EXIT_FAILURE); 1903 } 1904 if (!object->bg_kurtosis == 64.64) { 1905 psFree(object); 1906 exit(EXIT_FAILURE); 1907 } 1908 if (!object->bin_stdev == 64.64) { 1909 psFree(object); 1910 exit(EXIT_FAILURE); 1911 } 1912 if (!object->fringe_0 == 64.64) { 1913 psFree(object); 1914 exit(EXIT_FAILURE); 1915 } 1916 if (!object->fringe_1 == 64.64) { 1917 psFree(object); 1918 exit(EXIT_FAILURE); 1919 } 1920 if (!object->fringe_2 == 64.64) { 1921 psFree(object); 1922 exit(EXIT_FAILURE); 1923 } 1924 if (!object->fringe_resid_0 == 64.64) { 1925 psFree(object); 1926 exit(EXIT_FAILURE); 1927 } 1928 if (!object->fringe_resid_1 == 64.64) { 1929 psFree(object); 1930 exit(EXIT_FAILURE); 1931 } 1932 if (!object->fringe_resid_2 == 64.64) { 1933 psFree(object); 1934 exit(EXIT_FAILURE); 1935 } 1936 if (!object->user_1 == 64.64) { 1937 psFree(object); 1938 exit(EXIT_FAILURE); 1939 } 1940 if (!object->user_2 == 64.64) { 1941 psFree(object); 1942 exit(EXIT_FAILURE); 1943 } 1944 if (!object->user_3 == 64.64) { 1945 psFree(object); 1946 exit(EXIT_FAILURE); 1947 } 1948 if (!object->user_4 == 64.64) { 1949 psFree(object); 1950 exit(EXIT_FAILURE); 1951 } 1952 if (!object->user_5 == 64.64) { 1953 psFree(object); 1954 exit(EXIT_FAILURE); 1955 } 1956 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1957 psFree(object); 1958 exit(EXIT_FAILURE); 1959 } 1960 if (!object->fault == -16) { 1961 psFree(object); 1962 exit(EXIT_FAILURE); 1963 } 1964 1965 psFree(object); 1966 } 1967 1968 { 1969 detResidExpRow *object; 1970 1971 object = detResidExpRowAlloc(-64, -32, -64, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", true, -16 ); 1972 1973 if (!object) { 1974 exit(EXIT_FAILURE); 1975 } 1976 1977 if (!object->det_id == -64) { 1978 psFree(object); 1979 exit(EXIT_FAILURE); 1980 } 1981 if (!object->iteration == -32) { 1982 psFree(object); 1983 exit(EXIT_FAILURE); 1984 } 1985 if (!object->exp_id == -64) { 1986 psFree(object); 1987 exit(EXIT_FAILURE); 1988 } 1989 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 1990 psFree(object); 1991 exit(EXIT_FAILURE); 1992 } 1993 if (!object->bg == 64.64) { 1994 psFree(object); 1995 exit(EXIT_FAILURE); 1996 } 1997 if (!object->bg_stdev == 64.64) { 1998 psFree(object); 1999 exit(EXIT_FAILURE); 2000 } 2001 if (!object->bg_mean_stdev == 64.64) { 2002 psFree(object); 2003 exit(EXIT_FAILURE); 2004 } 2005 if (!object->bg_skewness == 64.64) { 2006 psFree(object); 2007 exit(EXIT_FAILURE); 2008 } 2009 if (!object->bg_kurtosis == 64.64) { 2010 psFree(object); 2011 exit(EXIT_FAILURE); 2012 } 2013 if (!object->bin_stdev == 64.64) { 2014 psFree(object); 2015 exit(EXIT_FAILURE); 2016 } 2017 if (!object->fringe_0 == 64.64) { 2018 psFree(object); 2019 exit(EXIT_FAILURE); 2020 } 2021 if (!object->fringe_1 == 64.64) { 2022 psFree(object); 2023 exit(EXIT_FAILURE); 2024 } 2025 if (!object->fringe_2 == 64.64) { 2026 psFree(object); 2027 exit(EXIT_FAILURE); 2028 } 2029 if (!object->fringe_resid_0 == 64.64) { 2030 psFree(object); 2031 exit(EXIT_FAILURE); 2032 } 2033 if (!object->fringe_resid_1 == 64.64) { 2034 psFree(object); 2035 exit(EXIT_FAILURE); 2036 } 2037 if (!object->fringe_resid_2 == 64.64) { 2038 psFree(object); 2039 exit(EXIT_FAILURE); 2040 } 2041 if (!object->user_1 == 64.64) { 2042 psFree(object); 2043 exit(EXIT_FAILURE); 2044 } 2045 if (!object->user_2 == 64.64) { 2046 psFree(object); 2047 exit(EXIT_FAILURE); 2048 } 2049 if (!object->user_3 == 64.64) { 2050 psFree(object); 2051 exit(EXIT_FAILURE); 2052 } 2053 if (!object->user_4 == 64.64) { 2054 psFree(object); 2055 exit(EXIT_FAILURE); 2056 } 2057 if (!object->user_5 == 64.64) { 2058 psFree(object); 2059 exit(EXIT_FAILURE); 2060 } 2061 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 2062 psFree(object); 2063 exit(EXIT_FAILURE); 2064 } 2065 if (!object->accept == true) { 2066 psFree(object); 2067 exit(EXIT_FAILURE); 2068 } 2069 if (!object->fault == -16) { 2070 psFree(object); 2071 exit(EXIT_FAILURE); 2072 } 2073 2074 psFree(object); 2075 } 2076 2077 { 2078 detRunSummaryRow *object; 2079 2080 object = detRunSummaryRowAlloc(-64, -32, 64.64, 64.64, 64.64, true, -16 ); 2081 2082 if (!object) { 2083 exit(EXIT_FAILURE); 2084 } 2085 2086 if (!object->det_id == -64) { 2087 psFree(object); 2088 exit(EXIT_FAILURE); 2089 } 2090 if (!object->iteration == -32) { 2091 psFree(object); 2092 exit(EXIT_FAILURE); 2093 } 2094 if (!object->bg == 64.64) { 2095 psFree(object); 2096 exit(EXIT_FAILURE); 2097 } 2098 if (!object->bg_stdev == 64.64) { 2099 psFree(object); 2100 exit(EXIT_FAILURE); 2101 } 2102 if (!object->bg_mean_stdev == 64.64) { 2103 psFree(object); 2104 exit(EXIT_FAILURE); 2105 } 2106 if (!object->accept == true) { 2107 psFree(object); 2108 exit(EXIT_FAILURE); 2109 } 2110 if (!object->fault == -16) { 2111 psFree(object); 2112 exit(EXIT_FAILURE); 2113 } 2114 2115 psFree(object); 2116 } 2117 2118 { 2119 detRegisteredImfileRow *object; 2120 2121 object = detRegisteredImfileRowAlloc(-64, -32, "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 ); 2122 2123 if (!object) { 2124 exit(EXIT_FAILURE); 2125 } 2126 2127 if (!object->det_id == -64) { 2128 psFree(object); 2129 exit(EXIT_FAILURE); 2130 } 2131 if (!object->iteration == -32) { 2132 psFree(object); 2133 exit(EXIT_FAILURE); 2134 } 2135 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 2136 psFree(object); 2137 exit(EXIT_FAILURE); 2138 } 2139 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 2140 psFree(object); 2141 exit(EXIT_FAILURE); 2142 } 2143 if (!object->bg == 64.64) { 2144 psFree(object); 2145 exit(EXIT_FAILURE); 2146 } 2147 if (!object->bg_stdev == 64.64) { 2148 psFree(object); 2149 exit(EXIT_FAILURE); 2150 } 2151 if (!object->bg_mean_stdev == 64.64) { 2152 psFree(object); 2153 exit(EXIT_FAILURE); 2154 } 2155 if (!object->user_1 == 64.64) { 2156 psFree(object); 2157 exit(EXIT_FAILURE); 2158 } 2159 if (!object->user_2 == 64.64) { 2160 psFree(object); 2161 exit(EXIT_FAILURE); 2162 } 2163 if (!object->user_3 == 64.64) { 2164 psFree(object); 2165 exit(EXIT_FAILURE); 2166 } 2167 if (!object->user_4 == 64.64) { 2168 psFree(object); 2169 exit(EXIT_FAILURE); 2170 } 2171 if (!object->user_5 == 64.64) { 2172 psFree(object); 2173 exit(EXIT_FAILURE); 2174 } 2175 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 2176 psFree(object); 2177 exit(EXIT_FAILURE); 2178 } 2179 if (!object->fault == -16) { 2180 psFree(object); 2181 exit(EXIT_FAILURE); 2182 } 2183 2184 psFree(object); 2185 } 2186 2187 { 2188 detCorrectedExpRow *object; 2189 2190 object = detCorrectedExpRowAlloc(-64, -64, "a string", -64, "a string", "a string", "a string", -16 ); 2191 2192 if (!object) { 2193 exit(EXIT_FAILURE); 2194 } 2195 2196 if (!object->det_id == -64) { 2197 psFree(object); 2198 exit(EXIT_FAILURE); 2199 } 2200 if (!object->exp_id == -64) { 2201 psFree(object); 2202 exit(EXIT_FAILURE); 2203 } 2204 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 2205 psFree(object); 2206 exit(EXIT_FAILURE); 2207 } 2208 if (!object->corr_id == -64) { 2209 psFree(object); 2210 exit(EXIT_FAILURE); 2211 } 2212 if (strncmp(object->corr_type, "a string", MAX_STRING_LENGTH)) { 2213 psFree(object); 2214 exit(EXIT_FAILURE); 2215 } 2216 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 2217 psFree(object); 2218 exit(EXIT_FAILURE); 2219 } 2220 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 2221 psFree(object); 2222 exit(EXIT_FAILURE); 2223 } 2224 if (!object->fault == -16) { 2225 psFree(object); 2226 exit(EXIT_FAILURE); 2227 } 2228 2229 psFree(object); 2230 } 2231 2232 { 2233 detCorrectedImfileRow *object; 2234 2235 object = detCorrectedImfileRowAlloc(-64, -64, "a string", "a string", "a string", -16 ); 2236 2237 if (!object) { 2238 exit(EXIT_FAILURE); 2239 } 2240 2241 if (!object->det_id == -64) { 2242 psFree(object); 2243 exit(EXIT_FAILURE); 2244 } 2245 if (!object->exp_id == -64) { 2246 psFree(object); 2247 exit(EXIT_FAILURE); 2248 } 2249 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 2250 psFree(object); 2251 exit(EXIT_FAILURE); 2252 } 2253 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 2254 psFree(object); 2255 exit(EXIT_FAILURE); 2256 } 2257 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 2258 psFree(object); 2259 exit(EXIT_FAILURE); 2260 } 2261 if (!object->fault == -16) { 2262 psFree(object); 2263 exit(EXIT_FAILURE); 2264 } 2265 2266 psFree(object); 2267 } 2268 2269 { 2270 magicRunRow *object; 2271 2272 object = magicRunRowAlloc(-64, "a string", "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z" ); 2273 2274 if (!object) { 2275 exit(EXIT_FAILURE); 2276 } 2277 2278 if (!object->magic_id == -64) { 249 2279 psFree(object); 250 2280 exit(EXIT_FAILURE); … … 254 2284 exit(EXIT_FAILURE); 255 2285 } 256 if (!object->imfiles == -32) {257 psFree(object);258 exit(EXIT_FAILURE);259 }260 2286 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 261 2287 psFree(object); … … 266 2292 exit(EXIT_FAILURE); 267 2293 } 268 269 psFree(object); 270 } 271 272 { 273 newImfileRow *object; 274 275 object = newImfileRowAlloc(-64, "a string", "a string" ); 276 277 if (!object) { 278 exit(EXIT_FAILURE); 279 } 280 281 if (!object->exp_id == -64) { 282 psFree(object); 283 exit(EXIT_FAILURE); 284 } 285 if (strncmp(object->tmp_class_id, "a string", MAX_STRING_LENGTH)) { 2294 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 2295 psFree(object); 2296 exit(EXIT_FAILURE); 2297 } 2298 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 2299 psFree(object); 2300 exit(EXIT_FAILURE); 2301 } 2302 psFree(object); 2303 exit(EXIT_FAILURE); 2304 } 2305 2306 psFree(object); 2307 } 2308 2309 { 2310 magicInputSkyfileRow *object; 2311 2312 object = magicInputSkyfileRowAlloc(-64, -64, "a string" ); 2313 2314 if (!object) { 2315 exit(EXIT_FAILURE); 2316 } 2317 2318 if (!object->magic_id == -64) { 2319 psFree(object); 2320 exit(EXIT_FAILURE); 2321 } 2322 if (!object->diff_id == -64) { 2323 psFree(object); 2324 exit(EXIT_FAILURE); 2325 } 2326 if (strncmp(object->node, "a string", MAX_STRING_LENGTH)) { 2327 psFree(object); 2328 exit(EXIT_FAILURE); 2329 } 2330 2331 psFree(object); 2332 } 2333 2334 { 2335 magicTreeRow *object; 2336 2337 object = magicTreeRowAlloc(-64, "a string", "a string" ); 2338 2339 if (!object) { 2340 exit(EXIT_FAILURE); 2341 } 2342 2343 if (!object->magic_id == -64) { 2344 psFree(object); 2345 exit(EXIT_FAILURE); 2346 } 2347 if (strncmp(object->node, "a string", MAX_STRING_LENGTH)) { 2348 psFree(object); 2349 exit(EXIT_FAILURE); 2350 } 2351 if (strncmp(object->dep, "a string", MAX_STRING_LENGTH)) { 2352 psFree(object); 2353 exit(EXIT_FAILURE); 2354 } 2355 2356 psFree(object); 2357 } 2358 2359 { 2360 magicNodeResultRow *object; 2361 2362 object = magicNodeResultRowAlloc(-64, "a string", "a string" ); 2363 2364 if (!object) { 2365 exit(EXIT_FAILURE); 2366 } 2367 2368 if (!object->magic_id == -64) { 2369 psFree(object); 2370 exit(EXIT_FAILURE); 2371 } 2372 if (strncmp(object->node, "a string", MAX_STRING_LENGTH)) { 286 2373 psFree(object); 287 2374 exit(EXIT_FAILURE); … … 296 2383 297 2384 { 298 rawExpRow *object; 299 300 object = rawExpRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", -32, "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16 ); 301 302 if (!object) { 303 exit(EXIT_FAILURE); 304 } 305 306 if (!object->exp_id == -64) { 307 psFree(object); 308 exit(EXIT_FAILURE); 309 } 310 if (strncmp(object->exp_name, "a string", MAX_STRING_LENGTH)) { 311 psFree(object); 312 exit(EXIT_FAILURE); 313 } 314 if (strncmp(object->camera, "a string", MAX_STRING_LENGTH)) { 315 psFree(object); 316 exit(EXIT_FAILURE); 317 } 318 if (strncmp(object->telescope, "a string", MAX_STRING_LENGTH)) { 319 psFree(object); 320 exit(EXIT_FAILURE); 321 } 322 psFree(object); 323 exit(EXIT_FAILURE); 324 } 325 if (strncmp(object->exp_tag, "a string", MAX_STRING_LENGTH)) { 326 psFree(object); 327 exit(EXIT_FAILURE); 328 } 329 if (strncmp(object->exp_type, "a string", MAX_STRING_LENGTH)) { 330 psFree(object); 331 exit(EXIT_FAILURE); 332 } 333 if (!object->imfiles == -32) { 334 psFree(object); 335 exit(EXIT_FAILURE); 336 } 337 if (strncmp(object->filelevel, "a string", MAX_STRING_LENGTH)) { 338 psFree(object); 339 exit(EXIT_FAILURE); 340 } 341 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 342 psFree(object); 343 exit(EXIT_FAILURE); 344 } 345 if (strncmp(object->filter, "a string", MAX_STRING_LENGTH)) { 346 psFree(object); 347 exit(EXIT_FAILURE); 348 } 349 if (!object->airmass == 32.32) { 350 psFree(object); 351 exit(EXIT_FAILURE); 352 } 353 if (!object->ra == 64.64) { 354 psFree(object); 355 exit(EXIT_FAILURE); 356 } 357 if (!object->decl == 64.64) { 358 psFree(object); 359 exit(EXIT_FAILURE); 360 } 361 if (!object->exp_time == 32.32) { 362 psFree(object); 363 exit(EXIT_FAILURE); 364 } 365 if (!object->sat_pixel_frac == 32.32) { 366 psFree(object); 367 exit(EXIT_FAILURE); 368 } 369 if (!object->bg == 64.64) { 370 psFree(object); 371 exit(EXIT_FAILURE); 372 } 373 if (!object->bg_stdev == 64.64) { 374 psFree(object); 375 exit(EXIT_FAILURE); 376 } 377 if (!object->bg_mean_stdev == 64.64) { 378 psFree(object); 379 exit(EXIT_FAILURE); 380 } 381 if (!object->alt == 64.64) { 382 psFree(object); 383 exit(EXIT_FAILURE); 384 } 385 if (!object->az == 64.64) { 386 psFree(object); 387 exit(EXIT_FAILURE); 388 } 389 if (!object->ccd_temp == 32.32) { 390 psFree(object); 391 exit(EXIT_FAILURE); 392 } 393 if (!object->posang == 64.64) { 394 psFree(object); 395 exit(EXIT_FAILURE); 396 } 397 if (!object->user_1 == 64.64) { 398 psFree(object); 399 exit(EXIT_FAILURE); 400 } 401 if (!object->user_2 == 64.64) { 402 psFree(object); 403 exit(EXIT_FAILURE); 404 } 405 if (!object->user_3 == 64.64) { 406 psFree(object); 407 exit(EXIT_FAILURE); 408 } 409 if (!object->user_4 == 64.64) { 410 psFree(object); 411 exit(EXIT_FAILURE); 412 } 413 if (!object->user_5 == 64.64) { 414 psFree(object); 415 exit(EXIT_FAILURE); 416 } 417 if (strncmp(object->object, "a string", MAX_STRING_LENGTH)) { 418 psFree(object); 419 exit(EXIT_FAILURE); 420 } 421 if (!object->solang == 32.32) { 422 psFree(object); 423 exit(EXIT_FAILURE); 424 } 425 if (!object->fault == -16) { 426 psFree(object); 427 exit(EXIT_FAILURE); 428 } 429 430 psFree(object); 431 } 432 433 { 434 rawImfileRow *object; 435 436 object = rawImfileRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 ); 437 438 if (!object) { 439 exit(EXIT_FAILURE); 440 } 441 442 if (!object->exp_id == -64) { 443 psFree(object); 444 exit(EXIT_FAILURE); 445 } 446 if (strncmp(object->exp_name, "a string", MAX_STRING_LENGTH)) { 447 psFree(object); 448 exit(EXIT_FAILURE); 449 } 450 if (strncmp(object->camera, "a string", MAX_STRING_LENGTH)) { 451 psFree(object); 452 exit(EXIT_FAILURE); 453 } 454 if (strncmp(object->telescope, "a string", MAX_STRING_LENGTH)) { 455 psFree(object); 456 exit(EXIT_FAILURE); 457 } 458 psFree(object); 459 exit(EXIT_FAILURE); 460 } 461 if (strncmp(object->tmp_class_id, "a string", MAX_STRING_LENGTH)) { 462 psFree(object); 463 exit(EXIT_FAILURE); 464 } 465 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 2385 magicMaskRow *object; 2386 2387 object = magicMaskRowAlloc(-64, "a string" ); 2388 2389 if (!object) { 2390 exit(EXIT_FAILURE); 2391 } 2392 2393 if (!object->magic_id == -64) { 466 2394 psFree(object); 467 2395 exit(EXIT_FAILURE); … … 471 2399 exit(EXIT_FAILURE); 472 2400 } 473 if (strncmp(object->exp_type, "a string", MAX_STRING_LENGTH)) { 474 psFree(object); 475 exit(EXIT_FAILURE); 476 } 477 if (strncmp(object->filelevel, "a string", MAX_STRING_LENGTH)) { 478 psFree(object); 479 exit(EXIT_FAILURE); 480 } 481 if (strncmp(object->filter, "a string", MAX_STRING_LENGTH)) { 482 psFree(object); 483 exit(EXIT_FAILURE); 484 } 485 if (!object->airmass == 32.32) { 486 psFree(object); 487 exit(EXIT_FAILURE); 488 } 489 if (!object->ra == 64.64) { 490 psFree(object); 491 exit(EXIT_FAILURE); 492 } 493 if (!object->decl == 64.64) { 494 psFree(object); 495 exit(EXIT_FAILURE); 496 } 497 if (!object->exp_time == 32.32) { 498 psFree(object); 499 exit(EXIT_FAILURE); 500 } 501 if (!object->sat_pixel_frac == 32.32) { 502 psFree(object); 503 exit(EXIT_FAILURE); 504 } 505 if (!object->bg == 64.64) { 506 psFree(object); 507 exit(EXIT_FAILURE); 508 } 509 if (!object->bg_stdev == 64.64) { 510 psFree(object); 511 exit(EXIT_FAILURE); 512 } 513 if (!object->bg_mean_stdev == 64.64) { 514 psFree(object); 515 exit(EXIT_FAILURE); 516 } 517 if (!object->alt == 64.64) { 518 psFree(object); 519 exit(EXIT_FAILURE); 520 } 521 if (!object->az == 64.64) { 522 psFree(object); 523 exit(EXIT_FAILURE); 524 } 525 if (!object->ccd_temp == 32.32) { 526 psFree(object); 527 exit(EXIT_FAILURE); 528 } 529 if (!object->posang == 64.64) { 530 psFree(object); 531 exit(EXIT_FAILURE); 532 } 533 if (!object->user_1 == 64.64) { 534 psFree(object); 535 exit(EXIT_FAILURE); 536 } 537 if (!object->user_2 == 64.64) { 538 psFree(object); 539 exit(EXIT_FAILURE); 540 } 541 if (!object->user_3 == 64.64) { 542 psFree(object); 543 exit(EXIT_FAILURE); 544 } 545 if (!object->user_4 == 64.64) { 546 psFree(object); 547 exit(EXIT_FAILURE); 548 } 549 if (!object->user_5 == 64.64) { 550 psFree(object); 551 exit(EXIT_FAILURE); 552 } 553 if (strncmp(object->object, "a string", MAX_STRING_LENGTH)) { 554 psFree(object); 555 exit(EXIT_FAILURE); 556 } 557 if (!object->fault == -16) { 558 psFree(object); 559 exit(EXIT_FAILURE); 560 } 561 562 psFree(object); 563 } 564 565 { 566 guidePendingExpRow *object; 567 568 object = guidePendingExpRowAlloc(-64, -64, "a string" ); 569 570 if (!object) { 571 exit(EXIT_FAILURE); 572 } 573 574 if (!object->guide_id == -64) { 575 psFree(object); 576 exit(EXIT_FAILURE); 577 } 578 if (!object->exp_id == -64) { 579 psFree(object); 580 exit(EXIT_FAILURE); 581 } 582 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 583 psFree(object); 584 exit(EXIT_FAILURE); 585 } 586 587 psFree(object); 588 } 589 590 { 591 chipRunRow *object; 592 593 object = chipRunRowAlloc(-64, "a string", "a string", "a string", "a string", "a string", "a string", "a string" ); 594 595 if (!object) { 596 exit(EXIT_FAILURE); 597 } 598 599 if (!object->chip_id == -64) { 600 psFree(object); 601 exit(EXIT_FAILURE); 602 } 603 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 604 psFree(object); 605 exit(EXIT_FAILURE); 606 } 607 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 608 psFree(object); 609 exit(EXIT_FAILURE); 610 } 611 if (strncmp(object->workdir_state, "a string", MAX_STRING_LENGTH)) { 612 psFree(object); 613 exit(EXIT_FAILURE); 614 } 615 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 616 psFree(object); 617 exit(EXIT_FAILURE); 618 } 619 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) { 620 psFree(object); 621 exit(EXIT_FAILURE); 622 } 623 if (strncmp(object->expgroup, "a string", MAX_STRING_LENGTH)) { 624 psFree(object); 625 exit(EXIT_FAILURE); 626 } 627 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 628 psFree(object); 629 exit(EXIT_FAILURE); 630 } 631 632 psFree(object); 633 } 634 635 { 636 chipInputImfileRow *object; 637 638 object = chipInputImfileRowAlloc(-64, -64, "a string" ); 639 640 if (!object) { 641 exit(EXIT_FAILURE); 642 } 643 644 if (!object->chip_id == -64) { 645 psFree(object); 646 exit(EXIT_FAILURE); 647 } 648 if (!object->exp_id == -64) { 649 psFree(object); 650 exit(EXIT_FAILURE); 651 } 652 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 653 psFree(object); 654 exit(EXIT_FAILURE); 655 } 656 657 psFree(object); 658 } 659 660 { 661 chipProcessedImfileRow *object; 662 663 object = chipProcessedImfileRowAlloc(-64, -64, "a string", "a string", 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, -32, -32, -32, -32, "a string", -16 ); 664 665 if (!object) { 666 exit(EXIT_FAILURE); 667 } 668 669 if (!object->chip_id == -64) { 670 psFree(object); 671 exit(EXIT_FAILURE); 672 } 673 if (!object->exp_id == -64) { 674 psFree(object); 675 exit(EXIT_FAILURE); 676 } 677 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 2401 2402 psFree(object); 2403 } 2404 2405 { 2406 magicSkyfileMaskRow *object; 2407 2408 object = magicSkyfileMaskRowAlloc(-64, -64, "a string" ); 2409 2410 if (!object) { 2411 exit(EXIT_FAILURE); 2412 } 2413 2414 if (!object->magic_id == -64) { 2415 psFree(object); 2416 exit(EXIT_FAILURE); 2417 } 2418 if (!object->diff_id == -64) { 678 2419 psFree(object); 679 2420 exit(EXIT_FAILURE); 680 2421 } 681 2422 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 682 psFree(object);683 exit(EXIT_FAILURE);684 }685 if (!object->bg == 32.32) {686 psFree(object);687 exit(EXIT_FAILURE);688 }689 if (!object->bg_stdev == 32.32) {690 psFree(object);691 exit(EXIT_FAILURE);692 }693 if (!object->bg_mean_stdev == 32.32) {694 psFree(object);695 exit(EXIT_FAILURE);696 }697 if (!object->bias == 32.32) {698 psFree(object);699 exit(EXIT_FAILURE);700 }701 if (!object->bias_stdev == 32.32) {702 psFree(object);703 exit(EXIT_FAILURE);704 }705 if (!object->fringe_0 == 32.32) {706 psFree(object);707 exit(EXIT_FAILURE);708 }709 if (!object->fringe_1 == 32.32) {710 psFree(object);711 exit(EXIT_FAILURE);712 }713 if (!object->fringe_2 == 32.32) {714 psFree(object);715 exit(EXIT_FAILURE);716 }717 if (!object->sigma_ra == 32.32) {718 psFree(object);719 exit(EXIT_FAILURE);720 }721 if (!object->sigma_dec == 32.32) {722 psFree(object);723 exit(EXIT_FAILURE);724 }725 if (!object->ap_resid == 32.32) {726 psFree(object);727 exit(EXIT_FAILURE);728 }729 if (!object->ap_resid_stdev == 32.32) {730 psFree(object);731 exit(EXIT_FAILURE);732 }733 if (!object->fwhm == 32.32) {734 psFree(object);735 exit(EXIT_FAILURE);736 }737 if (!object->fwhm_range == 32.32) {738 psFree(object);739 exit(EXIT_FAILURE);740 }741 if (!object->n_stars == -32) {742 psFree(object);743 exit(EXIT_FAILURE);744 }745 if (!object->n_extended == -32) {746 psFree(object);747 exit(EXIT_FAILURE);748 }749 if (!object->n_cr == -32) {750 psFree(object);751 exit(EXIT_FAILURE);752 }753 if (!object->n_astrom == -32) {754 psFree(object);755 exit(EXIT_FAILURE);756 }757 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {758 psFree(object);759 exit(EXIT_FAILURE);760 }761 if (!object->fault == -16) {762 psFree(object);763 exit(EXIT_FAILURE);764 }765 766 psFree(object);767 }768 769 {770 chipMaskRow *object;771 772 object = chipMaskRowAlloc("a string" );773 774 if (!object) {775 exit(EXIT_FAILURE);776 }777 778 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) {779 psFree(object);780 exit(EXIT_FAILURE);781 }782 783 psFree(object);784 }785 786 {787 camRunRow *object;788 789 object = camRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string" );790 791 if (!object) {792 exit(EXIT_FAILURE);793 }794 795 if (!object->cam_id == -64) {796 psFree(object);797 exit(EXIT_FAILURE);798 }799 if (!object->chip_id == -64) {800 psFree(object);801 exit(EXIT_FAILURE);802 }803 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) {804 psFree(object);805 exit(EXIT_FAILURE);806 }807 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) {808 psFree(object);809 exit(EXIT_FAILURE);810 }811 if (strncmp(object->workdir_state, "a string", MAX_STRING_LENGTH)) {812 psFree(object);813 exit(EXIT_FAILURE);814 }815 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) {816 psFree(object);817 exit(EXIT_FAILURE);818 }819 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) {820 psFree(object);821 exit(EXIT_FAILURE);822 }823 if (strncmp(object->expgroup, "a string", MAX_STRING_LENGTH)) {824 psFree(object);825 exit(EXIT_FAILURE);826 }827 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) {828 psFree(object);829 exit(EXIT_FAILURE);830 }831 832 psFree(object);833 }834 835 {836 camProcessedExpRow *object;837 838 object = camProcessedExpRowAlloc(-64, -64, "a string", 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, -32, -32, -32, -32, "a string", -16 );839 840 if (!object) {841 exit(EXIT_FAILURE);842 }843 844 if (!object->cam_id == -64) {845 psFree(object);846 exit(EXIT_FAILURE);847 }848 if (!object->chip_id == -64) {849 psFree(object);850 exit(EXIT_FAILURE);851 }852 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {853 psFree(object);854 exit(EXIT_FAILURE);855 }856 if (!object->bg == 32.32) {857 psFree(object);858 exit(EXIT_FAILURE);859 }860 if (!object->bg_stdev == 32.32) {861 psFree(object);862 exit(EXIT_FAILURE);863 }864 if (!object->bg_mean_stdev == 32.32) {865 psFree(object);866 exit(EXIT_FAILURE);867 }868 if (!object->sigma_ra == 32.32) {869 psFree(object);870 exit(EXIT_FAILURE);871 }872 if (!object->sigma_dec == 32.32) {873 psFree(object);874 exit(EXIT_FAILURE);875 }876 if (!object->zp_mean == 32.32) {877 psFree(object);878 exit(EXIT_FAILURE);879 }880 if (!object->zp_stdev == 32.32) {881 psFree(object);882 exit(EXIT_FAILURE);883 }884 if (!object->fwhm == 32.32) {885 psFree(object);886 exit(EXIT_FAILURE);887 }888 if (!object->fwhm_range == 32.32) {889 psFree(object);890 exit(EXIT_FAILURE);891 }892 if (!object->n_stars == -32) {893 psFree(object);894 exit(EXIT_FAILURE);895 }896 if (!object->n_extended == -32) {897 psFree(object);898 exit(EXIT_FAILURE);899 }900 if (!object->n_cr == -32) {901 psFree(object);902 exit(EXIT_FAILURE);903 }904 if (!object->n_astrom == -32) {905 psFree(object);906 exit(EXIT_FAILURE);907 }908 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {909 psFree(object);910 exit(EXIT_FAILURE);911 }912 if (!object->fault == -16) {913 psFree(object);914 exit(EXIT_FAILURE);915 }916 917 psFree(object);918 }919 920 {921 camMaskRow *object;922 923 object = camMaskRowAlloc("a string" );924 925 if (!object) {926 exit(EXIT_FAILURE);927 }928 929 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) {930 psFree(object);931 exit(EXIT_FAILURE);932 }933 934 psFree(object);935 }936 937 {938 warpRunRow *object;939 940 object = warpRunRowAlloc(-64, "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z" );941 942 if (!object) {943 exit(EXIT_FAILURE);944 }945 946 if (!object->warp_id == -64) {947 psFree(object);948 exit(EXIT_FAILURE);949 }950 if (strncmp(object->mode, "a string", MAX_STRING_LENGTH)) {951 psFree(object);952 exit(EXIT_FAILURE);953 }954 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) {955 psFree(object);956 exit(EXIT_FAILURE);957 }958 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) {959 psFree(object);960 exit(EXIT_FAILURE);961 }962 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) {963 psFree(object);964 exit(EXIT_FAILURE);965 }966 psFree(object);967 exit(EXIT_FAILURE);968 }969 970 psFree(object);971 }972 973 {974 warpInputExpRow *object;975 976 object = warpInputExpRowAlloc(-64, -64, true );977 978 if (!object) {979 exit(EXIT_FAILURE);980 }981 982 if (!object->warp_id == -64) {983 psFree(object);984 exit(EXIT_FAILURE);985 }986 if (!object->cam_id == -64) {987 psFree(object);988 exit(EXIT_FAILURE);989 }990 if (!object->magiced == true) {991 psFree(object);992 exit(EXIT_FAILURE);993 }994 995 psFree(object);996 }997 998 {999 warpSkyCellMapRow *object;1000 1001 object = warpSkyCellMapRowAlloc(-64, "a string", "a string", -64, "a string", -16 );1002 1003 if (!object) {1004 exit(EXIT_FAILURE);1005 }1006 1007 if (!object->warp_id == -64) {1008 psFree(object);1009 exit(EXIT_FAILURE);1010 }1011 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) {1012 psFree(object);1013 exit(EXIT_FAILURE);1014 }1015 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) {1016 psFree(object);1017 exit(EXIT_FAILURE);1018 }1019 if (!object->cam_id == -64) {1020 psFree(object);1021 exit(EXIT_FAILURE);1022 }1023 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {1024 psFree(object);1025 exit(EXIT_FAILURE);1026 }1027 if (!object->fault == -16) {1028 psFree(object);1029 exit(EXIT_FAILURE);1030 }1031 1032 psFree(object);1033 }1034 1035 {1036 warpSkyfileRow *object;1037 1038 object = warpSkyfileRowAlloc(-64, "a string", "a string", "a string", "a string", 64.64, 64.64 );1039 1040 if (!object) {1041 exit(EXIT_FAILURE);1042 }1043 1044 if (!object->warp_id == -64) {1045 psFree(object);1046 exit(EXIT_FAILURE);1047 }1048 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) {1049 psFree(object);1050 exit(EXIT_FAILURE);1051 }1052 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) {1053 psFree(object);1054 exit(EXIT_FAILURE);1055 }1056 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {1057 psFree(object);1058 exit(EXIT_FAILURE);1059 }1060 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {1061 psFree(object);1062 exit(EXIT_FAILURE);1063 }1064 if (!object->bg == 64.64) {1065 psFree(object);1066 exit(EXIT_FAILURE);1067 }1068 if (!object->bg_stdev == 64.64) {1069 psFree(object);1070 exit(EXIT_FAILURE);1071 }1072 1073 psFree(object);1074 }1075 1076 {1077 diffRunRow *object;1078 1079 object = diffRunRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string" );1080 1081 if (!object) {1082 exit(EXIT_FAILURE);1083 }1084 1085 if (!object->diff_id == -64) {1086 psFree(object);1087 exit(EXIT_FAILURE);1088 }1089 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) {1090 psFree(object);1091 exit(EXIT_FAILURE);1092 }1093 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) {1094 psFree(object);1095 exit(EXIT_FAILURE);1096 }1097 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) {1098 psFree(object);1099 exit(EXIT_FAILURE);1100 }1101 psFree(object);1102 exit(EXIT_FAILURE);1103 }1104 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) {1105 psFree(object);1106 exit(EXIT_FAILURE);1107 }1108 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) {1109 psFree(object);1110 exit(EXIT_FAILURE);1111 }1112 1113 psFree(object);1114 }1115 1116 {1117 diffInputSkyfileRow *object;1118 1119 object = diffInputSkyfileRowAlloc(-64, -64, "a string", "a string", "a string", true );1120 1121 if (!object) {1122 exit(EXIT_FAILURE);1123 }1124 1125 if (!object->diff_id == -64) {1126 psFree(object);1127 exit(EXIT_FAILURE);1128 }1129 if (!object->warp_id == -64) {1130 psFree(object);1131 exit(EXIT_FAILURE);1132 }1133 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) {1134 psFree(object);1135 exit(EXIT_FAILURE);1136 }1137 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) {1138 psFree(object);1139 exit(EXIT_FAILURE);1140 }1141 if (strncmp(object->kind, "a string", MAX_STRING_LENGTH)) {1142 psFree(object);1143 exit(EXIT_FAILURE);1144 }1145 if (!object->template == true) {1146 psFree(object);1147 exit(EXIT_FAILURE);1148 }1149 1150 psFree(object);1151 }1152 1153 {1154 diffSkyfileRow *object;1155 1156 object = diffSkyfileRowAlloc(-64, "a string", "a string", 64.64, 64.64 );1157 1158 if (!object) {1159 exit(EXIT_FAILURE);1160 }1161 1162 if (!object->diff_id == -64) {1163 psFree(object);1164 exit(EXIT_FAILURE);1165 }1166 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {1167 psFree(object);1168 exit(EXIT_FAILURE);1169 }1170 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {1171 psFree(object);1172 exit(EXIT_FAILURE);1173 }1174 if (!object->bg == 64.64) {1175 psFree(object);1176 exit(EXIT_FAILURE);1177 }1178 if (!object->bg_stdev == 64.64) {1179 psFree(object);1180 exit(EXIT_FAILURE);1181 }1182 1183 psFree(object);1184 }1185 1186 {1187 stackRunRow *object;1188 1189 object = stackRunRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string" );1190 1191 if (!object) {1192 exit(EXIT_FAILURE);1193 }1194 1195 if (!object->stack_id == -64) {1196 psFree(object);1197 exit(EXIT_FAILURE);1198 }1199 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) {1200 psFree(object);1201 exit(EXIT_FAILURE);1202 }1203 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) {1204 psFree(object);1205 exit(EXIT_FAILURE);1206 }1207 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) {1208 psFree(object);1209 exit(EXIT_FAILURE);1210 }1211 psFree(object);1212 exit(EXIT_FAILURE);1213 }1214 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) {1215 psFree(object);1216 exit(EXIT_FAILURE);1217 }1218 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) {1219 psFree(object);1220 exit(EXIT_FAILURE);1221 }1222 1223 psFree(object);1224 }1225 1226 {1227 stackInputSkyfileRow *object;1228 1229 object = stackInputSkyfileRowAlloc(-64, -64 );1230 1231 if (!object) {1232 exit(EXIT_FAILURE);1233 }1234 1235 if (!object->stack_id == -64) {1236 psFree(object);1237 exit(EXIT_FAILURE);1238 }1239 if (!object->warp_id == -64) {1240 psFree(object);1241 exit(EXIT_FAILURE);1242 }1243 1244 psFree(object);1245 }1246 1247 {1248 stackSumSkyfileRow *object;1249 1250 object = stackSumSkyfileRowAlloc(-64, "a string", "a string", 64.64, 64.64 );1251 1252 if (!object) {1253 exit(EXIT_FAILURE);1254 }1255 1256 if (!object->stack_id == -64) {1257 psFree(object);1258 exit(EXIT_FAILURE);1259 }1260 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {1261 psFree(object);1262 exit(EXIT_FAILURE);1263 }1264 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {1265 psFree(object);1266 exit(EXIT_FAILURE);1267 }1268 if (!object->bg == 64.64) {1269 psFree(object);1270 exit(EXIT_FAILURE);1271 }1272 if (!object->bg_stdev == 64.64) {1273 psFree(object);1274 exit(EXIT_FAILURE);1275 }1276 1277 psFree(object);1278 }1279 1280 {1281 detRunRow *object;1282 1283 object = detRunRowAlloc(-64, -32, "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 64.64, 64.64, "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", 32.32, 32.32, "a string", -32 );1284 1285 if (!object) {1286 exit(EXIT_FAILURE);1287 }1288 1289 if (!object->det_id == -64) {1290 psFree(object);1291 exit(EXIT_FAILURE);1292 }1293 if (!object->iteration == -32) {1294 psFree(object);1295 exit(EXIT_FAILURE);1296 }1297 if (strncmp(object->det_type, "a string", MAX_STRING_LENGTH)) {1298 psFree(object);1299 exit(EXIT_FAILURE);1300 }1301 if (strncmp(object->mode, "a string", MAX_STRING_LENGTH)) {1302 psFree(object);1303 exit(EXIT_FAILURE);1304 }1305 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) {1306 psFree(object);1307 exit(EXIT_FAILURE);1308 }1309 if (strncmp(object->filelevel, "a string", MAX_STRING_LENGTH)) {1310 psFree(object);1311 exit(EXIT_FAILURE);1312 }1313 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) {1314 psFree(object);1315 exit(EXIT_FAILURE);1316 }1317 if (strncmp(object->camera, "a string", MAX_STRING_LENGTH)) {1318 psFree(object);1319 exit(EXIT_FAILURE);1320 }1321 if (strncmp(object->telescope, "a string", MAX_STRING_LENGTH)) {1322 psFree(object);1323 exit(EXIT_FAILURE);1324 }1325 if (strncmp(object->exp_type, "a string", MAX_STRING_LENGTH)) {1326 psFree(object);1327 exit(EXIT_FAILURE);1328 }1329 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) {1330 psFree(object);1331 exit(EXIT_FAILURE);1332 }1333 if (strncmp(object->filter, "a string", MAX_STRING_LENGTH)) {1334 psFree(object);1335 exit(EXIT_FAILURE);1336 }1337 if (!object->airmass_min == 32.32) {1338 psFree(object);1339 exit(EXIT_FAILURE);1340 }1341 if (!object->airmass_max == 32.32) {1342 psFree(object);1343 exit(EXIT_FAILURE);1344 }1345 if (!object->exp_time_min == 32.32) {1346 psFree(object);1347 exit(EXIT_FAILURE);1348 }1349 if (!object->exp_time_max == 32.32) {1350 psFree(object);1351 exit(EXIT_FAILURE);1352 }1353 if (!object->ccd_temp_min == 32.32) {1354 psFree(object);1355 exit(EXIT_FAILURE);1356 }1357 if (!object->ccd_temp_max == 32.32) {1358 psFree(object);1359 exit(EXIT_FAILURE);1360 }1361 if (!object->posang_min == 64.64) {1362 psFree(object);1363 exit(EXIT_FAILURE);1364 }1365 if (!object->posang_max == 64.64) {1366 psFree(object);1367 exit(EXIT_FAILURE);1368 }1369 psFree(object);1370 exit(EXIT_FAILURE);1371 }1372 psFree(object);1373 exit(EXIT_FAILURE);1374 }1375 psFree(object);1376 exit(EXIT_FAILURE);1377 }1378 psFree(object);1379 exit(EXIT_FAILURE);1380 }1381 psFree(object);1382 exit(EXIT_FAILURE);1383 }1384 if (!object->solang_min == 32.32) {1385 psFree(object);1386 exit(EXIT_FAILURE);1387 }1388 if (!object->solang_max == 32.32) {1389 psFree(object);1390 exit(EXIT_FAILURE);1391 }1392 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) {1393 psFree(object);1394 exit(EXIT_FAILURE);1395 }1396 if (!object->parent == -32) {1397 psFree(object);1398 exit(EXIT_FAILURE);1399 }1400 1401 psFree(object);1402 }1403 1404 {1405 detInputExpRow *object;1406 1407 object = detInputExpRowAlloc(-64, -32, -64, true );1408 1409 if (!object) {1410 exit(EXIT_FAILURE);1411 }1412 1413 if (!object->det_id == -64) {1414 psFree(object);1415 exit(EXIT_FAILURE);1416 }1417 if (!object->iteration == -32) {1418 psFree(object);1419 exit(EXIT_FAILURE);1420 }1421 if (!object->exp_id == -64) {1422 psFree(object);1423 exit(EXIT_FAILURE);1424 }1425 if (!object->include == true) {1426 psFree(object);1427 exit(EXIT_FAILURE);1428 }1429 1430 psFree(object);1431 }1432 1433 {1434 detProcessedImfileRow *object;1435 1436 object = detProcessedImfileRowAlloc(-64, -64, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 );1437 1438 if (!object) {1439 exit(EXIT_FAILURE);1440 }1441 1442 if (!object->det_id == -64) {1443 psFree(object);1444 exit(EXIT_FAILURE);1445 }1446 if (!object->exp_id == -64) {1447 psFree(object);1448 exit(EXIT_FAILURE);1449 }1450 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {1451 psFree(object);1452 exit(EXIT_FAILURE);1453 }1454 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {1455 psFree(object);1456 exit(EXIT_FAILURE);1457 }1458 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {1459 psFree(object);1460 exit(EXIT_FAILURE);1461 }1462 if (!object->bg == 64.64) {1463 psFree(object);1464 exit(EXIT_FAILURE);1465 }1466 if (!object->bg_stdev == 64.64) {1467 psFree(object);1468 exit(EXIT_FAILURE);1469 }1470 if (!object->bg_mean_stdev == 64.64) {1471 psFree(object);1472 exit(EXIT_FAILURE);1473 }1474 if (!object->fringe_0 == 64.64) {1475 psFree(object);1476 exit(EXIT_FAILURE);1477 }1478 if (!object->fringe_1 == 64.64) {1479 psFree(object);1480 exit(EXIT_FAILURE);1481 }1482 if (!object->fringe_2 == 64.64) {1483 psFree(object);1484 exit(EXIT_FAILURE);1485 }1486 if (!object->user_1 == 64.64) {1487 psFree(object);1488 exit(EXIT_FAILURE);1489 }1490 if (!object->user_2 == 64.64) {1491 psFree(object);1492 exit(EXIT_FAILURE);1493 }1494 if (!object->user_3 == 64.64) {1495 psFree(object);1496 exit(EXIT_FAILURE);1497 }1498 if (!object->user_4 == 64.64) {1499 psFree(object);1500 exit(EXIT_FAILURE);1501 }1502 if (!object->user_5 == 64.64) {1503 psFree(object);1504 exit(EXIT_FAILURE);1505 }1506 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {1507 psFree(object);1508 exit(EXIT_FAILURE);1509 }1510 if (!object->fault == -16) {1511 psFree(object);1512 exit(EXIT_FAILURE);1513 }1514 1515 psFree(object);1516 }1517 1518 {1519 detProcessedExpRow *object;1520 1521 object = detProcessedExpRowAlloc(-64, -64, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 );1522 1523 if (!object) {1524 exit(EXIT_FAILURE);1525 }1526 1527 if (!object->det_id == -64) {1528 psFree(object);1529 exit(EXIT_FAILURE);1530 }1531 if (!object->exp_id == -64) {1532 psFree(object);1533 exit(EXIT_FAILURE);1534 }1535 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {1536 psFree(object);1537 exit(EXIT_FAILURE);1538 }1539 if (!object->bg == 64.64) {1540 psFree(object);1541 exit(EXIT_FAILURE);1542 }1543 if (!object->bg_stdev == 64.64) {1544 psFree(object);1545 exit(EXIT_FAILURE);1546 }1547 if (!object->bg_mean_stdev == 64.64) {1548 psFree(object);1549 exit(EXIT_FAILURE);1550 }1551 if (!object->fringe_0 == 64.64) {1552 psFree(object);1553 exit(EXIT_FAILURE);1554 }1555 if (!object->fringe_1 == 64.64) {1556 psFree(object);1557 exit(EXIT_FAILURE);1558 }1559 if (!object->fringe_2 == 64.64) {1560 psFree(object);1561 exit(EXIT_FAILURE);1562 }1563 if (!object->user_1 == 64.64) {1564 psFree(object);1565 exit(EXIT_FAILURE);1566 }1567 if (!object->user_2 == 64.64) {1568 psFree(object);1569 exit(EXIT_FAILURE);1570 }1571 if (!object->user_3 == 64.64) {1572 psFree(object);1573 exit(EXIT_FAILURE);1574 }1575 if (!object->user_4 == 64.64) {1576 psFree(object);1577 exit(EXIT_FAILURE);1578 }1579 if (!object->user_5 == 64.64) {1580 psFree(object);1581 exit(EXIT_FAILURE);1582 }1583 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {1584 psFree(object);1585 exit(EXIT_FAILURE);1586 }1587 if (!object->fault == -16) {1588 psFree(object);1589 exit(EXIT_FAILURE);1590 }1591 1592 psFree(object);1593 }1594 1595 {1596 detStackedImfileRow *object;1597 1598 object = detStackedImfileRowAlloc(-64, -32, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, -16 );1599 1600 if (!object) {1601 exit(EXIT_FAILURE);1602 }1603 1604 if (!object->det_id == -64) {1605 psFree(object);1606 exit(EXIT_FAILURE);1607 }1608 if (!object->iteration == -32) {1609 psFree(object);1610 exit(EXIT_FAILURE);1611 }1612 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {1613 psFree(object);1614 exit(EXIT_FAILURE);1615 }1616 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {1617 psFree(object);1618 exit(EXIT_FAILURE);1619 }1620 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {1621 psFree(object);1622 exit(EXIT_FAILURE);1623 }1624 if (!object->bg == 64.64) {1625 psFree(object);1626 exit(EXIT_FAILURE);1627 }1628 if (!object->bg_stdev == 64.64) {1629 psFree(object);1630 exit(EXIT_FAILURE);1631 }1632 if (!object->bg_mean_stdev == 64.64) {1633 psFree(object);1634 exit(EXIT_FAILURE);1635 }1636 if (!object->user_1 == 64.64) {1637 psFree(object);1638 exit(EXIT_FAILURE);1639 }1640 if (!object->user_2 == 64.64) {1641 psFree(object);1642 exit(EXIT_FAILURE);1643 }1644 if (!object->user_3 == 64.64) {1645 psFree(object);1646 exit(EXIT_FAILURE);1647 }1648 if (!object->user_4 == 64.64) {1649 psFree(object);1650 exit(EXIT_FAILURE);1651 }1652 if (!object->user_5 == 64.64) {1653 psFree(object);1654 exit(EXIT_FAILURE);1655 }1656 if (!object->fault == -16) {1657 psFree(object);1658 exit(EXIT_FAILURE);1659 }1660 1661 psFree(object);1662 }1663 1664 {1665 detNormalizedStatImfileRow *object;1666 1667 object = detNormalizedStatImfileRowAlloc(-64, -32, "a string", 32.32, -16 );1668 1669 if (!object) {1670 exit(EXIT_FAILURE);1671 }1672 1673 if (!object->det_id == -64) {1674 psFree(object);1675 exit(EXIT_FAILURE);1676 }1677 if (!object->iteration == -32) {1678 psFree(object);1679 exit(EXIT_FAILURE);1680 }1681 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {1682 psFree(object);1683 exit(EXIT_FAILURE);1684 }1685 if (!object->norm == 32.32) {1686 psFree(object);1687 exit(EXIT_FAILURE);1688 }1689 if (!object->fault == -16) {1690 psFree(object);1691 exit(EXIT_FAILURE);1692 }1693 1694 psFree(object);1695 }1696 1697 {1698 detNormalizedImfileRow *object;1699 1700 object = detNormalizedImfileRowAlloc(-64, -32, "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 );1701 1702 if (!object) {1703 exit(EXIT_FAILURE);1704 }1705 1706 if (!object->det_id == -64) {1707 psFree(object);1708 exit(EXIT_FAILURE);1709 }1710 if (!object->iteration == -32) {1711 psFree(object);1712 exit(EXIT_FAILURE);1713 }1714 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {1715 psFree(object);1716 exit(EXIT_FAILURE);1717 }1718 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {1719 psFree(object);1720 exit(EXIT_FAILURE);1721 }1722 if (!object->bg == 64.64) {1723 psFree(object);1724 exit(EXIT_FAILURE);1725 }1726 if (!object->bg_stdev == 64.64) {1727 psFree(object);1728 exit(EXIT_FAILURE);1729 }1730 if (!object->bg_mean_stdev == 64.64) {1731 psFree(object);1732 exit(EXIT_FAILURE);1733 }1734 if (!object->user_1 == 64.64) {1735 psFree(object);1736 exit(EXIT_FAILURE);1737 }1738 if (!object->user_2 == 64.64) {1739 psFree(object);1740 exit(EXIT_FAILURE);1741 }1742 if (!object->user_3 == 64.64) {1743 psFree(object);1744 exit(EXIT_FAILURE);1745 }1746 if (!object->user_4 == 64.64) {1747 psFree(object);1748 exit(EXIT_FAILURE);1749 }1750 if (!object->user_5 == 64.64) {1751 psFree(object);1752 exit(EXIT_FAILURE);1753 }1754 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {1755 psFree(object);1756 exit(EXIT_FAILURE);1757 }1758 if (!object->fault == -16) {1759 psFree(object);1760 exit(EXIT_FAILURE);1761 }1762 1763 psFree(object);1764 }1765 1766 {1767 detNormalizedExpRow *object;1768 1769 object = detNormalizedExpRowAlloc(-64, -32, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 );1770 1771 if (!object) {1772 exit(EXIT_FAILURE);1773 }1774 1775 if (!object->det_id == -64) {1776 psFree(object);1777 exit(EXIT_FAILURE);1778 }1779 if (!object->iteration == -32) {1780 psFree(object);1781 exit(EXIT_FAILURE);1782 }1783 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {1784 psFree(object);1785 exit(EXIT_FAILURE);1786 }1787 if (!object->bg == 64.64) {1788 psFree(object);1789 exit(EXIT_FAILURE);1790 }1791 if (!object->bg_stdev == 64.64) {1792 psFree(object);1793 exit(EXIT_FAILURE);1794 }1795 if (!object->bg_mean_stdev == 64.64) {1796 psFree(object);1797 exit(EXIT_FAILURE);1798 }1799 if (!object->user_1 == 64.64) {1800 psFree(object);1801 exit(EXIT_FAILURE);1802 }1803 if (!object->user_2 == 64.64) {1804 psFree(object);1805 exit(EXIT_FAILURE);1806 }1807 if (!object->user_3 == 64.64) {1808 psFree(object);1809 exit(EXIT_FAILURE);1810 }1811 if (!object->user_4 == 64.64) {1812 psFree(object);1813 exit(EXIT_FAILURE);1814 }1815 if (!object->user_5 == 64.64) {1816 psFree(object);1817 exit(EXIT_FAILURE);1818 }1819 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {1820 psFree(object);1821 exit(EXIT_FAILURE);1822 }1823 if (!object->fault == -16) {1824 psFree(object);1825 exit(EXIT_FAILURE);1826 }1827 1828 psFree(object);1829 }1830 1831 {1832 detResidImfileRow *object;1833 1834 object = detResidImfileRowAlloc(-64, -32, -64, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16 );1835 1836 if (!object) {1837 exit(EXIT_FAILURE);1838 }1839 1840 if (!object->det_id == -64) {1841 psFree(object);1842 exit(EXIT_FAILURE);1843 }1844 if (!object->iteration == -32) {1845 psFree(object);1846 exit(EXIT_FAILURE);1847 }1848 if (!object->exp_id == -64) {1849 psFree(object);1850 exit(EXIT_FAILURE);1851 }1852 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {1853 psFree(object);1854 exit(EXIT_FAILURE);1855 }1856 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {1857 psFree(object);1858 exit(EXIT_FAILURE);1859 }1860 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {1861 psFree(object);1862 exit(EXIT_FAILURE);1863 }1864 if (!object->bg == 64.64) {1865 psFree(object);1866 exit(EXIT_FAILURE);1867 }1868 if (!object->bg_stdev == 64.64) {1869 psFree(object);1870 exit(EXIT_FAILURE);1871 }1872 if (!object->bg_mean_stdev == 64.64) {1873 psFree(object);1874 exit(EXIT_FAILURE);1875 }1876 if (!object->bin_stdev == 64.64) {1877 psFree(object);1878 exit(EXIT_FAILURE);1879 }1880 if (!object->fringe_0 == 64.64) {1881 psFree(object);1882 exit(EXIT_FAILURE);1883 }1884 if (!object->fringe_1 == 64.64) {1885 psFree(object);1886 exit(EXIT_FAILURE);1887 }1888 if (!object->fringe_2 == 64.64) {1889 psFree(object);1890 exit(EXIT_FAILURE);1891 }1892 if (!object->user_1 == 64.64) {1893 psFree(object);1894 exit(EXIT_FAILURE);1895 }1896 if (!object->user_2 == 64.64) {1897 psFree(object);1898 exit(EXIT_FAILURE);1899 }1900 if (!object->user_3 == 64.64) {1901 psFree(object);1902 exit(EXIT_FAILURE);1903 }1904 if (!object->user_4 == 64.64) {1905 psFree(object);1906 exit(EXIT_FAILURE);1907 }1908 if (!object->user_5 == 64.64) {1909 psFree(object);1910 exit(EXIT_FAILURE);1911 }1912 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {1913 psFree(object);1914 exit(EXIT_FAILURE);1915 }1916 if (!object->fault == -16) {1917 psFree(object);1918 exit(EXIT_FAILURE);1919 }1920 1921 psFree(object);1922 }1923 1924 {1925 detResidExpRow *object;1926 1927 object = detResidExpRowAlloc(-64, -32, -64, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", true, -16 );1928 1929 if (!object) {1930 exit(EXIT_FAILURE);1931 }1932 1933 if (!object->det_id == -64) {1934 psFree(object);1935 exit(EXIT_FAILURE);1936 }1937 if (!object->iteration == -32) {1938 psFree(object);1939 exit(EXIT_FAILURE);1940 }1941 if (!object->exp_id == -64) {1942 psFree(object);1943 exit(EXIT_FAILURE);1944 }1945 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {1946 psFree(object);1947 exit(EXIT_FAILURE);1948 }1949 if (!object->bg == 64.64) {1950 psFree(object);1951 exit(EXIT_FAILURE);1952 }1953 if (!object->bg_stdev == 64.64) {1954 psFree(object);1955 exit(EXIT_FAILURE);1956 }1957 if (!object->bg_mean_stdev == 64.64) {1958 psFree(object);1959 exit(EXIT_FAILURE);1960 }1961 if (!object->bin_stdev == 64.64) {1962 psFree(object);1963 exit(EXIT_FAILURE);1964 }1965 if (!object->fringe_0 == 64.64) {1966 psFree(object);1967 exit(EXIT_FAILURE);1968 }1969 if (!object->fringe_1 == 64.64) {1970 psFree(object);1971 exit(EXIT_FAILURE);1972 }1973 if (!object->fringe_2 == 64.64) {1974 psFree(object);1975 exit(EXIT_FAILURE);1976 }1977 if (!object->user_1 == 64.64) {1978 psFree(object);1979 exit(EXIT_FAILURE);1980 }1981 if (!object->user_2 == 64.64) {1982 psFree(object);1983 exit(EXIT_FAILURE);1984 }1985 if (!object->user_3 == 64.64) {1986 psFree(object);1987 exit(EXIT_FAILURE);1988 }1989 if (!object->user_4 == 64.64) {1990 psFree(object);1991 exit(EXIT_FAILURE);1992 }1993 if (!object->user_5 == 64.64) {1994 psFree(object);1995 exit(EXIT_FAILURE);1996 }1997 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {1998 psFree(object);1999 exit(EXIT_FAILURE);2000 }2001 if (!object->accept == true) {2002 psFree(object);2003 exit(EXIT_FAILURE);2004 }2005 if (!object->fault == -16) {2006 psFree(object);2007 exit(EXIT_FAILURE);2008 }2009 2010 psFree(object);2011 }2012 2013 {2014 detRunSummaryRow *object;2015 2016 object = detRunSummaryRowAlloc(-64, -32, 64.64, 64.64, 64.64, true, -16 );2017 2018 if (!object) {2019 exit(EXIT_FAILURE);2020 }2021 2022 if (!object->det_id == -64) {2023 psFree(object);2024 exit(EXIT_FAILURE);2025 }2026 if (!object->iteration == -32) {2027 psFree(object);2028 exit(EXIT_FAILURE);2029 }2030 if (!object->bg == 64.64) {2031 psFree(object);2032 exit(EXIT_FAILURE);2033 }2034 if (!object->bg_stdev == 64.64) {2035 psFree(object);2036 exit(EXIT_FAILURE);2037 }2038 if (!object->bg_mean_stdev == 64.64) {2039 psFree(object);2040 exit(EXIT_FAILURE);2041 }2042 if (!object->accept == true) {2043 psFree(object);2044 exit(EXIT_FAILURE);2045 }2046 if (!object->fault == -16) {2047 2423 psFree(object); 2048 2424 exit(EXIT_FAILURE); -
trunk/ippdb/tests/createtable.c
r15420 r15421 13 13 } 14 14 15 if(!pzDataStoreCreateTable(dbh)) { 16 exit(EXIT_FAILURE); 17 } 18 19 psDBCleanup(dbh); 20 } 21 22 { 23 psDB *dbh; 24 25 dbh = psDBInit("localhost", "test", NULL, "test"); 26 if (!dbh) { 27 exit(EXIT_FAILURE); 28 } 29 15 30 if(!summitExpCreateTable(dbh)) { 16 31 exit(EXIT_FAILURE); … … 193 208 } 194 209 195 if(!chipInputImfileCreateTable(dbh)) {196 exit(EXIT_FAILURE);197 }198 199 psDBCleanup(dbh);200 }201 202 {203 psDB *dbh;204 205 dbh = psDBInit("localhost", "test", NULL, "test");206 if (!dbh) {207 exit(EXIT_FAILURE);208 }209 210 210 if(!chipProcessedImfileCreateTable(dbh)) { 211 211 exit(EXIT_FAILURE); … … 584 584 585 585 if(!detRunSummaryCreateTable(dbh)) { 586 exit(EXIT_FAILURE); 587 } 588 589 psDBCleanup(dbh); 590 } 591 592 { 593 psDB *dbh; 594 595 dbh = psDBInit("localhost", "test", NULL, "test"); 596 if (!dbh) { 597 exit(EXIT_FAILURE); 598 } 599 600 if(!detRegisteredImfileCreateTable(dbh)) { 601 exit(EXIT_FAILURE); 602 } 603 604 psDBCleanup(dbh); 605 } 606 607 { 608 psDB *dbh; 609 610 dbh = psDBInit("localhost", "test", NULL, "test"); 611 if (!dbh) { 612 exit(EXIT_FAILURE); 613 } 614 615 if(!detCorrectedExpCreateTable(dbh)) { 616 exit(EXIT_FAILURE); 617 } 618 619 psDBCleanup(dbh); 620 } 621 622 { 623 psDB *dbh; 624 625 dbh = psDBInit("localhost", "test", NULL, "test"); 626 if (!dbh) { 627 exit(EXIT_FAILURE); 628 } 629 630 if(!detCorrectedImfileCreateTable(dbh)) { 631 exit(EXIT_FAILURE); 632 } 633 634 psDBCleanup(dbh); 635 } 636 637 { 638 psDB *dbh; 639 640 dbh = psDBInit("localhost", "test", NULL, "test"); 641 if (!dbh) { 642 exit(EXIT_FAILURE); 643 } 644 645 if(!magicRunCreateTable(dbh)) { 646 exit(EXIT_FAILURE); 647 } 648 649 psDBCleanup(dbh); 650 } 651 652 { 653 psDB *dbh; 654 655 dbh = psDBInit("localhost", "test", NULL, "test"); 656 if (!dbh) { 657 exit(EXIT_FAILURE); 658 } 659 660 if(!magicInputSkyfileCreateTable(dbh)) { 661 exit(EXIT_FAILURE); 662 } 663 664 psDBCleanup(dbh); 665 } 666 667 { 668 psDB *dbh; 669 670 dbh = psDBInit("localhost", "test", NULL, "test"); 671 if (!dbh) { 672 exit(EXIT_FAILURE); 673 } 674 675 if(!magicTreeCreateTable(dbh)) { 676 exit(EXIT_FAILURE); 677 } 678 679 psDBCleanup(dbh); 680 } 681 682 { 683 psDB *dbh; 684 685 dbh = psDBInit("localhost", "test", NULL, "test"); 686 if (!dbh) { 687 exit(EXIT_FAILURE); 688 } 689 690 if(!magicNodeResultCreateTable(dbh)) { 691 exit(EXIT_FAILURE); 692 } 693 694 psDBCleanup(dbh); 695 } 696 697 { 698 psDB *dbh; 699 700 dbh = psDBInit("localhost", "test", NULL, "test"); 701 if (!dbh) { 702 exit(EXIT_FAILURE); 703 } 704 705 if(!magicMaskCreateTable(dbh)) { 706 exit(EXIT_FAILURE); 707 } 708 709 psDBCleanup(dbh); 710 } 711 712 { 713 psDB *dbh; 714 715 dbh = psDBInit("localhost", "test", NULL, "test"); 716 if (!dbh) { 717 exit(EXIT_FAILURE); 718 } 719 720 if(!magicSkyfileMaskCreateTable(dbh)) { 586 721 exit(EXIT_FAILURE); 587 722 } -
trunk/ippdb/tests/dbcleanup.c
r15420 r15421 11 11 } 12 12 13 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS pzDataStore"); 13 14 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS summitExp"); 14 15 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS summitImfile"); … … 23 24 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS guidePendingExp"); 24 25 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS chipRun"); 25 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS chipInputImfile");26 26 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS chipProcessedImfile"); 27 27 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS chipMask"); … … 50 50 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detResidExp"); 51 51 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detRunSummary"); 52 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detRegisteredImfile"); 53 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detCorrectedExp"); 54 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detCorrectedImfile"); 55 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS magicRun"); 56 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS magicInputSkyfile"); 57 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS magicTree"); 58 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS magicNodeResult"); 59 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS magicMask"); 60 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS magicSkyfileMask"); 52 61 53 62 psDBCleanup(dbh); -
trunk/ippdb/tests/dbsetup.c
r15420 r15421 13 13 14 14 // remove the table if it already exists 15 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS pzDataStore"); 16 pzDataStoreCreateTable(dbh); 17 15 18 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS summitExp"); 16 19 summitExpCreateTable(dbh); … … 48 51 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS chipRun"); 49 52 chipRunCreateTable(dbh); 50 51 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS chipInputImfile");52 chipInputImfileCreateTable(dbh);53 53 54 54 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS chipProcessedImfile"); … … 130 130 detRunSummaryCreateTable(dbh); 131 131 132 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detRegisteredImfile"); 133 detRegisteredImfileCreateTable(dbh); 134 135 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detCorrectedExp"); 136 detCorrectedExpCreateTable(dbh); 137 138 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS detCorrectedImfile"); 139 detCorrectedImfileCreateTable(dbh); 140 141 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS magicRun"); 142 magicRunCreateTable(dbh); 143 144 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS magicInputSkyfile"); 145 magicInputSkyfileCreateTable(dbh); 146 147 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS magicTree"); 148 magicTreeCreateTable(dbh); 149 150 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS magicNodeResult"); 151 magicNodeResultCreateTable(dbh); 152 153 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS magicMask"); 154 magicMaskCreateTable(dbh); 155 156 p_psDBRunQuery(dbh, "DROP TABLE IF EXISTS magicSkyfileMask"); 157 magicSkyfileMaskCreateTable(dbh); 158 132 159 psDBCleanup(dbh); 133 160 -
trunk/ippdb/tests/droptable.c
r15420 r15421 13 13 } 14 14 15 if (!pzDataStoreDropTable(dbh)) { 16 exit(EXIT_FAILURE); 17 } 18 19 psDBCleanup(dbh); 20 } 21 22 { 23 psDB *dbh; 24 25 dbh = psDBInit("localhost", "test", NULL, "test"); 26 if (!dbh) { 27 exit(EXIT_FAILURE); 28 } 29 15 30 if (!summitExpDropTable(dbh)) { 16 31 exit(EXIT_FAILURE); … … 193 208 } 194 209 195 if (!chipInputImfileDropTable(dbh)) {196 exit(EXIT_FAILURE);197 }198 199 psDBCleanup(dbh);200 }201 202 {203 psDB *dbh;204 205 dbh = psDBInit("localhost", "test", NULL, "test");206 if (!dbh) {207 exit(EXIT_FAILURE);208 }209 210 210 if (!chipProcessedImfileDropTable(dbh)) { 211 211 exit(EXIT_FAILURE); … … 584 584 585 585 if (!detRunSummaryDropTable(dbh)) { 586 exit(EXIT_FAILURE); 587 } 588 589 psDBCleanup(dbh); 590 } 591 592 { 593 psDB *dbh; 594 595 dbh = psDBInit("localhost", "test", NULL, "test"); 596 if (!dbh) { 597 exit(EXIT_FAILURE); 598 } 599 600 if (!detRegisteredImfileDropTable(dbh)) { 601 exit(EXIT_FAILURE); 602 } 603 604 psDBCleanup(dbh); 605 } 606 607 { 608 psDB *dbh; 609 610 dbh = psDBInit("localhost", "test", NULL, "test"); 611 if (!dbh) { 612 exit(EXIT_FAILURE); 613 } 614 615 if (!detCorrectedExpDropTable(dbh)) { 616 exit(EXIT_FAILURE); 617 } 618 619 psDBCleanup(dbh); 620 } 621 622 { 623 psDB *dbh; 624 625 dbh = psDBInit("localhost", "test", NULL, "test"); 626 if (!dbh) { 627 exit(EXIT_FAILURE); 628 } 629 630 if (!detCorrectedImfileDropTable(dbh)) { 631 exit(EXIT_FAILURE); 632 } 633 634 psDBCleanup(dbh); 635 } 636 637 { 638 psDB *dbh; 639 640 dbh = psDBInit("localhost", "test", NULL, "test"); 641 if (!dbh) { 642 exit(EXIT_FAILURE); 643 } 644 645 if (!magicRunDropTable(dbh)) { 646 exit(EXIT_FAILURE); 647 } 648 649 psDBCleanup(dbh); 650 } 651 652 { 653 psDB *dbh; 654 655 dbh = psDBInit("localhost", "test", NULL, "test"); 656 if (!dbh) { 657 exit(EXIT_FAILURE); 658 } 659 660 if (!magicInputSkyfileDropTable(dbh)) { 661 exit(EXIT_FAILURE); 662 } 663 664 psDBCleanup(dbh); 665 } 666 667 { 668 psDB *dbh; 669 670 dbh = psDBInit("localhost", "test", NULL, "test"); 671 if (!dbh) { 672 exit(EXIT_FAILURE); 673 } 674 675 if (!magicTreeDropTable(dbh)) { 676 exit(EXIT_FAILURE); 677 } 678 679 psDBCleanup(dbh); 680 } 681 682 { 683 psDB *dbh; 684 685 dbh = psDBInit("localhost", "test", NULL, "test"); 686 if (!dbh) { 687 exit(EXIT_FAILURE); 688 } 689 690 if (!magicNodeResultDropTable(dbh)) { 691 exit(EXIT_FAILURE); 692 } 693 694 psDBCleanup(dbh); 695 } 696 697 { 698 psDB *dbh; 699 700 dbh = psDBInit("localhost", "test", NULL, "test"); 701 if (!dbh) { 702 exit(EXIT_FAILURE); 703 } 704 705 if (!magicMaskDropTable(dbh)) { 706 exit(EXIT_FAILURE); 707 } 708 709 psDBCleanup(dbh); 710 } 711 712 { 713 psDB *dbh; 714 715 dbh = psDBInit("localhost", "test", NULL, "test"); 716 if (!dbh) { 717 exit(EXIT_FAILURE); 718 } 719 720 if (!magicSkyfileMaskDropTable(dbh)) { 586 721 exit(EXIT_FAILURE); 587 722 } -
trunk/ippdb/tests/insert.c
r15420 r15421 13 13 } 14 14 15 if (!pzDataStoreInsert(dbh, "a string", "a string", "a string")) { 16 exit(EXIT_FAILURE); 17 } 18 19 psDBCleanup(dbh); 20 } 21 22 { 23 psDB *dbh; 24 25 dbh = psDBInit("localhost", "test", NULL, "test"); 26 if (!dbh) { 27 exit(EXIT_FAILURE); 28 } 29 15 30 if (!summitExpInsert(dbh, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", -32)) { 16 31 exit(EXIT_FAILURE); … … 58 73 } 59 74 60 if (!pzPendingImfileInsert(dbh, "a string", "a string", "a string", "a string", "a string" , -64)) {75 if (!pzPendingImfileInsert(dbh, "a string", "a string", "a string", "a string", "a string")) { 61 76 exit(EXIT_FAILURE); 62 77 } … … 88 103 } 89 104 90 if (!pzDoneImfileInsert(dbh, "a string", "a string", "a string", "a string", "a string", -64,"a string")) {91 exit(EXIT_FAILURE); 92 } 93 94 psDBCleanup(dbh); 95 } 96 97 { 98 psDB *dbh; 99 100 dbh = psDBInit("localhost", "test", NULL, "test"); 101 if (!dbh) { 102 exit(EXIT_FAILURE); 103 } 104 105 if (!newExpInsert(dbh, -64, "a string", "a string", "a string", "a string", -32, "a string", "a string")) {105 if (!pzDoneImfileInsert(dbh, "a string", "a string", "a string", "a string", "a string", "a string")) { 106 exit(EXIT_FAILURE); 107 } 108 109 psDBCleanup(dbh); 110 } 111 112 { 113 psDB *dbh; 114 115 dbh = psDBInit("localhost", "test", NULL, "test"); 116 if (!dbh) { 117 exit(EXIT_FAILURE); 118 } 119 120 if (!newExpInsert(dbh, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string")) { 106 121 exit(EXIT_FAILURE); 107 122 } … … 133 148 } 134 149 135 if (!rawExpInsert(dbh, -64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", -32, "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16)) {150 if (!rawExpInsert(dbh, -64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16)) { 136 151 exit(EXIT_FAILURE); 137 152 } … … 178 193 } 179 194 180 if (!chipRunInsert(dbh, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string")) { 181 exit(EXIT_FAILURE); 182 } 183 184 psDBCleanup(dbh); 185 } 186 187 { 188 psDB *dbh; 189 190 dbh = psDBInit("localhost", "test", NULL, "test"); 191 if (!dbh) { 192 exit(EXIT_FAILURE); 193 } 194 195 if (!chipInputImfileInsert(dbh, -64, -64, "a string")) { 195 if (!chipRunInsert(dbh, -64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string")) { 196 196 exit(EXIT_FAILURE); 197 197 } … … 328 328 } 329 329 330 if (!warpSkyfileInsert(dbh, -64, "a string", "a string", "a string", "a string", 64.64, 64.64 )) {330 if (!warpSkyfileInsert(dbh, -64, "a string", "a string", "a string", "a string", 64.64, 64.64, 64.64, -16)) { 331 331 exit(EXIT_FAILURE); 332 332 } … … 358 358 } 359 359 360 if (!diffInputSkyfileInsert(dbh, -64, -64, "a string", "a string", "a string", true)) {361 exit(EXIT_FAILURE); 362 } 363 364 psDBCleanup(dbh); 365 } 366 367 { 368 psDB *dbh; 369 370 dbh = psDBInit("localhost", "test", NULL, "test"); 371 if (!dbh) { 372 exit(EXIT_FAILURE); 373 } 374 375 if (!diffSkyfileInsert(dbh, -64, "a string", "a string", 64.64, 64.64 )) {360 if (!diffInputSkyfileInsert(dbh, -64, true, -64, -64, "a string", "a string", "a string")) { 361 exit(EXIT_FAILURE); 362 } 363 364 psDBCleanup(dbh); 365 } 366 367 { 368 psDB *dbh; 369 370 dbh = psDBInit("localhost", "test", NULL, "test"); 371 if (!dbh) { 372 exit(EXIT_FAILURE); 373 } 374 375 if (!diffSkyfileInsert(dbh, -64, "a string", "a string", 64.64, 64.64, 64.64, -16)) { 376 376 exit(EXIT_FAILURE); 377 377 } … … 418 418 } 419 419 420 if (!stackSumSkyfileInsert(dbh, -64, "a string", "a string", 64.64, 64.64 )) {420 if (!stackSumSkyfileInsert(dbh, -64, "a string", "a string", 64.64, 64.64, 64.64, -16)) { 421 421 exit(EXIT_FAILURE); 422 422 } … … 553 553 } 554 554 555 if (!detResidImfileInsert(dbh, -64, -32, -64, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16)) {556 exit(EXIT_FAILURE); 557 } 558 559 psDBCleanup(dbh); 560 } 561 562 { 563 psDB *dbh; 564 565 dbh = psDBInit("localhost", "test", NULL, "test"); 566 if (!dbh) { 567 exit(EXIT_FAILURE); 568 } 569 570 if (!detResidExpInsert(dbh, -64, -32, -64, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", true, -16)) {555 if (!detResidImfileInsert(dbh, -64, -32, -64, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16)) { 556 exit(EXIT_FAILURE); 557 } 558 559 psDBCleanup(dbh); 560 } 561 562 { 563 psDB *dbh; 564 565 dbh = psDBInit("localhost", "test", NULL, "test"); 566 if (!dbh) { 567 exit(EXIT_FAILURE); 568 } 569 570 if (!detResidExpInsert(dbh, -64, -32, -64, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", true, -16)) { 571 571 exit(EXIT_FAILURE); 572 572 } … … 584 584 585 585 if (!detRunSummaryInsert(dbh, -64, -32, 64.64, 64.64, 64.64, true, -16)) { 586 exit(EXIT_FAILURE); 587 } 588 589 psDBCleanup(dbh); 590 } 591 592 { 593 psDB *dbh; 594 595 dbh = psDBInit("localhost", "test", NULL, "test"); 596 if (!dbh) { 597 exit(EXIT_FAILURE); 598 } 599 600 if (!detRegisteredImfileInsert(dbh, -64, -32, "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16)) { 601 exit(EXIT_FAILURE); 602 } 603 604 psDBCleanup(dbh); 605 } 606 607 { 608 psDB *dbh; 609 610 dbh = psDBInit("localhost", "test", NULL, "test"); 611 if (!dbh) { 612 exit(EXIT_FAILURE); 613 } 614 615 if (!detCorrectedExpInsert(dbh, -64, -64, "a string", -64, "a string", "a string", "a string", -16)) { 616 exit(EXIT_FAILURE); 617 } 618 619 psDBCleanup(dbh); 620 } 621 622 { 623 psDB *dbh; 624 625 dbh = psDBInit("localhost", "test", NULL, "test"); 626 if (!dbh) { 627 exit(EXIT_FAILURE); 628 } 629 630 if (!detCorrectedImfileInsert(dbh, -64, -64, "a string", "a string", "a string", -16)) { 631 exit(EXIT_FAILURE); 632 } 633 634 psDBCleanup(dbh); 635 } 636 637 { 638 psDB *dbh; 639 640 dbh = psDBInit("localhost", "test", NULL, "test"); 641 if (!dbh) { 642 exit(EXIT_FAILURE); 643 } 644 645 if (!magicRunInsert(dbh, -64, "a string", "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z")) { 646 exit(EXIT_FAILURE); 647 } 648 649 psDBCleanup(dbh); 650 } 651 652 { 653 psDB *dbh; 654 655 dbh = psDBInit("localhost", "test", NULL, "test"); 656 if (!dbh) { 657 exit(EXIT_FAILURE); 658 } 659 660 if (!magicInputSkyfileInsert(dbh, -64, -64, "a string")) { 661 exit(EXIT_FAILURE); 662 } 663 664 psDBCleanup(dbh); 665 } 666 667 { 668 psDB *dbh; 669 670 dbh = psDBInit("localhost", "test", NULL, "test"); 671 if (!dbh) { 672 exit(EXIT_FAILURE); 673 } 674 675 if (!magicTreeInsert(dbh, -64, "a string", "a string")) { 676 exit(EXIT_FAILURE); 677 } 678 679 psDBCleanup(dbh); 680 } 681 682 { 683 psDB *dbh; 684 685 dbh = psDBInit("localhost", "test", NULL, "test"); 686 if (!dbh) { 687 exit(EXIT_FAILURE); 688 } 689 690 if (!magicNodeResultInsert(dbh, -64, "a string", "a string")) { 691 exit(EXIT_FAILURE); 692 } 693 694 psDBCleanup(dbh); 695 } 696 697 { 698 psDB *dbh; 699 700 dbh = psDBInit("localhost", "test", NULL, "test"); 701 if (!dbh) { 702 exit(EXIT_FAILURE); 703 } 704 705 if (!magicMaskInsert(dbh, -64, "a string")) { 706 exit(EXIT_FAILURE); 707 } 708 709 psDBCleanup(dbh); 710 } 711 712 { 713 psDB *dbh; 714 715 dbh = psDBInit("localhost", "test", NULL, "test"); 716 if (!dbh) { 717 exit(EXIT_FAILURE); 718 } 719 720 if (!magicSkyfileMaskInsert(dbh, -64, -64, "a string")) { 586 721 exit(EXIT_FAILURE); 587 722 } -
trunk/ippdb/tests/insertfits.c
r15420 r15421 24 24 } 25 25 26 if (!pzDataStoreInsertFits(dbh, fits)) { 27 exit(EXIT_FAILURE); 28 } 29 30 if (!psFitsClose(fits)) { 31 exit(EXIT_FAILURE); 32 } 33 34 psDBCleanup(dbh); 35 } 36 37 { 38 psDB *dbh; 39 psFits *fits; 40 41 dbh = psDBInit("localhost", "test", NULL, "test"); 42 if (!dbh) { 43 exit(EXIT_FAILURE); 44 } 45 46 // open a temp 47 fits = psFitsOpen(TMP_FILENAME, "r"); 48 if (!fits) { 49 exit(EXIT_FAILURE); 50 } 51 26 52 if (!summitExpInsertFits(dbh, fits)) { 27 53 exit(EXIT_FAILURE); … … 336 362 } 337 363 338 if (!chipInputImfileInsertFits(dbh, fits)) {339 exit(EXIT_FAILURE);340 }341 342 if (!psFitsClose(fits)) {343 exit(EXIT_FAILURE);344 }345 346 psDBCleanup(dbh);347 }348 349 {350 psDB *dbh;351 psFits *fits;352 353 dbh = psDBInit("localhost", "test", NULL, "test");354 if (!dbh) {355 exit(EXIT_FAILURE);356 }357 358 // open a temp359 fits = psFitsOpen(TMP_FILENAME, "r");360 if (!fits) {361 exit(EXIT_FAILURE);362 }363 364 364 if (!chipProcessedImfileInsertFits(dbh, fits)) { 365 365 exit(EXIT_FAILURE); … … 1013 1013 1014 1014 if (!detRunSummaryInsertFits(dbh, fits)) { 1015 exit(EXIT_FAILURE); 1016 } 1017 1018 if (!psFitsClose(fits)) { 1019 exit(EXIT_FAILURE); 1020 } 1021 1022 psDBCleanup(dbh); 1023 } 1024 1025 { 1026 psDB *dbh; 1027 psFits *fits; 1028 1029 dbh = psDBInit("localhost", "test", NULL, "test"); 1030 if (!dbh) { 1031 exit(EXIT_FAILURE); 1032 } 1033 1034 // open a temp 1035 fits = psFitsOpen(TMP_FILENAME, "r"); 1036 if (!fits) { 1037 exit(EXIT_FAILURE); 1038 } 1039 1040 if (!detRegisteredImfileInsertFits(dbh, fits)) { 1041 exit(EXIT_FAILURE); 1042 } 1043 1044 if (!psFitsClose(fits)) { 1045 exit(EXIT_FAILURE); 1046 } 1047 1048 psDBCleanup(dbh); 1049 } 1050 1051 { 1052 psDB *dbh; 1053 psFits *fits; 1054 1055 dbh = psDBInit("localhost", "test", NULL, "test"); 1056 if (!dbh) { 1057 exit(EXIT_FAILURE); 1058 } 1059 1060 // open a temp 1061 fits = psFitsOpen(TMP_FILENAME, "r"); 1062 if (!fits) { 1063 exit(EXIT_FAILURE); 1064 } 1065 1066 if (!detCorrectedExpInsertFits(dbh, fits)) { 1067 exit(EXIT_FAILURE); 1068 } 1069 1070 if (!psFitsClose(fits)) { 1071 exit(EXIT_FAILURE); 1072 } 1073 1074 psDBCleanup(dbh); 1075 } 1076 1077 { 1078 psDB *dbh; 1079 psFits *fits; 1080 1081 dbh = psDBInit("localhost", "test", NULL, "test"); 1082 if (!dbh) { 1083 exit(EXIT_FAILURE); 1084 } 1085 1086 // open a temp 1087 fits = psFitsOpen(TMP_FILENAME, "r"); 1088 if (!fits) { 1089 exit(EXIT_FAILURE); 1090 } 1091 1092 if (!detCorrectedImfileInsertFits(dbh, fits)) { 1093 exit(EXIT_FAILURE); 1094 } 1095 1096 if (!psFitsClose(fits)) { 1097 exit(EXIT_FAILURE); 1098 } 1099 1100 psDBCleanup(dbh); 1101 } 1102 1103 { 1104 psDB *dbh; 1105 psFits *fits; 1106 1107 dbh = psDBInit("localhost", "test", NULL, "test"); 1108 if (!dbh) { 1109 exit(EXIT_FAILURE); 1110 } 1111 1112 // open a temp 1113 fits = psFitsOpen(TMP_FILENAME, "r"); 1114 if (!fits) { 1115 exit(EXIT_FAILURE); 1116 } 1117 1118 if (!magicRunInsertFits(dbh, fits)) { 1119 exit(EXIT_FAILURE); 1120 } 1121 1122 if (!psFitsClose(fits)) { 1123 exit(EXIT_FAILURE); 1124 } 1125 1126 psDBCleanup(dbh); 1127 } 1128 1129 { 1130 psDB *dbh; 1131 psFits *fits; 1132 1133 dbh = psDBInit("localhost", "test", NULL, "test"); 1134 if (!dbh) { 1135 exit(EXIT_FAILURE); 1136 } 1137 1138 // open a temp 1139 fits = psFitsOpen(TMP_FILENAME, "r"); 1140 if (!fits) { 1141 exit(EXIT_FAILURE); 1142 } 1143 1144 if (!magicInputSkyfileInsertFits(dbh, fits)) { 1145 exit(EXIT_FAILURE); 1146 } 1147 1148 if (!psFitsClose(fits)) { 1149 exit(EXIT_FAILURE); 1150 } 1151 1152 psDBCleanup(dbh); 1153 } 1154 1155 { 1156 psDB *dbh; 1157 psFits *fits; 1158 1159 dbh = psDBInit("localhost", "test", NULL, "test"); 1160 if (!dbh) { 1161 exit(EXIT_FAILURE); 1162 } 1163 1164 // open a temp 1165 fits = psFitsOpen(TMP_FILENAME, "r"); 1166 if (!fits) { 1167 exit(EXIT_FAILURE); 1168 } 1169 1170 if (!magicTreeInsertFits(dbh, fits)) { 1171 exit(EXIT_FAILURE); 1172 } 1173 1174 if (!psFitsClose(fits)) { 1175 exit(EXIT_FAILURE); 1176 } 1177 1178 psDBCleanup(dbh); 1179 } 1180 1181 { 1182 psDB *dbh; 1183 psFits *fits; 1184 1185 dbh = psDBInit("localhost", "test", NULL, "test"); 1186 if (!dbh) { 1187 exit(EXIT_FAILURE); 1188 } 1189 1190 // open a temp 1191 fits = psFitsOpen(TMP_FILENAME, "r"); 1192 if (!fits) { 1193 exit(EXIT_FAILURE); 1194 } 1195 1196 if (!magicNodeResultInsertFits(dbh, fits)) { 1197 exit(EXIT_FAILURE); 1198 } 1199 1200 if (!psFitsClose(fits)) { 1201 exit(EXIT_FAILURE); 1202 } 1203 1204 psDBCleanup(dbh); 1205 } 1206 1207 { 1208 psDB *dbh; 1209 psFits *fits; 1210 1211 dbh = psDBInit("localhost", "test", NULL, "test"); 1212 if (!dbh) { 1213 exit(EXIT_FAILURE); 1214 } 1215 1216 // open a temp 1217 fits = psFitsOpen(TMP_FILENAME, "r"); 1218 if (!fits) { 1219 exit(EXIT_FAILURE); 1220 } 1221 1222 if (!magicMaskInsertFits(dbh, fits)) { 1223 exit(EXIT_FAILURE); 1224 } 1225 1226 if (!psFitsClose(fits)) { 1227 exit(EXIT_FAILURE); 1228 } 1229 1230 psDBCleanup(dbh); 1231 } 1232 1233 { 1234 psDB *dbh; 1235 psFits *fits; 1236 1237 dbh = psDBInit("localhost", "test", NULL, "test"); 1238 if (!dbh) { 1239 exit(EXIT_FAILURE); 1240 } 1241 1242 // open a temp 1243 fits = psFitsOpen(TMP_FILENAME, "r"); 1244 if (!fits) { 1245 exit(EXIT_FAILURE); 1246 } 1247 1248 if (!magicSkyfileMaskInsertFits(dbh, fits)) { 1015 1249 exit(EXIT_FAILURE); 1016 1250 } -
trunk/ippdb/tests/insertobject.c
r15420 r15421 7 7 { 8 8 psDB *dbh; 9 pzDataStoreRow *object; 10 11 dbh = psDBInit("localhost", "test", NULL, "test"); 12 if (!dbh) { 13 exit(EXIT_FAILURE); 14 } 15 16 object = pzDataStoreRowAlloc("a string", "a string", "a string"); 17 if (!object) { 18 exit(EXIT_FAILURE); 19 } 20 21 if (!pzDataStoreInsertObject(dbh, object)) { 22 exit(EXIT_FAILURE); 23 } 24 25 psFree(object); 26 psDBCleanup(dbh); 27 } 28 29 { 30 psDB *dbh; 9 31 summitExpRow *object; 10 32 … … 80 102 } 81 103 82 object = pzPendingImfileRowAlloc("a string", "a string", "a string", "a string", "a string" , -64);104 object = pzPendingImfileRowAlloc("a string", "a string", "a string", "a string", "a string"); 83 105 if (!object) { 84 106 exit(EXIT_FAILURE); … … 124 146 } 125 147 126 object = pzDoneImfileRowAlloc("a string", "a string", "a string", "a string", "a string", -64,"a string");148 object = pzDoneImfileRowAlloc("a string", "a string", "a string", "a string", "a string", "a string"); 127 149 if (!object) { 128 150 exit(EXIT_FAILURE); … … 146 168 } 147 169 148 object = newExpRowAlloc(-64, "a string", "a string", "a string", "a string", -32, "a string", "a string");170 object = newExpRowAlloc(-64, "a string", "a string", "a string", "a string", "a string", "a string", "a string"); 149 171 if (!object) { 150 172 exit(EXIT_FAILURE); … … 190 212 } 191 213 192 object = rawExpRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", -32, "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16);214 object = rawExpRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16); 193 215 if (!object) { 194 216 exit(EXIT_FAILURE); … … 256 278 } 257 279 258 object = chipRunRowAlloc(-64, "a string", "a string", "a string", "a string", "a string", "a string", "a string");280 object = chipRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string"); 259 281 if (!object) { 260 282 exit(EXIT_FAILURE); … … 271 293 { 272 294 psDB *dbh; 273 chipInputImfileRow *object;274 275 dbh = psDBInit("localhost", "test", NULL, "test");276 if (!dbh) {277 exit(EXIT_FAILURE);278 }279 280 object = chipInputImfileRowAlloc(-64, -64, "a string");281 if (!object) {282 exit(EXIT_FAILURE);283 }284 285 if (!chipInputImfileInsertObject(dbh, object)) {286 exit(EXIT_FAILURE);287 }288 289 psFree(object);290 psDBCleanup(dbh);291 }292 293 {294 psDB *dbh;295 295 chipProcessedImfileRow *object; 296 296 … … 476 476 } 477 477 478 object = warpSkyfileRowAlloc(-64, "a string", "a string", "a string", "a string", 64.64, 64.64 );478 object = warpSkyfileRowAlloc(-64, "a string", "a string", "a string", "a string", 64.64, 64.64, 64.64, -16); 479 479 if (!object) { 480 480 exit(EXIT_FAILURE); … … 520 520 } 521 521 522 object = diffInputSkyfileRowAlloc(-64, -64, "a string", "a string", "a string", true);522 object = diffInputSkyfileRowAlloc(-64, true, -64, -64, "a string", "a string", "a string"); 523 523 if (!object) { 524 524 exit(EXIT_FAILURE); … … 542 542 } 543 543 544 object = diffSkyfileRowAlloc(-64, "a string", "a string", 64.64, 64.64 );544 object = diffSkyfileRowAlloc(-64, "a string", "a string", 64.64, 64.64, 64.64, -16); 545 545 if (!object) { 546 546 exit(EXIT_FAILURE); … … 608 608 } 609 609 610 object = stackSumSkyfileRowAlloc(-64, "a string", "a string", 64.64, 64.64 );610 object = stackSumSkyfileRowAlloc(-64, "a string", "a string", 64.64, 64.64, 64.64, -16); 611 611 if (!object) { 612 612 exit(EXIT_FAILURE); … … 806 806 } 807 807 808 object = detResidImfileRowAlloc(-64, -32, -64, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16);808 object = detResidImfileRowAlloc(-64, -32, -64, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16); 809 809 if (!object) { 810 810 exit(EXIT_FAILURE); … … 828 828 } 829 829 830 object = detResidExpRowAlloc(-64, -32, -64, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", true, -16);830 object = detResidExpRowAlloc(-64, -32, -64, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", true, -16); 831 831 if (!object) { 832 832 exit(EXIT_FAILURE); … … 856 856 857 857 if (!detRunSummaryInsertObject(dbh, object)) { 858 exit(EXIT_FAILURE); 859 } 860 861 psFree(object); 862 psDBCleanup(dbh); 863 } 864 865 { 866 psDB *dbh; 867 detRegisteredImfileRow *object; 868 869 dbh = psDBInit("localhost", "test", NULL, "test"); 870 if (!dbh) { 871 exit(EXIT_FAILURE); 872 } 873 874 object = detRegisteredImfileRowAlloc(-64, -32, "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16); 875 if (!object) { 876 exit(EXIT_FAILURE); 877 } 878 879 if (!detRegisteredImfileInsertObject(dbh, object)) { 880 exit(EXIT_FAILURE); 881 } 882 883 psFree(object); 884 psDBCleanup(dbh); 885 } 886 887 { 888 psDB *dbh; 889 detCorrectedExpRow *object; 890 891 dbh = psDBInit("localhost", "test", NULL, "test"); 892 if (!dbh) { 893 exit(EXIT_FAILURE); 894 } 895 896 object = detCorrectedExpRowAlloc(-64, -64, "a string", -64, "a string", "a string", "a string", -16); 897 if (!object) { 898 exit(EXIT_FAILURE); 899 } 900 901 if (!detCorrectedExpInsertObject(dbh, object)) { 902 exit(EXIT_FAILURE); 903 } 904 905 psFree(object); 906 psDBCleanup(dbh); 907 } 908 909 { 910 psDB *dbh; 911 detCorrectedImfileRow *object; 912 913 dbh = psDBInit("localhost", "test", NULL, "test"); 914 if (!dbh) { 915 exit(EXIT_FAILURE); 916 } 917 918 object = detCorrectedImfileRowAlloc(-64, -64, "a string", "a string", "a string", -16); 919 if (!object) { 920 exit(EXIT_FAILURE); 921 } 922 923 if (!detCorrectedImfileInsertObject(dbh, object)) { 924 exit(EXIT_FAILURE); 925 } 926 927 psFree(object); 928 psDBCleanup(dbh); 929 } 930 931 { 932 psDB *dbh; 933 magicRunRow *object; 934 935 dbh = psDBInit("localhost", "test", NULL, "test"); 936 if (!dbh) { 937 exit(EXIT_FAILURE); 938 } 939 940 object = magicRunRowAlloc(-64, "a string", "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z"); 941 if (!object) { 942 exit(EXIT_FAILURE); 943 } 944 945 if (!magicRunInsertObject(dbh, object)) { 946 exit(EXIT_FAILURE); 947 } 948 949 psFree(object); 950 psDBCleanup(dbh); 951 } 952 953 { 954 psDB *dbh; 955 magicInputSkyfileRow *object; 956 957 dbh = psDBInit("localhost", "test", NULL, "test"); 958 if (!dbh) { 959 exit(EXIT_FAILURE); 960 } 961 962 object = magicInputSkyfileRowAlloc(-64, -64, "a string"); 963 if (!object) { 964 exit(EXIT_FAILURE); 965 } 966 967 if (!magicInputSkyfileInsertObject(dbh, object)) { 968 exit(EXIT_FAILURE); 969 } 970 971 psFree(object); 972 psDBCleanup(dbh); 973 } 974 975 { 976 psDB *dbh; 977 magicTreeRow *object; 978 979 dbh = psDBInit("localhost", "test", NULL, "test"); 980 if (!dbh) { 981 exit(EXIT_FAILURE); 982 } 983 984 object = magicTreeRowAlloc(-64, "a string", "a string"); 985 if (!object) { 986 exit(EXIT_FAILURE); 987 } 988 989 if (!magicTreeInsertObject(dbh, object)) { 990 exit(EXIT_FAILURE); 991 } 992 993 psFree(object); 994 psDBCleanup(dbh); 995 } 996 997 { 998 psDB *dbh; 999 magicNodeResultRow *object; 1000 1001 dbh = psDBInit("localhost", "test", NULL, "test"); 1002 if (!dbh) { 1003 exit(EXIT_FAILURE); 1004 } 1005 1006 object = magicNodeResultRowAlloc(-64, "a string", "a string"); 1007 if (!object) { 1008 exit(EXIT_FAILURE); 1009 } 1010 1011 if (!magicNodeResultInsertObject(dbh, object)) { 1012 exit(EXIT_FAILURE); 1013 } 1014 1015 psFree(object); 1016 psDBCleanup(dbh); 1017 } 1018 1019 { 1020 psDB *dbh; 1021 magicMaskRow *object; 1022 1023 dbh = psDBInit("localhost", "test", NULL, "test"); 1024 if (!dbh) { 1025 exit(EXIT_FAILURE); 1026 } 1027 1028 object = magicMaskRowAlloc(-64, "a string"); 1029 if (!object) { 1030 exit(EXIT_FAILURE); 1031 } 1032 1033 if (!magicMaskInsertObject(dbh, object)) { 1034 exit(EXIT_FAILURE); 1035 } 1036 1037 psFree(object); 1038 psDBCleanup(dbh); 1039 } 1040 1041 { 1042 psDB *dbh; 1043 magicSkyfileMaskRow *object; 1044 1045 dbh = psDBInit("localhost", "test", NULL, "test"); 1046 if (!dbh) { 1047 exit(EXIT_FAILURE); 1048 } 1049 1050 object = magicSkyfileMaskRowAlloc(-64, -64, "a string"); 1051 if (!object) { 1052 exit(EXIT_FAILURE); 1053 } 1054 1055 if (!magicSkyfileMaskInsertObject(dbh, object)) { 858 1056 exit(EXIT_FAILURE); 859 1057 } -
trunk/ippdb/tests/metadatafromobject.c
r15420 r15421 10 10 { 11 11 psMetadata *md; 12 pzDataStoreRow *object; 13 bool status; 14 15 object = pzDataStoreRowAlloc("a string", "a string", "a string"); 16 if (!object) { 17 exit(EXIT_FAILURE); 18 } 19 20 md = pzDataStoreMetadataFromObject(object); 21 if (!md) { 22 exit(EXIT_FAILURE); 23 } 24 25 psFree(object); 26 27 if (strncmp(psMetadataLookupPtr(&status, md, "camera"), "a string", MAX_STRING_LENGTH)) { 28 psFree(md); 29 exit(EXIT_FAILURE); 30 } 31 if (strncmp(psMetadataLookupPtr(&status, md, "telescope"), "a string", MAX_STRING_LENGTH)) { 32 psFree(md); 33 exit(EXIT_FAILURE); 34 } 35 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 36 psFree(md); 37 exit(EXIT_FAILURE); 38 } 39 40 psFree(md); 41 } 42 43 { 44 psMetadata *md; 12 45 summitExpRow *object; 13 46 bool status; … … 151 184 bool status; 152 185 153 object = pzPendingImfileRowAlloc("a string", "a string", "a string", "a string", "a string" , -64);186 object = pzPendingImfileRowAlloc("a string", "a string", "a string", "a string", "a string"); 154 187 if (!object) { 155 188 exit(EXIT_FAILURE); … … 183 216 exit(EXIT_FAILURE); 184 217 } 185 psFree(md);186 exit(EXIT_FAILURE);187 }188 218 189 219 psFree(md); … … 228 258 bool status; 229 259 230 object = pzDoneImfileRowAlloc("a string", "a string", "a string", "a string", "a string", -64,"a string");260 object = pzDoneImfileRowAlloc("a string", "a string", "a string", "a string", "a string", "a string"); 231 261 if (!object) { 232 262 exit(EXIT_FAILURE); … … 260 290 exit(EXIT_FAILURE); 261 291 } 262 psFree(md);263 exit(EXIT_FAILURE);264 }265 292 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 266 293 psFree(md); … … 276 303 bool status; 277 304 278 object = newExpRowAlloc(-64, "a string", "a string", "a string", "a string", -32, "a string", "a string");305 object = newExpRowAlloc(-64, "a string", "a string", "a string", "a string", "a string", "a string", "a string"); 279 306 if (!object) { 280 307 exit(EXIT_FAILURE); … … 307 334 exit(EXIT_FAILURE); 308 335 } 309 if (!psMetadataLookupS32(&status, md, "imfiles") == -32) {310 psFree(md);311 exit(EXIT_FAILURE);312 }313 336 if (strncmp(psMetadataLookupPtr(&status, md, "workdir"), "a string", MAX_STRING_LENGTH)) { 314 337 psFree(md); … … 319 342 exit(EXIT_FAILURE); 320 343 } 344 if (strncmp(psMetadataLookupPtr(&status, md, "reduction"), "a string", MAX_STRING_LENGTH)) { 345 psFree(md); 346 exit(EXIT_FAILURE); 347 } 321 348 322 349 psFree(md); … … 360 387 bool status; 361 388 362 object = rawExpRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", -32, "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16);389 object = rawExpRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 64.64, 64.64, 32.32, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 32.32, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", 32.32, -16); 363 390 if (!object) { 364 391 exit(EXIT_FAILURE); … … 398 425 exit(EXIT_FAILURE); 399 426 } 400 if (!psMetadataLookupS32(&status, md, "imfiles") == -32) {401 psFree(md);402 exit(EXIT_FAILURE);403 }404 427 if (strncmp(psMetadataLookupPtr(&status, md, "filelevel"), "a string", MAX_STRING_LENGTH)) { 405 428 psFree(md); … … 410 433 exit(EXIT_FAILURE); 411 434 } 435 if (strncmp(psMetadataLookupPtr(&status, md, "reduction"), "a string", MAX_STRING_LENGTH)) { 436 psFree(md); 437 exit(EXIT_FAILURE); 438 } 412 439 if (strncmp(psMetadataLookupPtr(&status, md, "filter"), "a string", MAX_STRING_LENGTH)) { 413 440 psFree(md); … … 671 698 bool status; 672 699 673 object = chipRunRowAlloc(-64, "a string", "a string", "a string", "a string", "a string", "a string", "a string");700 object = chipRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string"); 674 701 if (!object) { 675 702 exit(EXIT_FAILURE); … … 686 713 exit(EXIT_FAILURE); 687 714 } 715 psFree(md); 716 exit(EXIT_FAILURE); 717 } 688 718 if (strncmp(psMetadataLookupPtr(&status, md, "state"), "a string", MAX_STRING_LENGTH)) { 689 719 psFree(md); … … 720 750 { 721 751 psMetadata *md; 722 chip InputImfileRow *object;723 bool status; 724 725 object = chip InputImfileRowAlloc(-64, -64, "a string");726 if (!object) { 727 exit(EXIT_FAILURE); 728 } 729 730 md = chip InputImfileMetadataFromObject(object);752 chipProcessedImfileRow *object; 753 bool status; 754 755 object = chipProcessedImfileRowAlloc(-64, -64, "a string", "a string", 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, -32, -32, -32, -32, "a string", -16); 756 if (!object) { 757 exit(EXIT_FAILURE); 758 } 759 760 md = chipProcessedImfileMetadataFromObject(object); 731 761 if (!md) { 732 762 exit(EXIT_FAILURE); … … 745 775 exit(EXIT_FAILURE); 746 776 } 747 748 psFree(md); 749 } 750 751 { 752 psMetadata *md; 753 chipProcessedImfileRow *object; 754 bool status; 755 756 object = chipProcessedImfileRowAlloc(-64, -64, "a string", "a string", 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, -32, -32, -32, -32, "a string", -16); 757 if (!object) { 758 exit(EXIT_FAILURE); 759 } 760 761 md = chipProcessedImfileMetadataFromObject(object); 762 if (!md) { 763 exit(EXIT_FAILURE); 764 } 765 766 psFree(object); 767 777 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 778 psFree(md); 779 exit(EXIT_FAILURE); 780 } 781 if (!psMetadataLookupF32(&status, md, "bg") == 32.32) { 782 psFree(md); 783 exit(EXIT_FAILURE); 784 } 785 if (!psMetadataLookupF32(&status, md, "bg_stdev") == 32.32) { 786 psFree(md); 787 exit(EXIT_FAILURE); 788 } 789 if (!psMetadataLookupF32(&status, md, "bg_mean_stdev") == 32.32) { 790 psFree(md); 791 exit(EXIT_FAILURE); 792 } 793 if (!psMetadataLookupF32(&status, md, "bias") == 32.32) { 794 psFree(md); 795 exit(EXIT_FAILURE); 796 } 797 if (!psMetadataLookupF32(&status, md, "bias_stdev") == 32.32) { 798 psFree(md); 799 exit(EXIT_FAILURE); 800 } 801 if (!psMetadataLookupF32(&status, md, "fringe_0") == 32.32) { 802 psFree(md); 803 exit(EXIT_FAILURE); 804 } 805 if (!psMetadataLookupF32(&status, md, "fringe_1") == 32.32) { 806 psFree(md); 807 exit(EXIT_FAILURE); 808 } 809 if (!psMetadataLookupF32(&status, md, "fringe_2") == 32.32) { 810 psFree(md); 811 exit(EXIT_FAILURE); 812 } 813 if (!psMetadataLookupF32(&status, md, "sigma_ra") == 32.32) { 814 psFree(md); 815 exit(EXIT_FAILURE); 816 } 817 if (!psMetadataLookupF32(&status, md, "sigma_dec") == 32.32) { 818 psFree(md); 819 exit(EXIT_FAILURE); 820 } 821 if (!psMetadataLookupF32(&status, md, "ap_resid") == 32.32) { 822 psFree(md); 823 exit(EXIT_FAILURE); 824 } 825 if (!psMetadataLookupF32(&status, md, "ap_resid_stdev") == 32.32) { 826 psFree(md); 827 exit(EXIT_FAILURE); 828 } 829 if (!psMetadataLookupF32(&status, md, "fwhm") == 32.32) { 830 psFree(md); 831 exit(EXIT_FAILURE); 832 } 833 if (!psMetadataLookupF32(&status, md, "fwhm_range") == 32.32) { 834 psFree(md); 835 exit(EXIT_FAILURE); 836 } 837 if (!psMetadataLookupS32(&status, md, "n_stars") == -32) { 838 psFree(md); 839 exit(EXIT_FAILURE); 840 } 841 if (!psMetadataLookupS32(&status, md, "n_extended") == -32) { 842 psFree(md); 843 exit(EXIT_FAILURE); 844 } 845 if (!psMetadataLookupS32(&status, md, "n_cr") == -32) { 846 psFree(md); 847 exit(EXIT_FAILURE); 848 } 849 if (!psMetadataLookupS32(&status, md, "n_astrom") == -32) { 850 psFree(md); 851 exit(EXIT_FAILURE); 852 } 853 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 854 psFree(md); 855 exit(EXIT_FAILURE); 856 } 857 psFree(md); 858 exit(EXIT_FAILURE); 859 } 860 861 psFree(md); 862 } 863 864 { 865 psMetadata *md; 866 chipMaskRow *object; 867 bool status; 868 869 object = chipMaskRowAlloc("a string"); 870 if (!object) { 871 exit(EXIT_FAILURE); 872 } 873 874 md = chipMaskMetadataFromObject(object); 875 if (!md) { 876 exit(EXIT_FAILURE); 877 } 878 879 psFree(object); 880 881 if (strncmp(psMetadataLookupPtr(&status, md, "label"), "a string", MAX_STRING_LENGTH)) { 882 psFree(md); 883 exit(EXIT_FAILURE); 884 } 885 886 psFree(md); 887 } 888 889 { 890 psMetadata *md; 891 camRunRow *object; 892 bool status; 893 894 object = camRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string"); 895 if (!object) { 896 exit(EXIT_FAILURE); 897 } 898 899 md = camRunMetadataFromObject(object); 900 if (!md) { 901 exit(EXIT_FAILURE); 902 } 903 904 psFree(object); 905 906 psFree(md); 907 exit(EXIT_FAILURE); 908 } 909 psFree(md); 910 exit(EXIT_FAILURE); 911 } 912 if (strncmp(psMetadataLookupPtr(&status, md, "state"), "a string", MAX_STRING_LENGTH)) { 913 psFree(md); 914 exit(EXIT_FAILURE); 915 } 916 if (strncmp(psMetadataLookupPtr(&status, md, "workdir"), "a string", MAX_STRING_LENGTH)) { 917 psFree(md); 918 exit(EXIT_FAILURE); 919 } 920 if (strncmp(psMetadataLookupPtr(&status, md, "workdir_state"), "a string", MAX_STRING_LENGTH)) { 921 psFree(md); 922 exit(EXIT_FAILURE); 923 } 924 if (strncmp(psMetadataLookupPtr(&status, md, "label"), "a string", MAX_STRING_LENGTH)) { 925 psFree(md); 926 exit(EXIT_FAILURE); 927 } 928 if (strncmp(psMetadataLookupPtr(&status, md, "reduction"), "a string", MAX_STRING_LENGTH)) { 929 psFree(md); 930 exit(EXIT_FAILURE); 931 } 932 if (strncmp(psMetadataLookupPtr(&status, md, "expgroup"), "a string", MAX_STRING_LENGTH)) { 933 psFree(md); 934 exit(EXIT_FAILURE); 935 } 936 if (strncmp(psMetadataLookupPtr(&status, md, "dvodb"), "a string", MAX_STRING_LENGTH)) { 937 psFree(md); 938 exit(EXIT_FAILURE); 939 } 940 941 psFree(md); 942 } 943 944 { 945 psMetadata *md; 946 camProcessedExpRow *object; 947 bool status; 948 949 object = camProcessedExpRowAlloc(-64, -64, "a string", 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, -32, -32, -32, -32, "a string", -16); 950 if (!object) { 951 exit(EXIT_FAILURE); 952 } 953 954 md = camProcessedExpMetadataFromObject(object); 955 if (!md) { 956 exit(EXIT_FAILURE); 957 } 958 959 psFree(object); 960 961 psFree(md); 962 exit(EXIT_FAILURE); 963 } 964 psFree(md); 965 exit(EXIT_FAILURE); 966 } 967 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 968 psFree(md); 969 exit(EXIT_FAILURE); 970 } 971 if (!psMetadataLookupF32(&status, md, "bg") == 32.32) { 972 psFree(md); 973 exit(EXIT_FAILURE); 974 } 975 if (!psMetadataLookupF32(&status, md, "bg_stdev") == 32.32) { 976 psFree(md); 977 exit(EXIT_FAILURE); 978 } 979 if (!psMetadataLookupF32(&status, md, "bg_mean_stdev") == 32.32) { 980 psFree(md); 981 exit(EXIT_FAILURE); 982 } 983 if (!psMetadataLookupF32(&status, md, "sigma_ra") == 32.32) { 984 psFree(md); 985 exit(EXIT_FAILURE); 986 } 987 if (!psMetadataLookupF32(&status, md, "sigma_dec") == 32.32) { 988 psFree(md); 989 exit(EXIT_FAILURE); 990 } 991 if (!psMetadataLookupF32(&status, md, "zp_mean") == 32.32) { 992 psFree(md); 993 exit(EXIT_FAILURE); 994 } 995 if (!psMetadataLookupF32(&status, md, "zp_stdev") == 32.32) { 996 psFree(md); 997 exit(EXIT_FAILURE); 998 } 999 if (!psMetadataLookupF32(&status, md, "fwhm") == 32.32) { 1000 psFree(md); 1001 exit(EXIT_FAILURE); 1002 } 1003 if (!psMetadataLookupF32(&status, md, "fwhm_range") == 32.32) { 1004 psFree(md); 1005 exit(EXIT_FAILURE); 1006 } 1007 if (!psMetadataLookupS32(&status, md, "n_stars") == -32) { 1008 psFree(md); 1009 exit(EXIT_FAILURE); 1010 } 1011 if (!psMetadataLookupS32(&status, md, "n_extended") == -32) { 1012 psFree(md); 1013 exit(EXIT_FAILURE); 1014 } 1015 if (!psMetadataLookupS32(&status, md, "n_cr") == -32) { 1016 psFree(md); 1017 exit(EXIT_FAILURE); 1018 } 1019 if (!psMetadataLookupS32(&status, md, "n_astrom") == -32) { 1020 psFree(md); 1021 exit(EXIT_FAILURE); 1022 } 1023 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 1024 psFree(md); 1025 exit(EXIT_FAILURE); 1026 } 1027 psFree(md); 1028 exit(EXIT_FAILURE); 1029 } 1030 1031 psFree(md); 1032 } 1033 1034 { 1035 psMetadata *md; 1036 camMaskRow *object; 1037 bool status; 1038 1039 object = camMaskRowAlloc("a string"); 1040 if (!object) { 1041 exit(EXIT_FAILURE); 1042 } 1043 1044 md = camMaskMetadataFromObject(object); 1045 if (!md) { 1046 exit(EXIT_FAILURE); 1047 } 1048 1049 psFree(object); 1050 1051 if (strncmp(psMetadataLookupPtr(&status, md, "label"), "a string", MAX_STRING_LENGTH)) { 1052 psFree(md); 1053 exit(EXIT_FAILURE); 1054 } 1055 1056 psFree(md); 1057 } 1058 1059 { 1060 psMetadata *md; 1061 warpRunRow *object; 1062 bool status; 1063 1064 object = warpRunRowAlloc(-64, "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z"); 1065 if (!object) { 1066 exit(EXIT_FAILURE); 1067 } 1068 1069 md = warpRunMetadataFromObject(object); 1070 if (!md) { 1071 exit(EXIT_FAILURE); 1072 } 1073 1074 psFree(object); 1075 1076 psFree(md); 1077 exit(EXIT_FAILURE); 1078 } 1079 if (strncmp(psMetadataLookupPtr(&status, md, "mode"), "a string", MAX_STRING_LENGTH)) { 1080 psFree(md); 1081 exit(EXIT_FAILURE); 1082 } 1083 if (strncmp(psMetadataLookupPtr(&status, md, "state"), "a string", MAX_STRING_LENGTH)) { 1084 psFree(md); 1085 exit(EXIT_FAILURE); 1086 } 1087 if (strncmp(psMetadataLookupPtr(&status, md, "workdir"), "a string", MAX_STRING_LENGTH)) { 1088 psFree(md); 1089 exit(EXIT_FAILURE); 1090 } 1091 if (strncmp(psMetadataLookupPtr(&status, md, "dvodb"), "a string", MAX_STRING_LENGTH)) { 1092 psFree(md); 1093 exit(EXIT_FAILURE); 1094 } 1095 psFree(md); 1096 exit(EXIT_FAILURE); 1097 } 1098 1099 psFree(md); 1100 } 1101 1102 { 1103 psMetadata *md; 1104 warpInputExpRow *object; 1105 bool status; 1106 1107 object = warpInputExpRowAlloc(-64, -64, true); 1108 if (!object) { 1109 exit(EXIT_FAILURE); 1110 } 1111 1112 md = warpInputExpMetadataFromObject(object); 1113 if (!md) { 1114 exit(EXIT_FAILURE); 1115 } 1116 1117 psFree(object); 1118 1119 psFree(md); 1120 exit(EXIT_FAILURE); 1121 } 1122 psFree(md); 1123 exit(EXIT_FAILURE); 1124 } 1125 if (!psMetadataLookupBool(&status, md, "magiced") == true) { 1126 psFree(md); 1127 exit(EXIT_FAILURE); 1128 } 1129 1130 psFree(md); 1131 } 1132 1133 { 1134 psMetadata *md; 1135 warpSkyCellMapRow *object; 1136 bool status; 1137 1138 object = warpSkyCellMapRowAlloc(-64, "a string", "a string", -64, "a string", -16); 1139 if (!object) { 1140 exit(EXIT_FAILURE); 1141 } 1142 1143 md = warpSkyCellMapMetadataFromObject(object); 1144 if (!md) { 1145 exit(EXIT_FAILURE); 1146 } 1147 1148 psFree(object); 1149 1150 psFree(md); 1151 exit(EXIT_FAILURE); 1152 } 1153 if (strncmp(psMetadataLookupPtr(&status, md, "skycell_id"), "a string", MAX_STRING_LENGTH)) { 1154 psFree(md); 1155 exit(EXIT_FAILURE); 1156 } 1157 if (strncmp(psMetadataLookupPtr(&status, md, "tess_id"), "a string", MAX_STRING_LENGTH)) { 768 1158 psFree(md); 769 1159 exit(EXIT_FAILURE); … … 776 1166 exit(EXIT_FAILURE); 777 1167 } 1168 psFree(md); 1169 exit(EXIT_FAILURE); 1170 } 1171 1172 psFree(md); 1173 } 1174 1175 { 1176 psMetadata *md; 1177 warpSkyfileRow *object; 1178 bool status; 1179 1180 object = warpSkyfileRowAlloc(-64, "a string", "a string", "a string", "a string", 64.64, 64.64, 64.64, -16); 1181 if (!object) { 1182 exit(EXIT_FAILURE); 1183 } 1184 1185 md = warpSkyfileMetadataFromObject(object); 1186 if (!md) { 1187 exit(EXIT_FAILURE); 1188 } 1189 1190 psFree(object); 1191 1192 psFree(md); 1193 exit(EXIT_FAILURE); 1194 } 1195 if (strncmp(psMetadataLookupPtr(&status, md, "skycell_id"), "a string", MAX_STRING_LENGTH)) { 1196 psFree(md); 1197 exit(EXIT_FAILURE); 1198 } 1199 if (strncmp(psMetadataLookupPtr(&status, md, "tess_id"), "a string", MAX_STRING_LENGTH)) { 1200 psFree(md); 1201 exit(EXIT_FAILURE); 1202 } 778 1203 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 779 1204 psFree(md); 780 1205 exit(EXIT_FAILURE); 781 1206 } 782 if (!psMetadataLookupF32(&status, md, "bg") == 32.32) {783 psFree(md);784 exit(EXIT_FAILURE);785 }786 if (!psMetadataLookupF32(&status, md, "bg_stdev") == 32.32) {787 psFree(md);788 exit(EXIT_FAILURE);789 }790 if (!psMetadataLookupF32(&status, md, "bg_mean_stdev") == 32.32) {791 psFree(md);792 exit(EXIT_FAILURE);793 }794 if (!psMetadataLookupF32(&status, md, "bias") == 32.32) {795 psFree(md);796 exit(EXIT_FAILURE);797 }798 if (!psMetadataLookupF32(&status, md, "bias_stdev") == 32.32) {799 psFree(md);800 exit(EXIT_FAILURE);801 }802 if (!psMetadataLookupF32(&status, md, "fringe_0") == 32.32) {803 psFree(md);804 exit(EXIT_FAILURE);805 }806 if (!psMetadataLookupF32(&status, md, "fringe_1") == 32.32) {807 psFree(md);808 exit(EXIT_FAILURE);809 }810 if (!psMetadataLookupF32(&status, md, "fringe_2") == 32.32) {811 psFree(md);812 exit(EXIT_FAILURE);813 }814 if (!psMetadataLookupF32(&status, md, "sigma_ra") == 32.32) {815 psFree(md);816 exit(EXIT_FAILURE);817 }818 if (!psMetadataLookupF32(&status, md, "sigma_dec") == 32.32) {819 psFree(md);820 exit(EXIT_FAILURE);821 }822 if (!psMetadataLookupF32(&status, md, "ap_resid") == 32.32) {823 psFree(md);824 exit(EXIT_FAILURE);825 }826 if (!psMetadataLookupF32(&status, md, "ap_resid_stdev") == 32.32) {827 psFree(md);828 exit(EXIT_FAILURE);829 }830 if (!psMetadataLookupF32(&status, md, "fwhm") == 32.32) {831 psFree(md);832 exit(EXIT_FAILURE);833 }834 if (!psMetadataLookupF32(&status, md, "fwhm_range") == 32.32) {835 psFree(md);836 exit(EXIT_FAILURE);837 }838 if (!psMetadataLookupS32(&status, md, "n_stars") == -32) {839 psFree(md);840 exit(EXIT_FAILURE);841 }842 if (!psMetadataLookupS32(&status, md, "n_extended") == -32) {843 psFree(md);844 exit(EXIT_FAILURE);845 }846 if (!psMetadataLookupS32(&status, md, "n_cr") == -32) {847 psFree(md);848 exit(EXIT_FAILURE);849 }850 if (!psMetadataLookupS32(&status, md, "n_astrom") == -32) {851 psFree(md);852 exit(EXIT_FAILURE);853 }854 1207 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 855 1208 psFree(md); 856 1209 exit(EXIT_FAILURE); 857 1210 } 858 psFree(md); 859 exit(EXIT_FAILURE); 860 } 861 862 psFree(md); 863 } 864 865 { 866 psMetadata *md; 867 chipMaskRow *object; 868 bool status; 869 870 object = chipMaskRowAlloc("a string"); 871 if (!object) { 872 exit(EXIT_FAILURE); 873 } 874 875 md = chipMaskMetadataFromObject(object); 876 if (!md) { 877 exit(EXIT_FAILURE); 878 } 879 880 psFree(object); 881 1211 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 1212 psFree(md); 1213 exit(EXIT_FAILURE); 1214 } 1215 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 1216 psFree(md); 1217 exit(EXIT_FAILURE); 1218 } 1219 if (!psMetadataLookupF64(&status, md, "good_frac") == 64.64) { 1220 psFree(md); 1221 exit(EXIT_FAILURE); 1222 } 1223 psFree(md); 1224 exit(EXIT_FAILURE); 1225 } 1226 1227 psFree(md); 1228 } 1229 1230 { 1231 psMetadata *md; 1232 diffRunRow *object; 1233 bool status; 1234 1235 object = diffRunRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string"); 1236 if (!object) { 1237 exit(EXIT_FAILURE); 1238 } 1239 1240 md = diffRunMetadataFromObject(object); 1241 if (!md) { 1242 exit(EXIT_FAILURE); 1243 } 1244 1245 psFree(object); 1246 1247 psFree(md); 1248 exit(EXIT_FAILURE); 1249 } 1250 if (strncmp(psMetadataLookupPtr(&status, md, "state"), "a string", MAX_STRING_LENGTH)) { 1251 psFree(md); 1252 exit(EXIT_FAILURE); 1253 } 1254 if (strncmp(psMetadataLookupPtr(&status, md, "workdir"), "a string", MAX_STRING_LENGTH)) { 1255 psFree(md); 1256 exit(EXIT_FAILURE); 1257 } 1258 if (strncmp(psMetadataLookupPtr(&status, md, "dvodb"), "a string", MAX_STRING_LENGTH)) { 1259 psFree(md); 1260 exit(EXIT_FAILURE); 1261 } 1262 psFree(md); 1263 exit(EXIT_FAILURE); 1264 } 1265 if (strncmp(psMetadataLookupPtr(&status, md, "skycell_id"), "a string", MAX_STRING_LENGTH)) { 1266 psFree(md); 1267 exit(EXIT_FAILURE); 1268 } 1269 if (strncmp(psMetadataLookupPtr(&status, md, "tess_id"), "a string", MAX_STRING_LENGTH)) { 1270 psFree(md); 1271 exit(EXIT_FAILURE); 1272 } 1273 1274 psFree(md); 1275 } 1276 1277 { 1278 psMetadata *md; 1279 diffInputSkyfileRow *object; 1280 bool status; 1281 1282 object = diffInputSkyfileRowAlloc(-64, true, -64, -64, "a string", "a string", "a string"); 1283 if (!object) { 1284 exit(EXIT_FAILURE); 1285 } 1286 1287 md = diffInputSkyfileMetadataFromObject(object); 1288 if (!md) { 1289 exit(EXIT_FAILURE); 1290 } 1291 1292 psFree(object); 1293 1294 psFree(md); 1295 exit(EXIT_FAILURE); 1296 } 1297 if (!psMetadataLookupBool(&status, md, "template") == true) { 1298 psFree(md); 1299 exit(EXIT_FAILURE); 1300 } 1301 psFree(md); 1302 exit(EXIT_FAILURE); 1303 } 1304 psFree(md); 1305 exit(EXIT_FAILURE); 1306 } 1307 if (strncmp(psMetadataLookupPtr(&status, md, "skycell_id"), "a string", MAX_STRING_LENGTH)) { 1308 psFree(md); 1309 exit(EXIT_FAILURE); 1310 } 1311 if (strncmp(psMetadataLookupPtr(&status, md, "tess_id"), "a string", MAX_STRING_LENGTH)) { 1312 psFree(md); 1313 exit(EXIT_FAILURE); 1314 } 1315 if (strncmp(psMetadataLookupPtr(&status, md, "kind"), "a string", MAX_STRING_LENGTH)) { 1316 psFree(md); 1317 exit(EXIT_FAILURE); 1318 } 1319 1320 psFree(md); 1321 } 1322 1323 { 1324 psMetadata *md; 1325 diffSkyfileRow *object; 1326 bool status; 1327 1328 object = diffSkyfileRowAlloc(-64, "a string", "a string", 64.64, 64.64, 64.64, -16); 1329 if (!object) { 1330 exit(EXIT_FAILURE); 1331 } 1332 1333 md = diffSkyfileMetadataFromObject(object); 1334 if (!md) { 1335 exit(EXIT_FAILURE); 1336 } 1337 1338 psFree(object); 1339 1340 psFree(md); 1341 exit(EXIT_FAILURE); 1342 } 1343 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 1344 psFree(md); 1345 exit(EXIT_FAILURE); 1346 } 1347 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 1348 psFree(md); 1349 exit(EXIT_FAILURE); 1350 } 1351 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 1352 psFree(md); 1353 exit(EXIT_FAILURE); 1354 } 1355 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 1356 psFree(md); 1357 exit(EXIT_FAILURE); 1358 } 1359 if (!psMetadataLookupF64(&status, md, "good_frac") == 64.64) { 1360 psFree(md); 1361 exit(EXIT_FAILURE); 1362 } 1363 psFree(md); 1364 exit(EXIT_FAILURE); 1365 } 1366 1367 psFree(md); 1368 } 1369 1370 { 1371 psMetadata *md; 1372 stackRunRow *object; 1373 bool status; 1374 1375 object = stackRunRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string"); 1376 if (!object) { 1377 exit(EXIT_FAILURE); 1378 } 1379 1380 md = stackRunMetadataFromObject(object); 1381 if (!md) { 1382 exit(EXIT_FAILURE); 1383 } 1384 1385 psFree(object); 1386 1387 psFree(md); 1388 exit(EXIT_FAILURE); 1389 } 1390 if (strncmp(psMetadataLookupPtr(&status, md, "state"), "a string", MAX_STRING_LENGTH)) { 1391 psFree(md); 1392 exit(EXIT_FAILURE); 1393 } 1394 if (strncmp(psMetadataLookupPtr(&status, md, "workdir"), "a string", MAX_STRING_LENGTH)) { 1395 psFree(md); 1396 exit(EXIT_FAILURE); 1397 } 1398 if (strncmp(psMetadataLookupPtr(&status, md, "dvodb"), "a string", MAX_STRING_LENGTH)) { 1399 psFree(md); 1400 exit(EXIT_FAILURE); 1401 } 1402 psFree(md); 1403 exit(EXIT_FAILURE); 1404 } 1405 if (strncmp(psMetadataLookupPtr(&status, md, "skycell_id"), "a string", MAX_STRING_LENGTH)) { 1406 psFree(md); 1407 exit(EXIT_FAILURE); 1408 } 1409 if (strncmp(psMetadataLookupPtr(&status, md, "tess_id"), "a string", MAX_STRING_LENGTH)) { 1410 psFree(md); 1411 exit(EXIT_FAILURE); 1412 } 1413 1414 psFree(md); 1415 } 1416 1417 { 1418 psMetadata *md; 1419 stackInputSkyfileRow *object; 1420 bool status; 1421 1422 object = stackInputSkyfileRowAlloc(-64, -64); 1423 if (!object) { 1424 exit(EXIT_FAILURE); 1425 } 1426 1427 md = stackInputSkyfileMetadataFromObject(object); 1428 if (!md) { 1429 exit(EXIT_FAILURE); 1430 } 1431 1432 psFree(object); 1433 1434 psFree(md); 1435 exit(EXIT_FAILURE); 1436 } 1437 psFree(md); 1438 exit(EXIT_FAILURE); 1439 } 1440 1441 psFree(md); 1442 } 1443 1444 { 1445 psMetadata *md; 1446 stackSumSkyfileRow *object; 1447 bool status; 1448 1449 object = stackSumSkyfileRowAlloc(-64, "a string", "a string", 64.64, 64.64, 64.64, -16); 1450 if (!object) { 1451 exit(EXIT_FAILURE); 1452 } 1453 1454 md = stackSumSkyfileMetadataFromObject(object); 1455 if (!md) { 1456 exit(EXIT_FAILURE); 1457 } 1458 1459 psFree(object); 1460 1461 psFree(md); 1462 exit(EXIT_FAILURE); 1463 } 1464 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 1465 psFree(md); 1466 exit(EXIT_FAILURE); 1467 } 1468 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 1469 psFree(md); 1470 exit(EXIT_FAILURE); 1471 } 1472 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 1473 psFree(md); 1474 exit(EXIT_FAILURE); 1475 } 1476 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 1477 psFree(md); 1478 exit(EXIT_FAILURE); 1479 } 1480 if (!psMetadataLookupF64(&status, md, "good_frac") == 64.64) { 1481 psFree(md); 1482 exit(EXIT_FAILURE); 1483 } 1484 psFree(md); 1485 exit(EXIT_FAILURE); 1486 } 1487 1488 psFree(md); 1489 } 1490 1491 { 1492 psMetadata *md; 1493 detRunRow *object; 1494 bool status; 1495 1496 object = detRunRowAlloc(-64, -32, "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 64.64, 64.64, "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", 32.32, 32.32, "a string", -32); 1497 if (!object) { 1498 exit(EXIT_FAILURE); 1499 } 1500 1501 md = detRunMetadataFromObject(object); 1502 if (!md) { 1503 exit(EXIT_FAILURE); 1504 } 1505 1506 psFree(object); 1507 1508 psFree(md); 1509 exit(EXIT_FAILURE); 1510 } 1511 if (!psMetadataLookupS32(&status, md, "iteration") == -32) { 1512 psFree(md); 1513 exit(EXIT_FAILURE); 1514 } 1515 if (strncmp(psMetadataLookupPtr(&status, md, "det_type"), "a string", MAX_STRING_LENGTH)) { 1516 psFree(md); 1517 exit(EXIT_FAILURE); 1518 } 1519 if (strncmp(psMetadataLookupPtr(&status, md, "mode"), "a string", MAX_STRING_LENGTH)) { 1520 psFree(md); 1521 exit(EXIT_FAILURE); 1522 } 1523 if (strncmp(psMetadataLookupPtr(&status, md, "state"), "a string", MAX_STRING_LENGTH)) { 1524 psFree(md); 1525 exit(EXIT_FAILURE); 1526 } 1527 if (strncmp(psMetadataLookupPtr(&status, md, "filelevel"), "a string", MAX_STRING_LENGTH)) { 1528 psFree(md); 1529 exit(EXIT_FAILURE); 1530 } 1531 if (strncmp(psMetadataLookupPtr(&status, md, "workdir"), "a string", MAX_STRING_LENGTH)) { 1532 psFree(md); 1533 exit(EXIT_FAILURE); 1534 } 1535 if (strncmp(psMetadataLookupPtr(&status, md, "camera"), "a string", MAX_STRING_LENGTH)) { 1536 psFree(md); 1537 exit(EXIT_FAILURE); 1538 } 1539 if (strncmp(psMetadataLookupPtr(&status, md, "telescope"), "a string", MAX_STRING_LENGTH)) { 1540 psFree(md); 1541 exit(EXIT_FAILURE); 1542 } 1543 if (strncmp(psMetadataLookupPtr(&status, md, "exp_type"), "a string", MAX_STRING_LENGTH)) { 1544 psFree(md); 1545 exit(EXIT_FAILURE); 1546 } 1547 if (strncmp(psMetadataLookupPtr(&status, md, "reduction"), "a string", MAX_STRING_LENGTH)) { 1548 psFree(md); 1549 exit(EXIT_FAILURE); 1550 } 1551 if (strncmp(psMetadataLookupPtr(&status, md, "filter"), "a string", MAX_STRING_LENGTH)) { 1552 psFree(md); 1553 exit(EXIT_FAILURE); 1554 } 1555 if (!psMetadataLookupF32(&status, md, "airmass_min") == 32.32) { 1556 psFree(md); 1557 exit(EXIT_FAILURE); 1558 } 1559 if (!psMetadataLookupF32(&status, md, "airmass_max") == 32.32) { 1560 psFree(md); 1561 exit(EXIT_FAILURE); 1562 } 1563 if (!psMetadataLookupF32(&status, md, "exp_time_min") == 32.32) { 1564 psFree(md); 1565 exit(EXIT_FAILURE); 1566 } 1567 if (!psMetadataLookupF32(&status, md, "exp_time_max") == 32.32) { 1568 psFree(md); 1569 exit(EXIT_FAILURE); 1570 } 1571 if (!psMetadataLookupF32(&status, md, "ccd_temp_min") == 32.32) { 1572 psFree(md); 1573 exit(EXIT_FAILURE); 1574 } 1575 if (!psMetadataLookupF32(&status, md, "ccd_temp_max") == 32.32) { 1576 psFree(md); 1577 exit(EXIT_FAILURE); 1578 } 1579 if (!psMetadataLookupF64(&status, md, "posang_min") == 64.64) { 1580 psFree(md); 1581 exit(EXIT_FAILURE); 1582 } 1583 if (!psMetadataLookupF64(&status, md, "posang_max") == 64.64) { 1584 psFree(md); 1585 exit(EXIT_FAILURE); 1586 } 1587 psFree(md); 1588 exit(EXIT_FAILURE); 1589 } 1590 psFree(md); 1591 exit(EXIT_FAILURE); 1592 } 1593 psFree(md); 1594 exit(EXIT_FAILURE); 1595 } 1596 psFree(md); 1597 exit(EXIT_FAILURE); 1598 } 1599 psFree(md); 1600 exit(EXIT_FAILURE); 1601 } 1602 if (!psMetadataLookupF32(&status, md, "solang_min") == 32.32) { 1603 psFree(md); 1604 exit(EXIT_FAILURE); 1605 } 1606 if (!psMetadataLookupF32(&status, md, "solang_max") == 32.32) { 1607 psFree(md); 1608 exit(EXIT_FAILURE); 1609 } 882 1610 if (strncmp(psMetadataLookupPtr(&status, md, "label"), "a string", MAX_STRING_LENGTH)) { 883 1611 psFree(md); 884 1612 exit(EXIT_FAILURE); 885 1613 } 886 887 psFree(md); 888 } 889 890 { 891 psMetadata *md; 892 camRunRow *object; 893 bool status; 894 895 object = camRunRowAlloc(-64, -64, "a string", "a string", "a string", "a string", "a string", "a string", "a string"); 896 if (!object) { 897 exit(EXIT_FAILURE); 898 } 899 900 md = camRunMetadataFromObject(object); 901 if (!md) { 902 exit(EXIT_FAILURE); 903 } 904 905 psFree(object); 906 907 psFree(md); 908 exit(EXIT_FAILURE); 909 } 1614 if (!psMetadataLookupS32(&status, md, "parent") == -32) { 1615 psFree(md); 1616 exit(EXIT_FAILURE); 1617 } 1618 1619 psFree(md); 1620 } 1621 1622 { 1623 psMetadata *md; 1624 detInputExpRow *object; 1625 bool status; 1626 1627 object = detInputExpRowAlloc(-64, -32, -64, true); 1628 if (!object) { 1629 exit(EXIT_FAILURE); 1630 } 1631 1632 md = detInputExpMetadataFromObject(object); 1633 if (!md) { 1634 exit(EXIT_FAILURE); 1635 } 1636 1637 psFree(object); 1638 1639 psFree(md); 1640 exit(EXIT_FAILURE); 1641 } 1642 if (!psMetadataLookupS32(&status, md, "iteration") == -32) { 1643 psFree(md); 1644 exit(EXIT_FAILURE); 1645 } 1646 psFree(md); 1647 exit(EXIT_FAILURE); 1648 } 1649 if (!psMetadataLookupBool(&status, md, "include") == true) { 1650 psFree(md); 1651 exit(EXIT_FAILURE); 1652 } 1653 1654 psFree(md); 1655 } 1656 1657 { 1658 psMetadata *md; 1659 detProcessedImfileRow *object; 1660 bool status; 1661 1662 object = detProcessedImfileRowAlloc(-64, -64, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16); 1663 if (!object) { 1664 exit(EXIT_FAILURE); 1665 } 1666 1667 md = detProcessedImfileMetadataFromObject(object); 1668 if (!md) { 1669 exit(EXIT_FAILURE); 1670 } 1671 1672 psFree(object); 1673 1674 psFree(md); 1675 exit(EXIT_FAILURE); 1676 } 1677 psFree(md); 1678 exit(EXIT_FAILURE); 1679 } 1680 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) { 1681 psFree(md); 1682 exit(EXIT_FAILURE); 1683 } 1684 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 1685 psFree(md); 1686 exit(EXIT_FAILURE); 1687 } 1688 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) { 1689 psFree(md); 1690 exit(EXIT_FAILURE); 1691 } 1692 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 1693 psFree(md); 1694 exit(EXIT_FAILURE); 1695 } 1696 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 1697 psFree(md); 1698 exit(EXIT_FAILURE); 1699 } 1700 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) { 1701 psFree(md); 1702 exit(EXIT_FAILURE); 1703 } 1704 if (!psMetadataLookupF64(&status, md, "fringe_0") == 64.64) { 1705 psFree(md); 1706 exit(EXIT_FAILURE); 1707 } 1708 if (!psMetadataLookupF64(&status, md, "fringe_1") == 64.64) { 1709 psFree(md); 1710 exit(EXIT_FAILURE); 1711 } 1712 if (!psMetadataLookupF64(&status, md, "fringe_2") == 64.64) { 1713 psFree(md); 1714 exit(EXIT_FAILURE); 1715 } 1716 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) { 1717 psFree(md); 1718 exit(EXIT_FAILURE); 1719 } 1720 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) { 1721 psFree(md); 1722 exit(EXIT_FAILURE); 1723 } 1724 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) { 1725 psFree(md); 1726 exit(EXIT_FAILURE); 1727 } 1728 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) { 1729 psFree(md); 1730 exit(EXIT_FAILURE); 1731 } 1732 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) { 1733 psFree(md); 1734 exit(EXIT_FAILURE); 1735 } 1736 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 1737 psFree(md); 1738 exit(EXIT_FAILURE); 1739 } 1740 psFree(md); 1741 exit(EXIT_FAILURE); 1742 } 1743 1744 psFree(md); 1745 } 1746 1747 { 1748 psMetadata *md; 1749 detProcessedExpRow *object; 1750 bool status; 1751 1752 object = detProcessedExpRowAlloc(-64, -64, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16); 1753 if (!object) { 1754 exit(EXIT_FAILURE); 1755 } 1756 1757 md = detProcessedExpMetadataFromObject(object); 1758 if (!md) { 1759 exit(EXIT_FAILURE); 1760 } 1761 1762 psFree(object); 1763 1764 psFree(md); 1765 exit(EXIT_FAILURE); 1766 } 1767 psFree(md); 1768 exit(EXIT_FAILURE); 1769 } 1770 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) { 1771 psFree(md); 1772 exit(EXIT_FAILURE); 1773 } 1774 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 1775 psFree(md); 1776 exit(EXIT_FAILURE); 1777 } 1778 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 1779 psFree(md); 1780 exit(EXIT_FAILURE); 1781 } 1782 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) { 1783 psFree(md); 1784 exit(EXIT_FAILURE); 1785 } 1786 if (!psMetadataLookupF64(&status, md, "fringe_0") == 64.64) { 1787 psFree(md); 1788 exit(EXIT_FAILURE); 1789 } 1790 if (!psMetadataLookupF64(&status, md, "fringe_1") == 64.64) { 1791 psFree(md); 1792 exit(EXIT_FAILURE); 1793 } 1794 if (!psMetadataLookupF64(&status, md, "fringe_2") == 64.64) { 1795 psFree(md); 1796 exit(EXIT_FAILURE); 1797 } 1798 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) { 1799 psFree(md); 1800 exit(EXIT_FAILURE); 1801 } 1802 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) { 1803 psFree(md); 1804 exit(EXIT_FAILURE); 1805 } 1806 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) { 1807 psFree(md); 1808 exit(EXIT_FAILURE); 1809 } 1810 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) { 1811 psFree(md); 1812 exit(EXIT_FAILURE); 1813 } 1814 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) { 1815 psFree(md); 1816 exit(EXIT_FAILURE); 1817 } 1818 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 1819 psFree(md); 1820 exit(EXIT_FAILURE); 1821 } 1822 psFree(md); 1823 exit(EXIT_FAILURE); 1824 } 1825 1826 psFree(md); 1827 } 1828 1829 { 1830 psMetadata *md; 1831 detStackedImfileRow *object; 1832 bool status; 1833 1834 object = detStackedImfileRowAlloc(-64, -32, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, -16); 1835 if (!object) { 1836 exit(EXIT_FAILURE); 1837 } 1838 1839 md = detStackedImfileMetadataFromObject(object); 1840 if (!md) { 1841 exit(EXIT_FAILURE); 1842 } 1843 1844 psFree(object); 1845 1846 psFree(md); 1847 exit(EXIT_FAILURE); 1848 } 1849 if (!psMetadataLookupS32(&status, md, "iteration") == -32) { 1850 psFree(md); 1851 exit(EXIT_FAILURE); 1852 } 1853 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) { 1854 psFree(md); 1855 exit(EXIT_FAILURE); 1856 } 1857 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 1858 psFree(md); 1859 exit(EXIT_FAILURE); 1860 } 1861 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) { 1862 psFree(md); 1863 exit(EXIT_FAILURE); 1864 } 1865 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 1866 psFree(md); 1867 exit(EXIT_FAILURE); 1868 } 1869 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 1870 psFree(md); 1871 exit(EXIT_FAILURE); 1872 } 1873 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) { 1874 psFree(md); 1875 exit(EXIT_FAILURE); 1876 } 1877 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) { 1878 psFree(md); 1879 exit(EXIT_FAILURE); 1880 } 1881 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) { 1882 psFree(md); 1883 exit(EXIT_FAILURE); 1884 } 1885 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) { 1886 psFree(md); 1887 exit(EXIT_FAILURE); 1888 } 1889 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) { 1890 psFree(md); 1891 exit(EXIT_FAILURE); 1892 } 1893 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) { 1894 psFree(md); 1895 exit(EXIT_FAILURE); 1896 } 1897 psFree(md); 1898 exit(EXIT_FAILURE); 1899 } 1900 1901 psFree(md); 1902 } 1903 1904 { 1905 psMetadata *md; 1906 detNormalizedStatImfileRow *object; 1907 bool status; 1908 1909 object = detNormalizedStatImfileRowAlloc(-64, -32, "a string", 32.32, -16); 1910 if (!object) { 1911 exit(EXIT_FAILURE); 1912 } 1913 1914 md = detNormalizedStatImfileMetadataFromObject(object); 1915 if (!md) { 1916 exit(EXIT_FAILURE); 1917 } 1918 1919 psFree(object); 1920 1921 psFree(md); 1922 exit(EXIT_FAILURE); 1923 } 1924 if (!psMetadataLookupS32(&status, md, "iteration") == -32) { 1925 psFree(md); 1926 exit(EXIT_FAILURE); 1927 } 1928 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) { 1929 psFree(md); 1930 exit(EXIT_FAILURE); 1931 } 1932 if (!psMetadataLookupF32(&status, md, "norm") == 32.32) { 1933 psFree(md); 1934 exit(EXIT_FAILURE); 1935 } 1936 psFree(md); 1937 exit(EXIT_FAILURE); 1938 } 1939 1940 psFree(md); 1941 } 1942 1943 { 1944 psMetadata *md; 1945 detNormalizedImfileRow *object; 1946 bool status; 1947 1948 object = detNormalizedImfileRowAlloc(-64, -32, "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16); 1949 if (!object) { 1950 exit(EXIT_FAILURE); 1951 } 1952 1953 md = detNormalizedImfileMetadataFromObject(object); 1954 if (!md) { 1955 exit(EXIT_FAILURE); 1956 } 1957 1958 psFree(object); 1959 1960 psFree(md); 1961 exit(EXIT_FAILURE); 1962 } 1963 if (!psMetadataLookupS32(&status, md, "iteration") == -32) { 1964 psFree(md); 1965 exit(EXIT_FAILURE); 1966 } 1967 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) { 1968 psFree(md); 1969 exit(EXIT_FAILURE); 1970 } 1971 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 1972 psFree(md); 1973 exit(EXIT_FAILURE); 1974 } 1975 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 1976 psFree(md); 1977 exit(EXIT_FAILURE); 1978 } 1979 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 1980 psFree(md); 1981 exit(EXIT_FAILURE); 1982 } 1983 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) { 1984 psFree(md); 1985 exit(EXIT_FAILURE); 1986 } 1987 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) { 1988 psFree(md); 1989 exit(EXIT_FAILURE); 1990 } 1991 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) { 1992 psFree(md); 1993 exit(EXIT_FAILURE); 1994 } 1995 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) { 1996 psFree(md); 1997 exit(EXIT_FAILURE); 1998 } 1999 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) { 2000 psFree(md); 2001 exit(EXIT_FAILURE); 2002 } 2003 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) { 2004 psFree(md); 2005 exit(EXIT_FAILURE); 2006 } 2007 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 2008 psFree(md); 2009 exit(EXIT_FAILURE); 2010 } 2011 psFree(md); 2012 exit(EXIT_FAILURE); 2013 } 2014 2015 psFree(md); 2016 } 2017 2018 { 2019 psMetadata *md; 2020 detNormalizedExpRow *object; 2021 bool status; 2022 2023 object = detNormalizedExpRowAlloc(-64, -32, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16); 2024 if (!object) { 2025 exit(EXIT_FAILURE); 2026 } 2027 2028 md = detNormalizedExpMetadataFromObject(object); 2029 if (!md) { 2030 exit(EXIT_FAILURE); 2031 } 2032 2033 psFree(object); 2034 2035 psFree(md); 2036 exit(EXIT_FAILURE); 2037 } 2038 if (!psMetadataLookupS32(&status, md, "iteration") == -32) { 2039 psFree(md); 2040 exit(EXIT_FAILURE); 2041 } 2042 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) { 2043 psFree(md); 2044 exit(EXIT_FAILURE); 2045 } 2046 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 2047 psFree(md); 2048 exit(EXIT_FAILURE); 2049 } 2050 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 2051 psFree(md); 2052 exit(EXIT_FAILURE); 2053 } 2054 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) { 2055 psFree(md); 2056 exit(EXIT_FAILURE); 2057 } 2058 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) { 2059 psFree(md); 2060 exit(EXIT_FAILURE); 2061 } 2062 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) { 2063 psFree(md); 2064 exit(EXIT_FAILURE); 2065 } 2066 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) { 2067 psFree(md); 2068 exit(EXIT_FAILURE); 2069 } 2070 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) { 2071 psFree(md); 2072 exit(EXIT_FAILURE); 2073 } 2074 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) { 2075 psFree(md); 2076 exit(EXIT_FAILURE); 2077 } 2078 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 2079 psFree(md); 2080 exit(EXIT_FAILURE); 2081 } 2082 psFree(md); 2083 exit(EXIT_FAILURE); 2084 } 2085 2086 psFree(md); 2087 } 2088 2089 { 2090 psMetadata *md; 2091 detResidImfileRow *object; 2092 bool status; 2093 2094 object = detResidImfileRowAlloc(-64, -32, -64, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16); 2095 if (!object) { 2096 exit(EXIT_FAILURE); 2097 } 2098 2099 md = detResidImfileMetadataFromObject(object); 2100 if (!md) { 2101 exit(EXIT_FAILURE); 2102 } 2103 2104 psFree(object); 2105 2106 psFree(md); 2107 exit(EXIT_FAILURE); 2108 } 2109 if (!psMetadataLookupS32(&status, md, "iteration") == -32) { 2110 psFree(md); 2111 exit(EXIT_FAILURE); 2112 } 2113 psFree(md); 2114 exit(EXIT_FAILURE); 2115 } 2116 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) { 2117 psFree(md); 2118 exit(EXIT_FAILURE); 2119 } 2120 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 2121 psFree(md); 2122 exit(EXIT_FAILURE); 2123 } 2124 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) { 2125 psFree(md); 2126 exit(EXIT_FAILURE); 2127 } 2128 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 2129 psFree(md); 2130 exit(EXIT_FAILURE); 2131 } 2132 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 2133 psFree(md); 2134 exit(EXIT_FAILURE); 2135 } 2136 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) { 2137 psFree(md); 2138 exit(EXIT_FAILURE); 2139 } 2140 if (!psMetadataLookupF64(&status, md, "bg_skewness") == 64.64) { 2141 psFree(md); 2142 exit(EXIT_FAILURE); 2143 } 2144 if (!psMetadataLookupF64(&status, md, "bg_kurtosis") == 64.64) { 2145 psFree(md); 2146 exit(EXIT_FAILURE); 2147 } 2148 if (!psMetadataLookupF64(&status, md, "bin_stdev") == 64.64) { 2149 psFree(md); 2150 exit(EXIT_FAILURE); 2151 } 2152 if (!psMetadataLookupF64(&status, md, "fringe_0") == 64.64) { 2153 psFree(md); 2154 exit(EXIT_FAILURE); 2155 } 2156 if (!psMetadataLookupF64(&status, md, "fringe_1") == 64.64) { 2157 psFree(md); 2158 exit(EXIT_FAILURE); 2159 } 2160 if (!psMetadataLookupF64(&status, md, "fringe_2") == 64.64) { 2161 psFree(md); 2162 exit(EXIT_FAILURE); 2163 } 2164 if (!psMetadataLookupF64(&status, md, "fringe_resid_0") == 64.64) { 2165 psFree(md); 2166 exit(EXIT_FAILURE); 2167 } 2168 if (!psMetadataLookupF64(&status, md, "fringe_resid_1") == 64.64) { 2169 psFree(md); 2170 exit(EXIT_FAILURE); 2171 } 2172 if (!psMetadataLookupF64(&status, md, "fringe_resid_2") == 64.64) { 2173 psFree(md); 2174 exit(EXIT_FAILURE); 2175 } 2176 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) { 2177 psFree(md); 2178 exit(EXIT_FAILURE); 2179 } 2180 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) { 2181 psFree(md); 2182 exit(EXIT_FAILURE); 2183 } 2184 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) { 2185 psFree(md); 2186 exit(EXIT_FAILURE); 2187 } 2188 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) { 2189 psFree(md); 2190 exit(EXIT_FAILURE); 2191 } 2192 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) { 2193 psFree(md); 2194 exit(EXIT_FAILURE); 2195 } 2196 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 2197 psFree(md); 2198 exit(EXIT_FAILURE); 2199 } 2200 psFree(md); 2201 exit(EXIT_FAILURE); 2202 } 2203 2204 psFree(md); 2205 } 2206 2207 { 2208 psMetadata *md; 2209 detResidExpRow *object; 2210 bool status; 2211 2212 object = detResidExpRowAlloc(-64, -32, -64, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", true, -16); 2213 if (!object) { 2214 exit(EXIT_FAILURE); 2215 } 2216 2217 md = detResidExpMetadataFromObject(object); 2218 if (!md) { 2219 exit(EXIT_FAILURE); 2220 } 2221 2222 psFree(object); 2223 2224 psFree(md); 2225 exit(EXIT_FAILURE); 2226 } 2227 if (!psMetadataLookupS32(&status, md, "iteration") == -32) { 2228 psFree(md); 2229 exit(EXIT_FAILURE); 2230 } 2231 psFree(md); 2232 exit(EXIT_FAILURE); 2233 } 2234 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) { 2235 psFree(md); 2236 exit(EXIT_FAILURE); 2237 } 2238 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 2239 psFree(md); 2240 exit(EXIT_FAILURE); 2241 } 2242 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 2243 psFree(md); 2244 exit(EXIT_FAILURE); 2245 } 2246 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) { 2247 psFree(md); 2248 exit(EXIT_FAILURE); 2249 } 2250 if (!psMetadataLookupF64(&status, md, "bg_skewness") == 64.64) { 2251 psFree(md); 2252 exit(EXIT_FAILURE); 2253 } 2254 if (!psMetadataLookupF64(&status, md, "bg_kurtosis") == 64.64) { 2255 psFree(md); 2256 exit(EXIT_FAILURE); 2257 } 2258 if (!psMetadataLookupF64(&status, md, "bin_stdev") == 64.64) { 2259 psFree(md); 2260 exit(EXIT_FAILURE); 2261 } 2262 if (!psMetadataLookupF64(&status, md, "fringe_0") == 64.64) { 2263 psFree(md); 2264 exit(EXIT_FAILURE); 2265 } 2266 if (!psMetadataLookupF64(&status, md, "fringe_1") == 64.64) { 2267 psFree(md); 2268 exit(EXIT_FAILURE); 2269 } 2270 if (!psMetadataLookupF64(&status, md, "fringe_2") == 64.64) { 2271 psFree(md); 2272 exit(EXIT_FAILURE); 2273 } 2274 if (!psMetadataLookupF64(&status, md, "fringe_resid_0") == 64.64) { 2275 psFree(md); 2276 exit(EXIT_FAILURE); 2277 } 2278 if (!psMetadataLookupF64(&status, md, "fringe_resid_1") == 64.64) { 2279 psFree(md); 2280 exit(EXIT_FAILURE); 2281 } 2282 if (!psMetadataLookupF64(&status, md, "fringe_resid_2") == 64.64) { 2283 psFree(md); 2284 exit(EXIT_FAILURE); 2285 } 2286 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) { 2287 psFree(md); 2288 exit(EXIT_FAILURE); 2289 } 2290 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) { 2291 psFree(md); 2292 exit(EXIT_FAILURE); 2293 } 2294 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) { 2295 psFree(md); 2296 exit(EXIT_FAILURE); 2297 } 2298 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) { 2299 psFree(md); 2300 exit(EXIT_FAILURE); 2301 } 2302 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) { 2303 psFree(md); 2304 exit(EXIT_FAILURE); 2305 } 2306 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 2307 psFree(md); 2308 exit(EXIT_FAILURE); 2309 } 2310 if (!psMetadataLookupBool(&status, md, "accept") == true) { 2311 psFree(md); 2312 exit(EXIT_FAILURE); 2313 } 2314 psFree(md); 2315 exit(EXIT_FAILURE); 2316 } 2317 2318 psFree(md); 2319 } 2320 2321 { 2322 psMetadata *md; 2323 detRunSummaryRow *object; 2324 bool status; 2325 2326 object = detRunSummaryRowAlloc(-64, -32, 64.64, 64.64, 64.64, true, -16); 2327 if (!object) { 2328 exit(EXIT_FAILURE); 2329 } 2330 2331 md = detRunSummaryMetadataFromObject(object); 2332 if (!md) { 2333 exit(EXIT_FAILURE); 2334 } 2335 2336 psFree(object); 2337 2338 psFree(md); 2339 exit(EXIT_FAILURE); 2340 } 2341 if (!psMetadataLookupS32(&status, md, "iteration") == -32) { 2342 psFree(md); 2343 exit(EXIT_FAILURE); 2344 } 2345 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 2346 psFree(md); 2347 exit(EXIT_FAILURE); 2348 } 2349 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 2350 psFree(md); 2351 exit(EXIT_FAILURE); 2352 } 2353 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) { 2354 psFree(md); 2355 exit(EXIT_FAILURE); 2356 } 2357 if (!psMetadataLookupBool(&status, md, "accept") == true) { 2358 psFree(md); 2359 exit(EXIT_FAILURE); 2360 } 2361 psFree(md); 2362 exit(EXIT_FAILURE); 2363 } 2364 2365 psFree(md); 2366 } 2367 2368 { 2369 psMetadata *md; 2370 detRegisteredImfileRow *object; 2371 bool status; 2372 2373 object = detRegisteredImfileRowAlloc(-64, -32, "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16); 2374 if (!object) { 2375 exit(EXIT_FAILURE); 2376 } 2377 2378 md = detRegisteredImfileMetadataFromObject(object); 2379 if (!md) { 2380 exit(EXIT_FAILURE); 2381 } 2382 2383 psFree(object); 2384 2385 psFree(md); 2386 exit(EXIT_FAILURE); 2387 } 2388 if (!psMetadataLookupS32(&status, md, "iteration") == -32) { 2389 psFree(md); 2390 exit(EXIT_FAILURE); 2391 } 2392 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) { 2393 psFree(md); 2394 exit(EXIT_FAILURE); 2395 } 2396 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 2397 psFree(md); 2398 exit(EXIT_FAILURE); 2399 } 2400 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 2401 psFree(md); 2402 exit(EXIT_FAILURE); 2403 } 2404 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 2405 psFree(md); 2406 exit(EXIT_FAILURE); 2407 } 2408 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) { 2409 psFree(md); 2410 exit(EXIT_FAILURE); 2411 } 2412 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) { 2413 psFree(md); 2414 exit(EXIT_FAILURE); 2415 } 2416 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) { 2417 psFree(md); 2418 exit(EXIT_FAILURE); 2419 } 2420 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) { 2421 psFree(md); 2422 exit(EXIT_FAILURE); 2423 } 2424 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) { 2425 psFree(md); 2426 exit(EXIT_FAILURE); 2427 } 2428 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) { 2429 psFree(md); 2430 exit(EXIT_FAILURE); 2431 } 2432 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 2433 psFree(md); 2434 exit(EXIT_FAILURE); 2435 } 2436 psFree(md); 2437 exit(EXIT_FAILURE); 2438 } 2439 2440 psFree(md); 2441 } 2442 2443 { 2444 psMetadata *md; 2445 detCorrectedExpRow *object; 2446 bool status; 2447 2448 object = detCorrectedExpRowAlloc(-64, -64, "a string", -64, "a string", "a string", "a string", -16); 2449 if (!object) { 2450 exit(EXIT_FAILURE); 2451 } 2452 2453 md = detCorrectedExpMetadataFromObject(object); 2454 if (!md) { 2455 exit(EXIT_FAILURE); 2456 } 2457 2458 psFree(object); 2459 2460 psFree(md); 2461 exit(EXIT_FAILURE); 2462 } 2463 psFree(md); 2464 exit(EXIT_FAILURE); 2465 } 2466 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 2467 psFree(md); 2468 exit(EXIT_FAILURE); 2469 } 2470 psFree(md); 2471 exit(EXIT_FAILURE); 2472 } 2473 if (strncmp(psMetadataLookupPtr(&status, md, "corr_type"), "a string", MAX_STRING_LENGTH)) { 2474 psFree(md); 2475 exit(EXIT_FAILURE); 2476 } 2477 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) { 2478 psFree(md); 2479 exit(EXIT_FAILURE); 2480 } 2481 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 2482 psFree(md); 2483 exit(EXIT_FAILURE); 2484 } 2485 psFree(md); 2486 exit(EXIT_FAILURE); 2487 } 2488 2489 psFree(md); 2490 } 2491 2492 { 2493 psMetadata *md; 2494 detCorrectedImfileRow *object; 2495 bool status; 2496 2497 object = detCorrectedImfileRowAlloc(-64, -64, "a string", "a string", "a string", -16); 2498 if (!object) { 2499 exit(EXIT_FAILURE); 2500 } 2501 2502 md = detCorrectedImfileMetadataFromObject(object); 2503 if (!md) { 2504 exit(EXIT_FAILURE); 2505 } 2506 2507 psFree(object); 2508 2509 psFree(md); 2510 exit(EXIT_FAILURE); 2511 } 2512 psFree(md); 2513 exit(EXIT_FAILURE); 2514 } 2515 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) { 2516 psFree(md); 2517 exit(EXIT_FAILURE); 2518 } 2519 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 2520 psFree(md); 2521 exit(EXIT_FAILURE); 2522 } 2523 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 2524 psFree(md); 2525 exit(EXIT_FAILURE); 2526 } 2527 psFree(md); 2528 exit(EXIT_FAILURE); 2529 } 2530 2531 psFree(md); 2532 } 2533 2534 { 2535 psMetadata *md; 2536 magicRunRow *object; 2537 bool status; 2538 2539 object = magicRunRowAlloc(-64, "a string", "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z"); 2540 if (!object) { 2541 exit(EXIT_FAILURE); 2542 } 2543 2544 md = magicRunMetadataFromObject(object); 2545 if (!md) { 2546 exit(EXIT_FAILURE); 2547 } 2548 2549 psFree(object); 2550 910 2551 psFree(md); 911 2552 exit(EXIT_FAILURE); … … 927 2568 exit(EXIT_FAILURE); 928 2569 } 929 if (strncmp(psMetadataLookupPtr(&status, md, "reduction"), "a string", MAX_STRING_LENGTH)) {930 psFree(md);931 exit(EXIT_FAILURE);932 }933 if (strncmp(psMetadataLookupPtr(&status, md, "expgroup"), "a string", MAX_STRING_LENGTH)) {934 psFree(md);935 exit(EXIT_FAILURE);936 }937 2570 if (strncmp(psMetadataLookupPtr(&status, md, "dvodb"), "a string", MAX_STRING_LENGTH)) { 938 2571 psFree(md); 939 2572 exit(EXIT_FAILURE); 940 2573 } 941 942 psFree(md); 943 } 944 945 { 946 psMetadata *md; 947 camProcessedExpRow *object; 948 bool status; 949 950 object = camProcessedExpRowAlloc(-64, -64, "a string", 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, -32, -32, -32, -32, "a string", -16); 951 if (!object) { 952 exit(EXIT_FAILURE); 953 } 954 955 md = camProcessedExpMetadataFromObject(object); 956 if (!md) { 957 exit(EXIT_FAILURE); 958 } 959 960 psFree(object); 961 962 psFree(md); 963 exit(EXIT_FAILURE); 964 } 2574 psFree(md); 2575 exit(EXIT_FAILURE); 2576 } 2577 2578 psFree(md); 2579 } 2580 2581 { 2582 psMetadata *md; 2583 magicInputSkyfileRow *object; 2584 bool status; 2585 2586 object = magicInputSkyfileRowAlloc(-64, -64, "a string"); 2587 if (!object) { 2588 exit(EXIT_FAILURE); 2589 } 2590 2591 md = magicInputSkyfileMetadataFromObject(object); 2592 if (!md) { 2593 exit(EXIT_FAILURE); 2594 } 2595 2596 psFree(object); 2597 2598 psFree(md); 2599 exit(EXIT_FAILURE); 2600 } 2601 psFree(md); 2602 exit(EXIT_FAILURE); 2603 } 2604 if (strncmp(psMetadataLookupPtr(&status, md, "node"), "a string", MAX_STRING_LENGTH)) { 2605 psFree(md); 2606 exit(EXIT_FAILURE); 2607 } 2608 2609 psFree(md); 2610 } 2611 2612 { 2613 psMetadata *md; 2614 magicTreeRow *object; 2615 bool status; 2616 2617 object = magicTreeRowAlloc(-64, "a string", "a string"); 2618 if (!object) { 2619 exit(EXIT_FAILURE); 2620 } 2621 2622 md = magicTreeMetadataFromObject(object); 2623 if (!md) { 2624 exit(EXIT_FAILURE); 2625 } 2626 2627 psFree(object); 2628 2629 psFree(md); 2630 exit(EXIT_FAILURE); 2631 } 2632 if (strncmp(psMetadataLookupPtr(&status, md, "node"), "a string", MAX_STRING_LENGTH)) { 2633 psFree(md); 2634 exit(EXIT_FAILURE); 2635 } 2636 if (strncmp(psMetadataLookupPtr(&status, md, "dep"), "a string", MAX_STRING_LENGTH)) { 2637 psFree(md); 2638 exit(EXIT_FAILURE); 2639 } 2640 2641 psFree(md); 2642 } 2643 2644 { 2645 psMetadata *md; 2646 magicNodeResultRow *object; 2647 bool status; 2648 2649 object = magicNodeResultRowAlloc(-64, "a string", "a string"); 2650 if (!object) { 2651 exit(EXIT_FAILURE); 2652 } 2653 2654 md = magicNodeResultMetadataFromObject(object); 2655 if (!md) { 2656 exit(EXIT_FAILURE); 2657 } 2658 2659 psFree(object); 2660 2661 psFree(md); 2662 exit(EXIT_FAILURE); 2663 } 2664 if (strncmp(psMetadataLookupPtr(&status, md, "node"), "a string", MAX_STRING_LENGTH)) { 965 2665 psFree(md); 966 2666 exit(EXIT_FAILURE); … … 970 2670 exit(EXIT_FAILURE); 971 2671 } 972 if (!psMetadataLookupF32(&status, md, "bg") == 32.32) { 973 psFree(md); 974 exit(EXIT_FAILURE); 975 } 976 if (!psMetadataLookupF32(&status, md, "bg_stdev") == 32.32) { 977 psFree(md); 978 exit(EXIT_FAILURE); 979 } 980 if (!psMetadataLookupF32(&status, md, "bg_mean_stdev") == 32.32) { 981 psFree(md); 982 exit(EXIT_FAILURE); 983 } 984 if (!psMetadataLookupF32(&status, md, "sigma_ra") == 32.32) { 985 psFree(md); 986 exit(EXIT_FAILURE); 987 } 988 if (!psMetadataLookupF32(&status, md, "sigma_dec") == 32.32) { 989 psFree(md); 990 exit(EXIT_FAILURE); 991 } 992 if (!psMetadataLookupF32(&status, md, "zp_mean") == 32.32) { 993 psFree(md); 994 exit(EXIT_FAILURE); 995 } 996 if (!psMetadataLookupF32(&status, md, "zp_stdev") == 32.32) { 997 psFree(md); 998 exit(EXIT_FAILURE); 999 } 1000 if (!psMetadataLookupF32(&status, md, "fwhm") == 32.32) { 1001 psFree(md); 1002 exit(EXIT_FAILURE); 1003 } 1004 if (!psMetadataLookupF32(&status, md, "fwhm_range") == 32.32) { 1005 psFree(md); 1006 exit(EXIT_FAILURE); 1007 } 1008 if (!psMetadataLookupS32(&status, md, "n_stars") == -32) { 1009 psFree(md); 1010 exit(EXIT_FAILURE); 1011 } 1012 if (!psMetadataLookupS32(&status, md, "n_extended") == -32) { 1013 psFree(md); 1014 exit(EXIT_FAILURE); 1015 } 1016 if (!psMetadataLookupS32(&status, md, "n_cr") == -32) { 1017 psFree(md); 1018 exit(EXIT_FAILURE); 1019 } 1020 if (!psMetadataLookupS32(&status, md, "n_astrom") == -32) { 1021 psFree(md); 1022 exit(EXIT_FAILURE); 1023 } 1024 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 1025 psFree(md); 1026 exit(EXIT_FAILURE); 1027 } 1028 psFree(md); 1029 exit(EXIT_FAILURE); 1030 } 1031 1032 psFree(md); 1033 } 1034 1035 { 1036 psMetadata *md; 1037 camMaskRow *object; 1038 bool status; 1039 1040 object = camMaskRowAlloc("a string"); 1041 if (!object) { 1042 exit(EXIT_FAILURE); 1043 } 1044 1045 md = camMaskMetadataFromObject(object); 1046 if (!md) { 1047 exit(EXIT_FAILURE); 1048 } 1049 1050 psFree(object); 1051 1052 if (strncmp(psMetadataLookupPtr(&status, md, "label"), "a string", MAX_STRING_LENGTH)) { 1053 psFree(md); 1054 exit(EXIT_FAILURE); 1055 } 1056 1057 psFree(md); 1058 } 1059 1060 { 1061 psMetadata *md; 1062 warpRunRow *object; 1063 bool status; 1064 1065 object = warpRunRowAlloc(-64, "a string", "a string", "a string", "a string", "0001-01-01T00:00:00Z"); 1066 if (!object) { 1067 exit(EXIT_FAILURE); 1068 } 1069 1070 md = warpRunMetadataFromObject(object); 1071 if (!md) { 1072 exit(EXIT_FAILURE); 1073 } 1074 1075 psFree(object); 1076 1077 psFree(md); 1078 exit(EXIT_FAILURE); 1079 } 1080 if (strncmp(psMetadataLookupPtr(&status, md, "mode"), "a string", MAX_STRING_LENGTH)) { 1081 psFree(md); 1082 exit(EXIT_FAILURE); 1083 } 1084 if (strncmp(psMetadataLookupPtr(&status, md, "state"), "a string", MAX_STRING_LENGTH)) { 1085 psFree(md); 1086 exit(EXIT_FAILURE); 1087 } 1088 if (strncmp(psMetadataLookupPtr(&status, md, "workdir"), "a string", MAX_STRING_LENGTH)) { 1089 psFree(md); 1090 exit(EXIT_FAILURE); 1091 } 1092 if (strncmp(psMetadataLookupPtr(&status, md, "dvodb"), "a string", MAX_STRING_LENGTH)) { 1093 psFree(md); 1094 exit(EXIT_FAILURE); 1095 } 1096 psFree(md); 1097 exit(EXIT_FAILURE); 1098 } 1099 1100 psFree(md); 1101 } 1102 1103 { 1104 psMetadata *md; 1105 warpInputExpRow *object; 1106 bool status; 1107 1108 object = warpInputExpRowAlloc(-64, -64, true); 1109 if (!object) { 1110 exit(EXIT_FAILURE); 1111 } 1112 1113 md = warpInputExpMetadataFromObject(object); 1114 if (!md) { 1115 exit(EXIT_FAILURE); 1116 } 1117 1118 psFree(object); 1119 1120 psFree(md); 1121 exit(EXIT_FAILURE); 1122 } 1123 psFree(md); 1124 exit(EXIT_FAILURE); 1125 } 1126 if (!psMetadataLookupBool(&status, md, "magiced") == true) { 1127 psFree(md); 1128 exit(EXIT_FAILURE); 1129 } 1130 1131 psFree(md); 1132 } 1133 1134 { 1135 psMetadata *md; 1136 warpSkyCellMapRow *object; 1137 bool status; 1138 1139 object = warpSkyCellMapRowAlloc(-64, "a string", "a string", -64, "a string", -16); 1140 if (!object) { 1141 exit(EXIT_FAILURE); 1142 } 1143 1144 md = warpSkyCellMapMetadataFromObject(object); 1145 if (!md) { 1146 exit(EXIT_FAILURE); 1147 } 1148 1149 psFree(object); 1150 1151 psFree(md); 1152 exit(EXIT_FAILURE); 1153 } 1154 if (strncmp(psMetadataLookupPtr(&status, md, "skycell_id"), "a string", MAX_STRING_LENGTH)) { 1155 psFree(md); 1156 exit(EXIT_FAILURE); 1157 } 1158 if (strncmp(psMetadataLookupPtr(&status, md, "tess_id"), "a string", MAX_STRING_LENGTH)) { 1159 psFree(md); 1160 exit(EXIT_FAILURE); 1161 } 1162 psFree(md); 1163 exit(EXIT_FAILURE); 1164 } 1165 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) { 1166 psFree(md); 1167 exit(EXIT_FAILURE); 1168 } 1169 psFree(md); 1170 exit(EXIT_FAILURE); 1171 } 1172 1173 psFree(md); 1174 } 1175 1176 { 1177 psMetadata *md; 1178 warpSkyfileRow *object; 1179 bool status; 1180 1181 object = warpSkyfileRowAlloc(-64, "a string", "a string", "a string", "a string", 64.64, 64.64); 1182 if (!object) { 1183 exit(EXIT_FAILURE); 1184 } 1185 1186 md = warpSkyfileMetadataFromObject(object); 1187 if (!md) { 1188 exit(EXIT_FAILURE); 1189 } 1190 1191 psFree(object); 1192 1193 psFree(md); 1194 exit(EXIT_FAILURE); 1195 } 1196 if (strncmp(psMetadataLookupPtr(&status, md, "skycell_id"), "a string", MAX_STRING_LENGTH)) { 1197 psFree(md); 1198 exit(EXIT_FAILURE); 1199 } 1200 if (strncmp(psMetadataLookupPtr(&status, md, "tess_id"), "a string", MAX_STRING_LENGTH)) { 2672 2673 psFree(md); 2674 } 2675 2676 { 2677 psMetadata *md; 2678 magicMaskRow *object; 2679 bool status; 2680 2681 object = magicMaskRowAlloc(-64, "a string"); 2682 if (!object) { 2683 exit(EXIT_FAILURE); 2684 } 2685 2686 md = magicMaskMetadataFromObject(object); 2687 if (!md) { 2688 exit(EXIT_FAILURE); 2689 } 2690 2691 psFree(object); 2692 1201 2693 psFree(md); 1202 2694 exit(EXIT_FAILURE); … … 1206 2698 exit(EXIT_FAILURE); 1207 2699 } 1208 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) { 1209 psFree(md); 1210 exit(EXIT_FAILURE); 1211 } 1212 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) { 1213 psFree(md); 1214 exit(EXIT_FAILURE); 1215 } 1216 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) { 1217 psFree(md); 1218 exit(EXIT_FAILURE); 1219 } 1220 1221 psFree(md); 1222 } 1223 1224 { 1225 psMetadata *md; 1226 diffRunRow *object; 1227 bool status; 1228 1229 object = diffRunRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string"); 1230 if (!object) { 1231 exit(EXIT_FAILURE); 1232 } 1233 1234 md = diffRunMetadataFromObject(object); 1235 if (!md) { 1236 exit(EXIT_FAILURE); 1237 } 1238 1239 psFree(object); 1240 1241 psFree(md); 1242 exit(EXIT_FAILURE); 1243 } 1244 if (strncmp(psMetadataLookupPtr(&status, md, "state"), "a string", MAX_STRING_LENGTH)) { 1245 psFree(md); 1246 exit(EXIT_FAILURE); 1247 } 1248 if (strncmp(psMetadataLookupPtr(&status, md, "workdir"), "a string", MAX_STRING_LENGTH)) { 1249 psFree(md); 1250 exit(EXIT_FAILURE); 1251 } 1252 if (strncmp(psMetadataLookupPtr(&status, md, "dvodb"), "a string", MAX_STRING_LENGTH)) { 1253 psFree(md); 1254 exit(EXIT_FAILURE); 1255 } 1256 psFree(md); 1257 exit(EXIT_FAILURE); 1258 } 1259 if (strncmp(psMetadataLookupPtr(&status, md, "skycell_id"), "a string", MAX_STRING_LENGTH)) { 1260 psFree(md); 1261 exit(EXIT_FAILURE); 1262 } 1263 if (strncmp(psMetadataLookupPtr(&status, md, "tess_id"), "a string", MAX_STRING_LENGTH)) { 1264 psFree(md); 1265 exit(EXIT_FAILURE); 1266 } 1267 1268 psFree(md); 1269 } 1270 1271 { 1272 psMetadata *md; 1273 diffInputSkyfileRow *object; 1274 bool status; 1275 1276 object = diffInputSkyfileRowAlloc(-64, -64, "a string", "a string", "a string", true); 1277 if (!object) { 1278 exit(EXIT_FAILURE); 1279 } 1280 1281 md = diffInputSkyfileMetadataFromObject(object); 1282 if (!md) { 1283 exit(EXIT_FAILURE); 1284 } 1285 1286 psFree(object); 1287 1288 psFree(md); 1289 exit(EXIT_FAILURE); 1290 } 1291 psFree(md); 1292 exit(EXIT_FAILURE); 1293 } 1294 if (strncmp(psMetadataLookupPtr(&status, md, "skycell_id"), "a string", MAX_STRING_LENGTH)) { 1295 psFree(md); 1296 exit(EXIT_FAILURE); 1297 } 1298 if (strncmp(psMetadataLookupPtr(&status, md, "tess_id"), "a string", MAX_STRING_LENGTH)) { 1299 psFree(md); 1300 exit(EXIT_FAILURE); 1301 } 1302 if (strncmp(psMetadataLookupPtr(&status, md, "kind"), "a string", MAX_STRING_LENGTH)) { 1303 psFree(md); 1304 exit(EXIT_FAILURE); 1305 } 1306 if (!psMetadataLookupBool(&status, md, "template") == true) { 1307 psFree(md); 1308 exit(EXIT_FAILURE); 1309 } 1310 1311 psFree(md); 1312 } 1313 1314 { 1315 psMetadata *md; 1316 diffSkyfileRow *object; 1317 bool status; 1318 1319 object = diffSkyfileRowAlloc(-64, "a string", "a string", 64.64, 64.64); 1320 if (!object) { 1321 exit(EXIT_FAILURE); 1322 } 1323 1324 md = diffSkyfileMetadataFromObject(object); 1325 if (!md) { 1326 exit(EXIT_FAILURE); 1327 } 1328 1329 psFree(object); 1330 2700 2701 psFree(md); 2702 } 2703 2704 { 2705 psMetadata *md; 2706 magicSkyfileMaskRow *object; 2707 bool status; 2708 2709 object = magicSkyfileMaskRowAlloc(-64, -64, "a string"); 2710 if (!object) { 2711 exit(EXIT_FAILURE); 2712 } 2713 2714 md = magicSkyfileMaskMetadataFromObject(object); 2715 if (!md) { 2716 exit(EXIT_FAILURE); 2717 } 2718 2719 psFree(object); 2720 2721 psFree(md); 2722 exit(EXIT_FAILURE); 2723 } 1331 2724 psFree(md); 1332 2725 exit(EXIT_FAILURE); 1333 2726 } 1334 2727 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) { 1335 psFree(md);1336 exit(EXIT_FAILURE);1337 }1338 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) {1339 psFree(md);1340 exit(EXIT_FAILURE);1341 }1342 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) {1343 psFree(md);1344 exit(EXIT_FAILURE);1345 }1346 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) {1347 psFree(md);1348 exit(EXIT_FAILURE);1349 }1350 1351 psFree(md);1352 }1353 1354 {1355 psMetadata *md;1356 stackRunRow *object;1357 bool status;1358 1359 object = stackRunRowAlloc(-64, "a string", "a string", "a string", "0001-01-01T00:00:00Z", "a string", "a string");1360 if (!object) {1361 exit(EXIT_FAILURE);1362 }1363 1364 md = stackRunMetadataFromObject(object);1365 if (!md) {1366 exit(EXIT_FAILURE);1367 }1368 1369 psFree(object);1370 1371 psFree(md);1372 exit(EXIT_FAILURE);1373 }1374 if (strncmp(psMetadataLookupPtr(&status, md, "state"), "a string", MAX_STRING_LENGTH)) {1375 psFree(md);1376 exit(EXIT_FAILURE);1377 }1378 if (strncmp(psMetadataLookupPtr(&status, md, "workdir"), "a string", MAX_STRING_LENGTH)) {1379 psFree(md);1380 exit(EXIT_FAILURE);1381 }1382 if (strncmp(psMetadataLookupPtr(&status, md, "dvodb"), "a string", MAX_STRING_LENGTH)) {1383 psFree(md);1384 exit(EXIT_FAILURE);1385 }1386 psFree(md);1387 exit(EXIT_FAILURE);1388 }1389 if (strncmp(psMetadataLookupPtr(&status, md, "skycell_id"), "a string", MAX_STRING_LENGTH)) {1390 psFree(md);1391 exit(EXIT_FAILURE);1392 }1393 if (strncmp(psMetadataLookupPtr(&status, md, "tess_id"), "a string", MAX_STRING_LENGTH)) {1394 psFree(md);1395 exit(EXIT_FAILURE);1396 }1397 1398 psFree(md);1399 }1400 1401 {1402 psMetadata *md;1403 stackInputSkyfileRow *object;1404 bool status;1405 1406 object = stackInputSkyfileRowAlloc(-64, -64);1407 if (!object) {1408 exit(EXIT_FAILURE);1409 }1410 1411 md = stackInputSkyfileMetadataFromObject(object);1412 if (!md) {1413 exit(EXIT_FAILURE);1414 }1415 1416 psFree(object);1417 1418 psFree(md);1419 exit(EXIT_FAILURE);1420 }1421 psFree(md);1422 exit(EXIT_FAILURE);1423 }1424 1425 psFree(md);1426 }1427 1428 {1429 psMetadata *md;1430 stackSumSkyfileRow *object;1431 bool status;1432 1433 object = stackSumSkyfileRowAlloc(-64, "a string", "a string", 64.64, 64.64);1434 if (!object) {1435 exit(EXIT_FAILURE);1436 }1437 1438 md = stackSumSkyfileMetadataFromObject(object);1439 if (!md) {1440 exit(EXIT_FAILURE);1441 }1442 1443 psFree(object);1444 1445 psFree(md);1446 exit(EXIT_FAILURE);1447 }1448 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) {1449 psFree(md);1450 exit(EXIT_FAILURE);1451 }1452 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) {1453 psFree(md);1454 exit(EXIT_FAILURE);1455 }1456 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) {1457 psFree(md);1458 exit(EXIT_FAILURE);1459 }1460 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) {1461 psFree(md);1462 exit(EXIT_FAILURE);1463 }1464 1465 psFree(md);1466 }1467 1468 {1469 psMetadata *md;1470 detRunRow *object;1471 bool status;1472 1473 object = detRunRowAlloc(-64, -32, "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", "a string", 32.32, 32.32, 32.32, 32.32, 32.32, 32.32, 64.64, 64.64, "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", "0001-01-01T00:00:00Z", 32.32, 32.32, "a string", -32);1474 if (!object) {1475 exit(EXIT_FAILURE);1476 }1477 1478 md = detRunMetadataFromObject(object);1479 if (!md) {1480 exit(EXIT_FAILURE);1481 }1482 1483 psFree(object);1484 1485 psFree(md);1486 exit(EXIT_FAILURE);1487 }1488 if (!psMetadataLookupS32(&status, md, "iteration") == -32) {1489 psFree(md);1490 exit(EXIT_FAILURE);1491 }1492 if (strncmp(psMetadataLookupPtr(&status, md, "det_type"), "a string", MAX_STRING_LENGTH)) {1493 psFree(md);1494 exit(EXIT_FAILURE);1495 }1496 if (strncmp(psMetadataLookupPtr(&status, md, "mode"), "a string", MAX_STRING_LENGTH)) {1497 psFree(md);1498 exit(EXIT_FAILURE);1499 }1500 if (strncmp(psMetadataLookupPtr(&status, md, "state"), "a string", MAX_STRING_LENGTH)) {1501 psFree(md);1502 exit(EXIT_FAILURE);1503 }1504 if (strncmp(psMetadataLookupPtr(&status, md, "filelevel"), "a string", MAX_STRING_LENGTH)) {1505 psFree(md);1506 exit(EXIT_FAILURE);1507 }1508 if (strncmp(psMetadataLookupPtr(&status, md, "workdir"), "a string", MAX_STRING_LENGTH)) {1509 psFree(md);1510 exit(EXIT_FAILURE);1511 }1512 if (strncmp(psMetadataLookupPtr(&status, md, "camera"), "a string", MAX_STRING_LENGTH)) {1513 psFree(md);1514 exit(EXIT_FAILURE);1515 }1516 if (strncmp(psMetadataLookupPtr(&status, md, "telescope"), "a string", MAX_STRING_LENGTH)) {1517 psFree(md);1518 exit(EXIT_FAILURE);1519 }1520 if (strncmp(psMetadataLookupPtr(&status, md, "exp_type"), "a string", MAX_STRING_LENGTH)) {1521 psFree(md);1522 exit(EXIT_FAILURE);1523 }1524 if (strncmp(psMetadataLookupPtr(&status, md, "reduction"), "a string", MAX_STRING_LENGTH)) {1525 psFree(md);1526 exit(EXIT_FAILURE);1527 }1528 if (strncmp(psMetadataLookupPtr(&status, md, "filter"), "a string", MAX_STRING_LENGTH)) {1529 psFree(md);1530 exit(EXIT_FAILURE);1531 }1532 if (!psMetadataLookupF32(&status, md, "airmass_min") == 32.32) {1533 psFree(md);1534 exit(EXIT_FAILURE);1535 }1536 if (!psMetadataLookupF32(&status, md, "airmass_max") == 32.32) {1537 psFree(md);1538 exit(EXIT_FAILURE);1539 }1540 if (!psMetadataLookupF32(&status, md, "exp_time_min") == 32.32) {1541 psFree(md);1542 exit(EXIT_FAILURE);1543 }1544 if (!psMetadataLookupF32(&status, md, "exp_time_max") == 32.32) {1545 psFree(md);1546 exit(EXIT_FAILURE);1547 }1548 if (!psMetadataLookupF32(&status, md, "ccd_temp_min") == 32.32) {1549 psFree(md);1550 exit(EXIT_FAILURE);1551 }1552 if (!psMetadataLookupF32(&status, md, "ccd_temp_max") == 32.32) {1553 psFree(md);1554 exit(EXIT_FAILURE);1555 }1556 if (!psMetadataLookupF64(&status, md, "posang_min") == 64.64) {1557 psFree(md);1558 exit(EXIT_FAILURE);1559 }1560 if (!psMetadataLookupF64(&status, md, "posang_max") == 64.64) {1561 psFree(md);1562 exit(EXIT_FAILURE);1563 }1564 psFree(md);1565 exit(EXIT_FAILURE);1566 }1567 psFree(md);1568 exit(EXIT_FAILURE);1569 }1570 psFree(md);1571 exit(EXIT_FAILURE);1572 }1573 psFree(md);1574 exit(EXIT_FAILURE);1575 }1576 psFree(md);1577 exit(EXIT_FAILURE);1578 }1579 if (!psMetadataLookupF32(&status, md, "solang_min") == 32.32) {1580 psFree(md);1581 exit(EXIT_FAILURE);1582 }1583 if (!psMetadataLookupF32(&status, md, "solang_max") == 32.32) {1584 psFree(md);1585 exit(EXIT_FAILURE);1586 }1587 if (strncmp(psMetadataLookupPtr(&status, md, "label"), "a string", MAX_STRING_LENGTH)) {1588 psFree(md);1589 exit(EXIT_FAILURE);1590 }1591 if (!psMetadataLookupS32(&status, md, "parent") == -32) {1592 psFree(md);1593 exit(EXIT_FAILURE);1594 }1595 1596 psFree(md);1597 }1598 1599 {1600 psMetadata *md;1601 detInputExpRow *object;1602 bool status;1603 1604 object = detInputExpRowAlloc(-64, -32, -64, true);1605 if (!object) {1606 exit(EXIT_FAILURE);1607 }1608 1609 md = detInputExpMetadataFromObject(object);1610 if (!md) {1611 exit(EXIT_FAILURE);1612 }1613 1614 psFree(object);1615 1616 psFree(md);1617 exit(EXIT_FAILURE);1618 }1619 if (!psMetadataLookupS32(&status, md, "iteration") == -32) {1620 psFree(md);1621 exit(EXIT_FAILURE);1622 }1623 psFree(md);1624 exit(EXIT_FAILURE);1625 }1626 if (!psMetadataLookupBool(&status, md, "include") == true) {1627 psFree(md);1628 exit(EXIT_FAILURE);1629 }1630 1631 psFree(md);1632 }1633 1634 {1635 psMetadata *md;1636 detProcessedImfileRow *object;1637 bool status;1638 1639 object = detProcessedImfileRowAlloc(-64, -64, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16);1640 if (!object) {1641 exit(EXIT_FAILURE);1642 }1643 1644 md = detProcessedImfileMetadataFromObject(object);1645 if (!md) {1646 exit(EXIT_FAILURE);1647 }1648 1649 psFree(object);1650 1651 psFree(md);1652 exit(EXIT_FAILURE);1653 }1654 psFree(md);1655 exit(EXIT_FAILURE);1656 }1657 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) {1658 psFree(md);1659 exit(EXIT_FAILURE);1660 }1661 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) {1662 psFree(md);1663 exit(EXIT_FAILURE);1664 }1665 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) {1666 psFree(md);1667 exit(EXIT_FAILURE);1668 }1669 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) {1670 psFree(md);1671 exit(EXIT_FAILURE);1672 }1673 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) {1674 psFree(md);1675 exit(EXIT_FAILURE);1676 }1677 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) {1678 psFree(md);1679 exit(EXIT_FAILURE);1680 }1681 if (!psMetadataLookupF64(&status, md, "fringe_0") == 64.64) {1682 psFree(md);1683 exit(EXIT_FAILURE);1684 }1685 if (!psMetadataLookupF64(&status, md, "fringe_1") == 64.64) {1686 psFree(md);1687 exit(EXIT_FAILURE);1688 }1689 if (!psMetadataLookupF64(&status, md, "fringe_2") == 64.64) {1690 psFree(md);1691 exit(EXIT_FAILURE);1692 }1693 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) {1694 psFree(md);1695 exit(EXIT_FAILURE);1696 }1697 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) {1698 psFree(md);1699 exit(EXIT_FAILURE);1700 }1701 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) {1702 psFree(md);1703 exit(EXIT_FAILURE);1704 }1705 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) {1706 psFree(md);1707 exit(EXIT_FAILURE);1708 }1709 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) {1710 psFree(md);1711 exit(EXIT_FAILURE);1712 }1713 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) {1714 psFree(md);1715 exit(EXIT_FAILURE);1716 }1717 psFree(md);1718 exit(EXIT_FAILURE);1719 }1720 1721 psFree(md);1722 }1723 1724 {1725 psMetadata *md;1726 detProcessedExpRow *object;1727 bool status;1728 1729 object = detProcessedExpRowAlloc(-64, -64, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16);1730 if (!object) {1731 exit(EXIT_FAILURE);1732 }1733 1734 md = detProcessedExpMetadataFromObject(object);1735 if (!md) {1736 exit(EXIT_FAILURE);1737 }1738 1739 psFree(object);1740 1741 psFree(md);1742 exit(EXIT_FAILURE);1743 }1744 psFree(md);1745 exit(EXIT_FAILURE);1746 }1747 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) {1748 psFree(md);1749 exit(EXIT_FAILURE);1750 }1751 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) {1752 psFree(md);1753 exit(EXIT_FAILURE);1754 }1755 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) {1756 psFree(md);1757 exit(EXIT_FAILURE);1758 }1759 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) {1760 psFree(md);1761 exit(EXIT_FAILURE);1762 }1763 if (!psMetadataLookupF64(&status, md, "fringe_0") == 64.64) {1764 psFree(md);1765 exit(EXIT_FAILURE);1766 }1767 if (!psMetadataLookupF64(&status, md, "fringe_1") == 64.64) {1768 psFree(md);1769 exit(EXIT_FAILURE);1770 }1771 if (!psMetadataLookupF64(&status, md, "fringe_2") == 64.64) {1772 psFree(md);1773 exit(EXIT_FAILURE);1774 }1775 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) {1776 psFree(md);1777 exit(EXIT_FAILURE);1778 }1779 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) {1780 psFree(md);1781 exit(EXIT_FAILURE);1782 }1783 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) {1784 psFree(md);1785 exit(EXIT_FAILURE);1786 }1787 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) {1788 psFree(md);1789 exit(EXIT_FAILURE);1790 }1791 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) {1792 psFree(md);1793 exit(EXIT_FAILURE);1794 }1795 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) {1796 psFree(md);1797 exit(EXIT_FAILURE);1798 }1799 psFree(md);1800 exit(EXIT_FAILURE);1801 }1802 1803 psFree(md);1804 }1805 1806 {1807 psMetadata *md;1808 detStackedImfileRow *object;1809 bool status;1810 1811 object = detStackedImfileRowAlloc(-64, -32, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, -16);1812 if (!object) {1813 exit(EXIT_FAILURE);1814 }1815 1816 md = detStackedImfileMetadataFromObject(object);1817 if (!md) {1818 exit(EXIT_FAILURE);1819 }1820 1821 psFree(object);1822 1823 psFree(md);1824 exit(EXIT_FAILURE);1825 }1826 if (!psMetadataLookupS32(&status, md, "iteration") == -32) {1827 psFree(md);1828 exit(EXIT_FAILURE);1829 }1830 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) {1831 psFree(md);1832 exit(EXIT_FAILURE);1833 }1834 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) {1835 psFree(md);1836 exit(EXIT_FAILURE);1837 }1838 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) {1839 psFree(md);1840 exit(EXIT_FAILURE);1841 }1842 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) {1843 psFree(md);1844 exit(EXIT_FAILURE);1845 }1846 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) {1847 psFree(md);1848 exit(EXIT_FAILURE);1849 }1850 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) {1851 psFree(md);1852 exit(EXIT_FAILURE);1853 }1854 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) {1855 psFree(md);1856 exit(EXIT_FAILURE);1857 }1858 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) {1859 psFree(md);1860 exit(EXIT_FAILURE);1861 }1862 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) {1863 psFree(md);1864 exit(EXIT_FAILURE);1865 }1866 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) {1867 psFree(md);1868 exit(EXIT_FAILURE);1869 }1870 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) {1871 psFree(md);1872 exit(EXIT_FAILURE);1873 }1874 psFree(md);1875 exit(EXIT_FAILURE);1876 }1877 1878 psFree(md);1879 }1880 1881 {1882 psMetadata *md;1883 detNormalizedStatImfileRow *object;1884 bool status;1885 1886 object = detNormalizedStatImfileRowAlloc(-64, -32, "a string", 32.32, -16);1887 if (!object) {1888 exit(EXIT_FAILURE);1889 }1890 1891 md = detNormalizedStatImfileMetadataFromObject(object);1892 if (!md) {1893 exit(EXIT_FAILURE);1894 }1895 1896 psFree(object);1897 1898 psFree(md);1899 exit(EXIT_FAILURE);1900 }1901 if (!psMetadataLookupS32(&status, md, "iteration") == -32) {1902 psFree(md);1903 exit(EXIT_FAILURE);1904 }1905 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) {1906 psFree(md);1907 exit(EXIT_FAILURE);1908 }1909 if (!psMetadataLookupF32(&status, md, "norm") == 32.32) {1910 psFree(md);1911 exit(EXIT_FAILURE);1912 }1913 psFree(md);1914 exit(EXIT_FAILURE);1915 }1916 1917 psFree(md);1918 }1919 1920 {1921 psMetadata *md;1922 detNormalizedImfileRow *object;1923 bool status;1924 1925 object = detNormalizedImfileRowAlloc(-64, -32, "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16);1926 if (!object) {1927 exit(EXIT_FAILURE);1928 }1929 1930 md = detNormalizedImfileMetadataFromObject(object);1931 if (!md) {1932 exit(EXIT_FAILURE);1933 }1934 1935 psFree(object);1936 1937 psFree(md);1938 exit(EXIT_FAILURE);1939 }1940 if (!psMetadataLookupS32(&status, md, "iteration") == -32) {1941 psFree(md);1942 exit(EXIT_FAILURE);1943 }1944 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) {1945 psFree(md);1946 exit(EXIT_FAILURE);1947 }1948 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) {1949 psFree(md);1950 exit(EXIT_FAILURE);1951 }1952 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) {1953 psFree(md);1954 exit(EXIT_FAILURE);1955 }1956 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) {1957 psFree(md);1958 exit(EXIT_FAILURE);1959 }1960 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) {1961 psFree(md);1962 exit(EXIT_FAILURE);1963 }1964 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) {1965 psFree(md);1966 exit(EXIT_FAILURE);1967 }1968 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) {1969 psFree(md);1970 exit(EXIT_FAILURE);1971 }1972 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) {1973 psFree(md);1974 exit(EXIT_FAILURE);1975 }1976 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) {1977 psFree(md);1978 exit(EXIT_FAILURE);1979 }1980 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) {1981 psFree(md);1982 exit(EXIT_FAILURE);1983 }1984 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) {1985 psFree(md);1986 exit(EXIT_FAILURE);1987 }1988 psFree(md);1989 exit(EXIT_FAILURE);1990 }1991 1992 psFree(md);1993 }1994 1995 {1996 psMetadata *md;1997 detNormalizedExpRow *object;1998 bool status;1999 2000 object = detNormalizedExpRowAlloc(-64, -32, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16);2001 if (!object) {2002 exit(EXIT_FAILURE);2003 }2004 2005 md = detNormalizedExpMetadataFromObject(object);2006 if (!md) {2007 exit(EXIT_FAILURE);2008 }2009 2010 psFree(object);2011 2012 psFree(md);2013 exit(EXIT_FAILURE);2014 }2015 if (!psMetadataLookupS32(&status, md, "iteration") == -32) {2016 psFree(md);2017 exit(EXIT_FAILURE);2018 }2019 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) {2020 psFree(md);2021 exit(EXIT_FAILURE);2022 }2023 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) {2024 psFree(md);2025 exit(EXIT_FAILURE);2026 }2027 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) {2028 psFree(md);2029 exit(EXIT_FAILURE);2030 }2031 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) {2032 psFree(md);2033 exit(EXIT_FAILURE);2034 }2035 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) {2036 psFree(md);2037 exit(EXIT_FAILURE);2038 }2039 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) {2040 psFree(md);2041 exit(EXIT_FAILURE);2042 }2043 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) {2044 psFree(md);2045 exit(EXIT_FAILURE);2046 }2047 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) {2048 psFree(md);2049 exit(EXIT_FAILURE);2050 }2051 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) {2052 psFree(md);2053 exit(EXIT_FAILURE);2054 }2055 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) {2056 psFree(md);2057 exit(EXIT_FAILURE);2058 }2059 psFree(md);2060 exit(EXIT_FAILURE);2061 }2062 2063 psFree(md);2064 }2065 2066 {2067 psMetadata *md;2068 detResidImfileRow *object;2069 bool status;2070 2071 object = detResidImfileRowAlloc(-64, -32, -64, "a string", "a string", "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", -16);2072 if (!object) {2073 exit(EXIT_FAILURE);2074 }2075 2076 md = detResidImfileMetadataFromObject(object);2077 if (!md) {2078 exit(EXIT_FAILURE);2079 }2080 2081 psFree(object);2082 2083 psFree(md);2084 exit(EXIT_FAILURE);2085 }2086 if (!psMetadataLookupS32(&status, md, "iteration") == -32) {2087 psFree(md);2088 exit(EXIT_FAILURE);2089 }2090 psFree(md);2091 exit(EXIT_FAILURE);2092 }2093 if (strncmp(psMetadataLookupPtr(&status, md, "class_id"), "a string", MAX_STRING_LENGTH)) {2094 psFree(md);2095 exit(EXIT_FAILURE);2096 }2097 if (strncmp(psMetadataLookupPtr(&status, md, "uri"), "a string", MAX_STRING_LENGTH)) {2098 psFree(md);2099 exit(EXIT_FAILURE);2100 }2101 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) {2102 psFree(md);2103 exit(EXIT_FAILURE);2104 }2105 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) {2106 psFree(md);2107 exit(EXIT_FAILURE);2108 }2109 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) {2110 psFree(md);2111 exit(EXIT_FAILURE);2112 }2113 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) {2114 psFree(md);2115 exit(EXIT_FAILURE);2116 }2117 if (!psMetadataLookupF64(&status, md, "bin_stdev") == 64.64) {2118 psFree(md);2119 exit(EXIT_FAILURE);2120 }2121 if (!psMetadataLookupF64(&status, md, "fringe_0") == 64.64) {2122 psFree(md);2123 exit(EXIT_FAILURE);2124 }2125 if (!psMetadataLookupF64(&status, md, "fringe_1") == 64.64) {2126 psFree(md);2127 exit(EXIT_FAILURE);2128 }2129 if (!psMetadataLookupF64(&status, md, "fringe_2") == 64.64) {2130 psFree(md);2131 exit(EXIT_FAILURE);2132 }2133 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) {2134 psFree(md);2135 exit(EXIT_FAILURE);2136 }2137 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) {2138 psFree(md);2139 exit(EXIT_FAILURE);2140 }2141 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) {2142 psFree(md);2143 exit(EXIT_FAILURE);2144 }2145 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) {2146 psFree(md);2147 exit(EXIT_FAILURE);2148 }2149 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) {2150 psFree(md);2151 exit(EXIT_FAILURE);2152 }2153 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) {2154 psFree(md);2155 exit(EXIT_FAILURE);2156 }2157 psFree(md);2158 exit(EXIT_FAILURE);2159 }2160 2161 psFree(md);2162 }2163 2164 {2165 psMetadata *md;2166 detResidExpRow *object;2167 bool status;2168 2169 object = detResidExpRowAlloc(-64, -32, -64, "a string", 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, 64.64, "a string", true, -16);2170 if (!object) {2171 exit(EXIT_FAILURE);2172 }2173 2174 md = detResidExpMetadataFromObject(object);2175 if (!md) {2176 exit(EXIT_FAILURE);2177 }2178 2179 psFree(object);2180 2181 psFree(md);2182 exit(EXIT_FAILURE);2183 }2184 if (!psMetadataLookupS32(&status, md, "iteration") == -32) {2185 psFree(md);2186 exit(EXIT_FAILURE);2187 }2188 psFree(md);2189 exit(EXIT_FAILURE);2190 }2191 if (strncmp(psMetadataLookupPtr(&status, md, "recipe"), "a string", MAX_STRING_LENGTH)) {2192 psFree(md);2193 exit(EXIT_FAILURE);2194 }2195 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) {2196 psFree(md);2197 exit(EXIT_FAILURE);2198 }2199 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) {2200 psFree(md);2201 exit(EXIT_FAILURE);2202 }2203 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) {2204 psFree(md);2205 exit(EXIT_FAILURE);2206 }2207 if (!psMetadataLookupF64(&status, md, "bin_stdev") == 64.64) {2208 psFree(md);2209 exit(EXIT_FAILURE);2210 }2211 if (!psMetadataLookupF64(&status, md, "fringe_0") == 64.64) {2212 psFree(md);2213 exit(EXIT_FAILURE);2214 }2215 if (!psMetadataLookupF64(&status, md, "fringe_1") == 64.64) {2216 psFree(md);2217 exit(EXIT_FAILURE);2218 }2219 if (!psMetadataLookupF64(&status, md, "fringe_2") == 64.64) {2220 psFree(md);2221 exit(EXIT_FAILURE);2222 }2223 if (!psMetadataLookupF64(&status, md, "user_1") == 64.64) {2224 psFree(md);2225 exit(EXIT_FAILURE);2226 }2227 if (!psMetadataLookupF64(&status, md, "user_2") == 64.64) {2228 psFree(md);2229 exit(EXIT_FAILURE);2230 }2231 if (!psMetadataLookupF64(&status, md, "user_3") == 64.64) {2232 psFree(md);2233 exit(EXIT_FAILURE);2234 }2235 if (!psMetadataLookupF64(&status, md, "user_4") == 64.64) {2236 psFree(md);2237 exit(EXIT_FAILURE);2238 }2239 if (!psMetadataLookupF64(&status, md, "user_5") == 64.64) {2240 psFree(md);2241 exit(EXIT_FAILURE);2242 }2243 if (strncmp(psMetadataLookupPtr(&status, md, "path_base"), "a string", MAX_STRING_LENGTH)) {2244 psFree(md);2245 exit(EXIT_FAILURE);2246 }2247 if (!psMetadataLookupBool(&status, md, "accept") == true) {2248 psFree(md);2249 exit(EXIT_FAILURE);2250 }2251 psFree(md);2252 exit(EXIT_FAILURE);2253 }2254 2255 psFree(md);2256 }2257 2258 {2259 psMetadata *md;2260 detRunSummaryRow *object;2261 bool status;2262 2263 object = detRunSummaryRowAlloc(-64, -32, 64.64, 64.64, 64.64, true, -16);2264 if (!object) {2265 exit(EXIT_FAILURE);2266 }2267 2268 md = detRunSummaryMetadataFromObject(object);2269 if (!md) {2270 exit(EXIT_FAILURE);2271 }2272 2273 psFree(object);2274 2275 psFree(md);2276 exit(EXIT_FAILURE);2277 }2278 if (!psMetadataLookupS32(&status, md, "iteration") == -32) {2279 psFree(md);2280 exit(EXIT_FAILURE);2281 }2282 if (!psMetadataLookupF64(&status, md, "bg") == 64.64) {2283 psFree(md);2284 exit(EXIT_FAILURE);2285 }2286 if (!psMetadataLookupF64(&status, md, "bg_stdev") == 64.64) {2287 psFree(md);2288 exit(EXIT_FAILURE);2289 }2290 if (!psMetadataLookupF64(&status, md, "bg_mean_stdev") == 64.64) {2291 psFree(md);2292 exit(EXIT_FAILURE);2293 }2294 if (!psMetadataLookupBool(&status, md, "accept") == true) {2295 psFree(md);2296 exit(EXIT_FAILURE);2297 }2298 2728 psFree(md); 2299 2729 exit(EXIT_FAILURE); -
trunk/ippdb/tests/objectfrommetadata.c
r15420 r15421 10 10 { 11 11 psMetadata *md; 12 pzDataStoreRow *object; 13 14 md = psMetadataAlloc(); 15 if (!psMetadataAddStr(md, PS_LIST_TAIL, "camera", 0, NULL, "a string")) { 16 psFree(md); 17 exit(EXIT_FAILURE); 18 } 19 if (!psMetadataAddStr(md, PS_LIST_TAIL, "telescope", 0, NULL, "a string")) { 20 psFree(md); 21 exit(EXIT_FAILURE); 22 } 23 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 24 psFree(md); 25 exit(EXIT_FAILURE); 26 } 27 28 object = pzDataStoreObjectFromMetadata(md); 29 if (!object) { 30 psFree(md); 31 exit(EXIT_FAILURE); 32 } 33 34 psFree(md); 35 36 if (strncmp(object->camera, "a string", MAX_STRING_LENGTH)) { 37 psFree(object); 38 exit(EXIT_FAILURE); 39 } 40 if (strncmp(object->telescope, "a string", MAX_STRING_LENGTH)) { 41 psFree(object); 42 exit(EXIT_FAILURE); 43 } 44 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 45 psFree(object); 46 exit(EXIT_FAILURE); 47 } 48 49 psFree(object); 50 } 51 52 { 53 psMetadata *md; 12 54 summitExpRow *object; 13 55 … … 237 279 exit(EXIT_FAILURE); 238 280 } 239 psFree(md);240 exit(EXIT_FAILURE);241 }242 281 243 282 object = pzPendingImfileObjectFromMetadata(md); … … 269 308 exit(EXIT_FAILURE); 270 309 } 271 psFree(object);272 exit(EXIT_FAILURE);273 }274 310 275 311 psFree(object); … … 343 379 exit(EXIT_FAILURE); 344 380 } 345 psFree(md);346 exit(EXIT_FAILURE);347 }348 381 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 349 382 psFree(md); … … 379 412 exit(EXIT_FAILURE); 380 413 } 381 psFree(object);382 exit(EXIT_FAILURE);383 }384 414 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 385 415 psFree(object); … … 414 444 exit(EXIT_FAILURE); 415 445 } 416 if (!psMetadataAddS32(md, PS_LIST_TAIL, "imfiles", 0, NULL, -32)) {417 psFree(md);418 exit(EXIT_FAILURE);419 }420 446 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir", 0, NULL, "a string")) { 421 447 psFree(md); … … 426 452 exit(EXIT_FAILURE); 427 453 } 454 if (!psMetadataAddStr(md, PS_LIST_TAIL, "reduction", 0, NULL, "a string")) { 455 psFree(md); 456 exit(EXIT_FAILURE); 457 } 428 458 429 459 object = newExpObjectFromMetadata(md); … … 454 484 exit(EXIT_FAILURE); 455 485 } 456 if (!object->imfiles == -32) {457 psFree(object);458 exit(EXIT_FAILURE);459 }460 486 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 461 487 psFree(object); … … 466 492 exit(EXIT_FAILURE); 467 493 } 494 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) { 495 psFree(object); 496 exit(EXIT_FAILURE); 497 } 468 498 469 499 psFree(object); … … 541 571 exit(EXIT_FAILURE); 542 572 } 543 if (!psMetadataAddS32(md, PS_LIST_TAIL, "imfiles", 0, NULL, -32)) {544 psFree(md);545 exit(EXIT_FAILURE);546 }547 573 if (!psMetadataAddStr(md, PS_LIST_TAIL, "filelevel", 0, NULL, "a string")) { 548 574 psFree(md); … … 553 579 exit(EXIT_FAILURE); 554 580 } 581 if (!psMetadataAddStr(md, PS_LIST_TAIL, "reduction", 0, NULL, "a string")) { 582 psFree(md); 583 exit(EXIT_FAILURE); 584 } 555 585 if (!psMetadataAddStr(md, PS_LIST_TAIL, "filter", 0, NULL, "a string")) { 556 586 psFree(md); … … 671 701 exit(EXIT_FAILURE); 672 702 } 673 if (!object->imfiles == -32) {674 psFree(object);675 exit(EXIT_FAILURE);676 }677 703 if (strncmp(object->filelevel, "a string", MAX_STRING_LENGTH)) { 678 704 psFree(object); … … 683 709 exit(EXIT_FAILURE); 684 710 } 711 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) { 712 psFree(object); 713 exit(EXIT_FAILURE); 714 } 685 715 if (strncmp(object->filter, "a string", MAX_STRING_LENGTH)) { 686 716 psFree(object); … … 1068 1098 exit(EXIT_FAILURE); 1069 1099 } 1100 psFree(md); 1101 exit(EXIT_FAILURE); 1102 } 1070 1103 if (!psMetadataAddStr(md, PS_LIST_TAIL, "state", 0, NULL, "a string")) { 1071 1104 psFree(md); … … 1108 1141 exit(EXIT_FAILURE); 1109 1142 } 1143 psFree(object); 1144 exit(EXIT_FAILURE); 1145 } 1110 1146 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 1111 1147 psFree(object); … … 1142 1178 { 1143 1179 psMetadata *md; 1144 chip InputImfileRow *object;1180 chipProcessedImfileRow *object; 1145 1181 1146 1182 md = psMetadataAlloc(); … … 1155 1191 exit(EXIT_FAILURE); 1156 1192 } 1157 1158 object = chipInputImfileObjectFromMetadata(md); 1193 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 1194 psFree(md); 1195 exit(EXIT_FAILURE); 1196 } 1197 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bg", 0, NULL, 32.32)) { 1198 psFree(md); 1199 exit(EXIT_FAILURE); 1200 } 1201 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 32.32)) { 1202 psFree(md); 1203 exit(EXIT_FAILURE); 1204 } 1205 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 32.32)) { 1206 psFree(md); 1207 exit(EXIT_FAILURE); 1208 } 1209 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bias", 0, NULL, 32.32)) { 1210 psFree(md); 1211 exit(EXIT_FAILURE); 1212 } 1213 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bias_stdev", 0, NULL, 32.32)) { 1214 psFree(md); 1215 exit(EXIT_FAILURE); 1216 } 1217 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fringe_0", 0, NULL, 32.32)) { 1218 psFree(md); 1219 exit(EXIT_FAILURE); 1220 } 1221 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fringe_1", 0, NULL, 32.32)) { 1222 psFree(md); 1223 exit(EXIT_FAILURE); 1224 } 1225 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fringe_2", 0, NULL, 32.32)) { 1226 psFree(md); 1227 exit(EXIT_FAILURE); 1228 } 1229 if (!psMetadataAddF32(md, PS_LIST_TAIL, "sigma_ra", 0, NULL, 32.32)) { 1230 psFree(md); 1231 exit(EXIT_FAILURE); 1232 } 1233 if (!psMetadataAddF32(md, PS_LIST_TAIL, "sigma_dec", 0, NULL, 32.32)) { 1234 psFree(md); 1235 exit(EXIT_FAILURE); 1236 } 1237 if (!psMetadataAddF32(md, PS_LIST_TAIL, "ap_resid", 0, NULL, 32.32)) { 1238 psFree(md); 1239 exit(EXIT_FAILURE); 1240 } 1241 if (!psMetadataAddF32(md, PS_LIST_TAIL, "ap_resid_stdev", 0, NULL, 32.32)) { 1242 psFree(md); 1243 exit(EXIT_FAILURE); 1244 } 1245 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fwhm", 0, NULL, 32.32)) { 1246 psFree(md); 1247 exit(EXIT_FAILURE); 1248 } 1249 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fwhm_range", 0, NULL, 32.32)) { 1250 psFree(md); 1251 exit(EXIT_FAILURE); 1252 } 1253 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_stars", 0, NULL, -32)) { 1254 psFree(md); 1255 exit(EXIT_FAILURE); 1256 } 1257 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_extended", 0, NULL, -32)) { 1258 psFree(md); 1259 exit(EXIT_FAILURE); 1260 } 1261 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_cr", 0, NULL, -32)) { 1262 psFree(md); 1263 exit(EXIT_FAILURE); 1264 } 1265 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_astrom", 0, NULL, -32)) { 1266 psFree(md); 1267 exit(EXIT_FAILURE); 1268 } 1269 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 1270 psFree(md); 1271 exit(EXIT_FAILURE); 1272 } 1273 psFree(md); 1274 exit(EXIT_FAILURE); 1275 } 1276 1277 object = chipProcessedImfileObjectFromMetadata(md); 1159 1278 if (!object) { 1160 1279 psFree(md); … … 1174 1293 exit(EXIT_FAILURE); 1175 1294 } 1176 1177 psFree(object); 1178 } 1179 1180 { 1181 psMetadata *md; 1182 chipProcessedImfileRow *object; 1183 1184 md = psMetadataAlloc(); 1295 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 1296 psFree(object); 1297 exit(EXIT_FAILURE); 1298 } 1299 if (!object->bg == 32.32) { 1300 psFree(object); 1301 exit(EXIT_FAILURE); 1302 } 1303 if (!object->bg_stdev == 32.32) { 1304 psFree(object); 1305 exit(EXIT_FAILURE); 1306 } 1307 if (!object->bg_mean_stdev == 32.32) { 1308 psFree(object); 1309 exit(EXIT_FAILURE); 1310 } 1311 if (!object->bias == 32.32) { 1312 psFree(object); 1313 exit(EXIT_FAILURE); 1314 } 1315 if (!object->bias_stdev == 32.32) { 1316 psFree(object); 1317 exit(EXIT_FAILURE); 1318 } 1319 if (!object->fringe_0 == 32.32) { 1320 psFree(object); 1321 exit(EXIT_FAILURE); 1322 } 1323 if (!object->fringe_1 == 32.32) { 1324 psFree(object); 1325 exit(EXIT_FAILURE); 1326 } 1327 if (!object->fringe_2 == 32.32) { 1328 psFree(object); 1329 exit(EXIT_FAILURE); 1330 } 1331 if (!object->sigma_ra == 32.32) { 1332 psFree(object); 1333 exit(EXIT_FAILURE); 1334 } 1335 if (!object->sigma_dec == 32.32) { 1336 psFree(object); 1337 exit(EXIT_FAILURE); 1338 } 1339 if (!object->ap_resid == 32.32) { 1340 psFree(object); 1341 exit(EXIT_FAILURE); 1342 } 1343 if (!object->ap_resid_stdev == 32.32) { 1344 psFree(object); 1345 exit(EXIT_FAILURE); 1346 } 1347 if (!object->fwhm == 32.32) { 1348 psFree(object); 1349 exit(EXIT_FAILURE); 1350 } 1351 if (!object->fwhm_range == 32.32) { 1352 psFree(object); 1353 exit(EXIT_FAILURE); 1354 } 1355 if (!object->n_stars == -32) { 1356 psFree(object); 1357 exit(EXIT_FAILURE); 1358 } 1359 if (!object->n_extended == -32) { 1360 psFree(object); 1361 exit(EXIT_FAILURE); 1362 } 1363 if (!object->n_cr == -32) { 1364 psFree(object); 1365 exit(EXIT_FAILURE); 1366 } 1367 if (!object->n_astrom == -32) { 1368 psFree(object); 1369 exit(EXIT_FAILURE); 1370 } 1371 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1372 psFree(object); 1373 exit(EXIT_FAILURE); 1374 } 1375 psFree(object); 1376 exit(EXIT_FAILURE); 1377 } 1378 1379 psFree(object); 1380 } 1381 1382 { 1383 psMetadata *md; 1384 chipMaskRow *object; 1385 1386 md = psMetadataAlloc(); 1387 if (!psMetadataAddStr(md, PS_LIST_TAIL, "label", 0, NULL, "a string")) { 1388 psFree(md); 1389 exit(EXIT_FAILURE); 1390 } 1391 1392 object = chipMaskObjectFromMetadata(md); 1393 if (!object) { 1394 psFree(md); 1395 exit(EXIT_FAILURE); 1396 } 1397 1398 psFree(md); 1399 1400 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 1401 psFree(object); 1402 exit(EXIT_FAILURE); 1403 } 1404 1405 psFree(object); 1406 } 1407 1408 { 1409 psMetadata *md; 1410 camRunRow *object; 1411 1412 md = psMetadataAlloc(); 1413 psFree(md); 1414 exit(EXIT_FAILURE); 1415 } 1416 psFree(md); 1417 exit(EXIT_FAILURE); 1418 } 1419 if (!psMetadataAddStr(md, PS_LIST_TAIL, "state", 0, NULL, "a string")) { 1420 psFree(md); 1421 exit(EXIT_FAILURE); 1422 } 1423 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir", 0, NULL, "a string")) { 1424 psFree(md); 1425 exit(EXIT_FAILURE); 1426 } 1427 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir_state", 0, NULL, "a string")) { 1428 psFree(md); 1429 exit(EXIT_FAILURE); 1430 } 1431 if (!psMetadataAddStr(md, PS_LIST_TAIL, "label", 0, NULL, "a string")) { 1432 psFree(md); 1433 exit(EXIT_FAILURE); 1434 } 1435 if (!psMetadataAddStr(md, PS_LIST_TAIL, "reduction", 0, NULL, "a string")) { 1436 psFree(md); 1437 exit(EXIT_FAILURE); 1438 } 1439 if (!psMetadataAddStr(md, PS_LIST_TAIL, "expgroup", 0, NULL, "a string")) { 1440 psFree(md); 1441 exit(EXIT_FAILURE); 1442 } 1443 if (!psMetadataAddStr(md, PS_LIST_TAIL, "dvodb", 0, NULL, "a string")) { 1444 psFree(md); 1445 exit(EXIT_FAILURE); 1446 } 1447 1448 object = camRunObjectFromMetadata(md); 1449 if (!object) { 1450 psFree(md); 1451 exit(EXIT_FAILURE); 1452 } 1453 1454 psFree(md); 1455 1456 psFree(object); 1457 exit(EXIT_FAILURE); 1458 } 1459 psFree(object); 1460 exit(EXIT_FAILURE); 1461 } 1462 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 1463 psFree(object); 1464 exit(EXIT_FAILURE); 1465 } 1466 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 1467 psFree(object); 1468 exit(EXIT_FAILURE); 1469 } 1470 if (strncmp(object->workdir_state, "a string", MAX_STRING_LENGTH)) { 1471 psFree(object); 1472 exit(EXIT_FAILURE); 1473 } 1474 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 1475 psFree(object); 1476 exit(EXIT_FAILURE); 1477 } 1478 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) { 1479 psFree(object); 1480 exit(EXIT_FAILURE); 1481 } 1482 if (strncmp(object->expgroup, "a string", MAX_STRING_LENGTH)) { 1483 psFree(object); 1484 exit(EXIT_FAILURE); 1485 } 1486 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 1487 psFree(object); 1488 exit(EXIT_FAILURE); 1489 } 1490 1491 psFree(object); 1492 } 1493 1494 { 1495 psMetadata *md; 1496 camProcessedExpRow *object; 1497 1498 md = psMetadataAlloc(); 1499 psFree(md); 1500 exit(EXIT_FAILURE); 1501 } 1502 psFree(md); 1503 exit(EXIT_FAILURE); 1504 } 1505 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 1506 psFree(md); 1507 exit(EXIT_FAILURE); 1508 } 1509 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bg", 0, NULL, 32.32)) { 1510 psFree(md); 1511 exit(EXIT_FAILURE); 1512 } 1513 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 32.32)) { 1514 psFree(md); 1515 exit(EXIT_FAILURE); 1516 } 1517 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 32.32)) { 1518 psFree(md); 1519 exit(EXIT_FAILURE); 1520 } 1521 if (!psMetadataAddF32(md, PS_LIST_TAIL, "sigma_ra", 0, NULL, 32.32)) { 1522 psFree(md); 1523 exit(EXIT_FAILURE); 1524 } 1525 if (!psMetadataAddF32(md, PS_LIST_TAIL, "sigma_dec", 0, NULL, 32.32)) { 1526 psFree(md); 1527 exit(EXIT_FAILURE); 1528 } 1529 if (!psMetadataAddF32(md, PS_LIST_TAIL, "zp_mean", 0, NULL, 32.32)) { 1530 psFree(md); 1531 exit(EXIT_FAILURE); 1532 } 1533 if (!psMetadataAddF32(md, PS_LIST_TAIL, "zp_stdev", 0, NULL, 32.32)) { 1534 psFree(md); 1535 exit(EXIT_FAILURE); 1536 } 1537 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fwhm", 0, NULL, 32.32)) { 1538 psFree(md); 1539 exit(EXIT_FAILURE); 1540 } 1541 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fwhm_range", 0, NULL, 32.32)) { 1542 psFree(md); 1543 exit(EXIT_FAILURE); 1544 } 1545 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_stars", 0, NULL, -32)) { 1546 psFree(md); 1547 exit(EXIT_FAILURE); 1548 } 1549 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_extended", 0, NULL, -32)) { 1550 psFree(md); 1551 exit(EXIT_FAILURE); 1552 } 1553 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_cr", 0, NULL, -32)) { 1554 psFree(md); 1555 exit(EXIT_FAILURE); 1556 } 1557 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_astrom", 0, NULL, -32)) { 1558 psFree(md); 1559 exit(EXIT_FAILURE); 1560 } 1561 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 1562 psFree(md); 1563 exit(EXIT_FAILURE); 1564 } 1565 psFree(md); 1566 exit(EXIT_FAILURE); 1567 } 1568 1569 object = camProcessedExpObjectFromMetadata(md); 1570 if (!object) { 1571 psFree(md); 1572 exit(EXIT_FAILURE); 1573 } 1574 1575 psFree(md); 1576 1577 psFree(object); 1578 exit(EXIT_FAILURE); 1579 } 1580 psFree(object); 1581 exit(EXIT_FAILURE); 1582 } 1583 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 1584 psFree(object); 1585 exit(EXIT_FAILURE); 1586 } 1587 if (!object->bg == 32.32) { 1588 psFree(object); 1589 exit(EXIT_FAILURE); 1590 } 1591 if (!object->bg_stdev == 32.32) { 1592 psFree(object); 1593 exit(EXIT_FAILURE); 1594 } 1595 if (!object->bg_mean_stdev == 32.32) { 1596 psFree(object); 1597 exit(EXIT_FAILURE); 1598 } 1599 if (!object->sigma_ra == 32.32) { 1600 psFree(object); 1601 exit(EXIT_FAILURE); 1602 } 1603 if (!object->sigma_dec == 32.32) { 1604 psFree(object); 1605 exit(EXIT_FAILURE); 1606 } 1607 if (!object->zp_mean == 32.32) { 1608 psFree(object); 1609 exit(EXIT_FAILURE); 1610 } 1611 if (!object->zp_stdev == 32.32) { 1612 psFree(object); 1613 exit(EXIT_FAILURE); 1614 } 1615 if (!object->fwhm == 32.32) { 1616 psFree(object); 1617 exit(EXIT_FAILURE); 1618 } 1619 if (!object->fwhm_range == 32.32) { 1620 psFree(object); 1621 exit(EXIT_FAILURE); 1622 } 1623 if (!object->n_stars == -32) { 1624 psFree(object); 1625 exit(EXIT_FAILURE); 1626 } 1627 if (!object->n_extended == -32) { 1628 psFree(object); 1629 exit(EXIT_FAILURE); 1630 } 1631 if (!object->n_cr == -32) { 1632 psFree(object); 1633 exit(EXIT_FAILURE); 1634 } 1635 if (!object->n_astrom == -32) { 1636 psFree(object); 1637 exit(EXIT_FAILURE); 1638 } 1639 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1640 psFree(object); 1641 exit(EXIT_FAILURE); 1642 } 1643 psFree(object); 1644 exit(EXIT_FAILURE); 1645 } 1646 1647 psFree(object); 1648 } 1649 1650 { 1651 psMetadata *md; 1652 camMaskRow *object; 1653 1654 md = psMetadataAlloc(); 1655 if (!psMetadataAddStr(md, PS_LIST_TAIL, "label", 0, NULL, "a string")) { 1656 psFree(md); 1657 exit(EXIT_FAILURE); 1658 } 1659 1660 object = camMaskObjectFromMetadata(md); 1661 if (!object) { 1662 psFree(md); 1663 exit(EXIT_FAILURE); 1664 } 1665 1666 psFree(md); 1667 1668 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 1669 psFree(object); 1670 exit(EXIT_FAILURE); 1671 } 1672 1673 psFree(object); 1674 } 1675 1676 { 1677 psMetadata *md; 1678 warpRunRow *object; 1679 1680 md = psMetadataAlloc(); 1681 psFree(md); 1682 exit(EXIT_FAILURE); 1683 } 1684 if (!psMetadataAddStr(md, PS_LIST_TAIL, "mode", 0, NULL, "a string")) { 1685 psFree(md); 1686 exit(EXIT_FAILURE); 1687 } 1688 if (!psMetadataAddStr(md, PS_LIST_TAIL, "state", 0, NULL, "a string")) { 1689 psFree(md); 1690 exit(EXIT_FAILURE); 1691 } 1692 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir", 0, NULL, "a string")) { 1693 psFree(md); 1694 exit(EXIT_FAILURE); 1695 } 1696 if (!psMetadataAddStr(md, PS_LIST_TAIL, "dvodb", 0, NULL, "a string")) { 1697 psFree(md); 1698 exit(EXIT_FAILURE); 1699 } 1700 psFree(md); 1701 exit(EXIT_FAILURE); 1702 } 1703 1704 object = warpRunObjectFromMetadata(md); 1705 if (!object) { 1706 psFree(md); 1707 exit(EXIT_FAILURE); 1708 } 1709 1710 psFree(md); 1711 1712 psFree(object); 1713 exit(EXIT_FAILURE); 1714 } 1715 if (strncmp(object->mode, "a string", MAX_STRING_LENGTH)) { 1716 psFree(object); 1717 exit(EXIT_FAILURE); 1718 } 1719 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 1720 psFree(object); 1721 exit(EXIT_FAILURE); 1722 } 1723 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 1724 psFree(object); 1725 exit(EXIT_FAILURE); 1726 } 1727 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 1728 psFree(object); 1729 exit(EXIT_FAILURE); 1730 } 1731 psFree(object); 1732 exit(EXIT_FAILURE); 1733 } 1734 1735 psFree(object); 1736 } 1737 1738 { 1739 psMetadata *md; 1740 warpInputExpRow *object; 1741 1742 md = psMetadataAlloc(); 1743 psFree(md); 1744 exit(EXIT_FAILURE); 1745 } 1746 psFree(md); 1747 exit(EXIT_FAILURE); 1748 } 1749 if (!psMetadataAdd(md, PS_LIST_TAIL, "magiced", PS_DATA_BOOL, NULL, true)) { 1750 psFree(md); 1751 exit(EXIT_FAILURE); 1752 } 1753 1754 object = warpInputExpObjectFromMetadata(md); 1755 if (!object) { 1756 psFree(md); 1757 exit(EXIT_FAILURE); 1758 } 1759 1760 psFree(md); 1761 1762 psFree(object); 1763 exit(EXIT_FAILURE); 1764 } 1765 psFree(object); 1766 exit(EXIT_FAILURE); 1767 } 1768 if (!object->magiced == true) { 1769 psFree(object); 1770 exit(EXIT_FAILURE); 1771 } 1772 1773 psFree(object); 1774 } 1775 1776 { 1777 psMetadata *md; 1778 warpSkyCellMapRow *object; 1779 1780 md = psMetadataAlloc(); 1781 psFree(md); 1782 exit(EXIT_FAILURE); 1783 } 1784 if (!psMetadataAddStr(md, PS_LIST_TAIL, "skycell_id", 0, NULL, "a string")) { 1785 psFree(md); 1786 exit(EXIT_FAILURE); 1787 } 1788 if (!psMetadataAddStr(md, PS_LIST_TAIL, "tess_id", 0, NULL, "a string")) { 1185 1789 psFree(md); 1186 1790 exit(EXIT_FAILURE); … … 1193 1797 exit(EXIT_FAILURE); 1194 1798 } 1799 psFree(md); 1800 exit(EXIT_FAILURE); 1801 } 1802 1803 object = warpSkyCellMapObjectFromMetadata(md); 1804 if (!object) { 1805 psFree(md); 1806 exit(EXIT_FAILURE); 1807 } 1808 1809 psFree(md); 1810 1811 psFree(object); 1812 exit(EXIT_FAILURE); 1813 } 1814 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 1815 psFree(object); 1816 exit(EXIT_FAILURE); 1817 } 1818 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 1819 psFree(object); 1820 exit(EXIT_FAILURE); 1821 } 1822 psFree(object); 1823 exit(EXIT_FAILURE); 1824 } 1825 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 1826 psFree(object); 1827 exit(EXIT_FAILURE); 1828 } 1829 psFree(object); 1830 exit(EXIT_FAILURE); 1831 } 1832 1833 psFree(object); 1834 } 1835 1836 { 1837 psMetadata *md; 1838 warpSkyfileRow *object; 1839 1840 md = psMetadataAlloc(); 1841 psFree(md); 1842 exit(EXIT_FAILURE); 1843 } 1844 if (!psMetadataAddStr(md, PS_LIST_TAIL, "skycell_id", 0, NULL, "a string")) { 1845 psFree(md); 1846 exit(EXIT_FAILURE); 1847 } 1848 if (!psMetadataAddStr(md, PS_LIST_TAIL, "tess_id", 0, NULL, "a string")) { 1849 psFree(md); 1850 exit(EXIT_FAILURE); 1851 } 1195 1852 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 1196 1853 psFree(md); 1197 1854 exit(EXIT_FAILURE); 1198 1855 } 1199 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bg", 0, NULL, 32.32)) {1200 psFree(md);1201 exit(EXIT_FAILURE);1202 }1203 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 32.32)) {1204 psFree(md);1205 exit(EXIT_FAILURE);1206 }1207 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 32.32)) {1208 psFree(md);1209 exit(EXIT_FAILURE);1210 }1211 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bias", 0, NULL, 32.32)) {1212 psFree(md);1213 exit(EXIT_FAILURE);1214 }1215 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bias_stdev", 0, NULL, 32.32)) {1216 psFree(md);1217 exit(EXIT_FAILURE);1218 }1219 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fringe_0", 0, NULL, 32.32)) {1220 psFree(md);1221 exit(EXIT_FAILURE);1222 }1223 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fringe_1", 0, NULL, 32.32)) {1224 psFree(md);1225 exit(EXIT_FAILURE);1226 }1227 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fringe_2", 0, NULL, 32.32)) {1228 psFree(md);1229 exit(EXIT_FAILURE);1230 }1231 if (!psMetadataAddF32(md, PS_LIST_TAIL, "sigma_ra", 0, NULL, 32.32)) {1232 psFree(md);1233 exit(EXIT_FAILURE);1234 }1235 if (!psMetadataAddF32(md, PS_LIST_TAIL, "sigma_dec", 0, NULL, 32.32)) {1236 psFree(md);1237 exit(EXIT_FAILURE);1238 }1239 if (!psMetadataAddF32(md, PS_LIST_TAIL, "ap_resid", 0, NULL, 32.32)) {1240 psFree(md);1241 exit(EXIT_FAILURE);1242 }1243 if (!psMetadataAddF32(md, PS_LIST_TAIL, "ap_resid_stdev", 0, NULL, 32.32)) {1244 psFree(md);1245 exit(EXIT_FAILURE);1246 }1247 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fwhm", 0, NULL, 32.32)) {1248 psFree(md);1249 exit(EXIT_FAILURE);1250 }1251 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fwhm_range", 0, NULL, 32.32)) {1252 psFree(md);1253 exit(EXIT_FAILURE);1254 }1255 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_stars", 0, NULL, -32)) {1256 psFree(md);1257 exit(EXIT_FAILURE);1258 }1259 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_extended", 0, NULL, -32)) {1260 psFree(md);1261 exit(EXIT_FAILURE);1262 }1263 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_cr", 0, NULL, -32)) {1264 psFree(md);1265 exit(EXIT_FAILURE);1266 }1267 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_astrom", 0, NULL, -32)) {1268 psFree(md);1269 exit(EXIT_FAILURE);1270 }1271 1856 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 1272 1857 psFree(md); 1273 1858 exit(EXIT_FAILURE); 1274 1859 } 1275 psFree(md); 1276 exit(EXIT_FAILURE); 1277 } 1278 1279 object = chipProcessedImfileObjectFromMetadata(md); 1860 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 1861 psFree(md); 1862 exit(EXIT_FAILURE); 1863 } 1864 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 1865 psFree(md); 1866 exit(EXIT_FAILURE); 1867 } 1868 if (!psMetadataAddF64(md, PS_LIST_TAIL, "good_frac", 0, NULL, 64.64)) { 1869 psFree(md); 1870 exit(EXIT_FAILURE); 1871 } 1872 psFree(md); 1873 exit(EXIT_FAILURE); 1874 } 1875 1876 object = warpSkyfileObjectFromMetadata(md); 1877 if (!object) { 1878 psFree(md); 1879 exit(EXIT_FAILURE); 1880 } 1881 1882 psFree(md); 1883 1884 psFree(object); 1885 exit(EXIT_FAILURE); 1886 } 1887 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 1888 psFree(object); 1889 exit(EXIT_FAILURE); 1890 } 1891 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 1892 psFree(object); 1893 exit(EXIT_FAILURE); 1894 } 1895 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 1896 psFree(object); 1897 exit(EXIT_FAILURE); 1898 } 1899 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1900 psFree(object); 1901 exit(EXIT_FAILURE); 1902 } 1903 if (!object->bg == 64.64) { 1904 psFree(object); 1905 exit(EXIT_FAILURE); 1906 } 1907 if (!object->bg_stdev == 64.64) { 1908 psFree(object); 1909 exit(EXIT_FAILURE); 1910 } 1911 if (!object->good_frac == 64.64) { 1912 psFree(object); 1913 exit(EXIT_FAILURE); 1914 } 1915 psFree(object); 1916 exit(EXIT_FAILURE); 1917 } 1918 1919 psFree(object); 1920 } 1921 1922 { 1923 psMetadata *md; 1924 diffRunRow *object; 1925 1926 md = psMetadataAlloc(); 1927 psFree(md); 1928 exit(EXIT_FAILURE); 1929 } 1930 if (!psMetadataAddStr(md, PS_LIST_TAIL, "state", 0, NULL, "a string")) { 1931 psFree(md); 1932 exit(EXIT_FAILURE); 1933 } 1934 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir", 0, NULL, "a string")) { 1935 psFree(md); 1936 exit(EXIT_FAILURE); 1937 } 1938 if (!psMetadataAddStr(md, PS_LIST_TAIL, "dvodb", 0, NULL, "a string")) { 1939 psFree(md); 1940 exit(EXIT_FAILURE); 1941 } 1942 psFree(md); 1943 exit(EXIT_FAILURE); 1944 } 1945 if (!psMetadataAddStr(md, PS_LIST_TAIL, "skycell_id", 0, NULL, "a string")) { 1946 psFree(md); 1947 exit(EXIT_FAILURE); 1948 } 1949 if (!psMetadataAddStr(md, PS_LIST_TAIL, "tess_id", 0, NULL, "a string")) { 1950 psFree(md); 1951 exit(EXIT_FAILURE); 1952 } 1953 1954 object = diffRunObjectFromMetadata(md); 1955 if (!object) { 1956 psFree(md); 1957 exit(EXIT_FAILURE); 1958 } 1959 1960 psFree(md); 1961 1962 psFree(object); 1963 exit(EXIT_FAILURE); 1964 } 1965 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 1966 psFree(object); 1967 exit(EXIT_FAILURE); 1968 } 1969 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 1970 psFree(object); 1971 exit(EXIT_FAILURE); 1972 } 1973 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 1974 psFree(object); 1975 exit(EXIT_FAILURE); 1976 } 1977 psFree(object); 1978 exit(EXIT_FAILURE); 1979 } 1980 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 1981 psFree(object); 1982 exit(EXIT_FAILURE); 1983 } 1984 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 1985 psFree(object); 1986 exit(EXIT_FAILURE); 1987 } 1988 1989 psFree(object); 1990 } 1991 1992 { 1993 psMetadata *md; 1994 diffInputSkyfileRow *object; 1995 1996 md = psMetadataAlloc(); 1997 psFree(md); 1998 exit(EXIT_FAILURE); 1999 } 2000 if (!psMetadataAdd(md, PS_LIST_TAIL, "template", PS_DATA_BOOL, NULL, true)) { 2001 psFree(md); 2002 exit(EXIT_FAILURE); 2003 } 2004 psFree(md); 2005 exit(EXIT_FAILURE); 2006 } 2007 psFree(md); 2008 exit(EXIT_FAILURE); 2009 } 2010 if (!psMetadataAddStr(md, PS_LIST_TAIL, "skycell_id", 0, NULL, "a string")) { 2011 psFree(md); 2012 exit(EXIT_FAILURE); 2013 } 2014 if (!psMetadataAddStr(md, PS_LIST_TAIL, "tess_id", 0, NULL, "a string")) { 2015 psFree(md); 2016 exit(EXIT_FAILURE); 2017 } 2018 if (!psMetadataAddStr(md, PS_LIST_TAIL, "kind", 0, NULL, "a string")) { 2019 psFree(md); 2020 exit(EXIT_FAILURE); 2021 } 2022 2023 object = diffInputSkyfileObjectFromMetadata(md); 2024 if (!object) { 2025 psFree(md); 2026 exit(EXIT_FAILURE); 2027 } 2028 2029 psFree(md); 2030 2031 psFree(object); 2032 exit(EXIT_FAILURE); 2033 } 2034 if (!object->template == true) { 2035 psFree(object); 2036 exit(EXIT_FAILURE); 2037 } 2038 psFree(object); 2039 exit(EXIT_FAILURE); 2040 } 2041 psFree(object); 2042 exit(EXIT_FAILURE); 2043 } 2044 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 2045 psFree(object); 2046 exit(EXIT_FAILURE); 2047 } 2048 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 2049 psFree(object); 2050 exit(EXIT_FAILURE); 2051 } 2052 if (strncmp(object->kind, "a string", MAX_STRING_LENGTH)) { 2053 psFree(object); 2054 exit(EXIT_FAILURE); 2055 } 2056 2057 psFree(object); 2058 } 2059 2060 { 2061 psMetadata *md; 2062 diffSkyfileRow *object; 2063 2064 md = psMetadataAlloc(); 2065 psFree(md); 2066 exit(EXIT_FAILURE); 2067 } 2068 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 2069 psFree(md); 2070 exit(EXIT_FAILURE); 2071 } 2072 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 2073 psFree(md); 2074 exit(EXIT_FAILURE); 2075 } 2076 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 2077 psFree(md); 2078 exit(EXIT_FAILURE); 2079 } 2080 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 2081 psFree(md); 2082 exit(EXIT_FAILURE); 2083 } 2084 if (!psMetadataAddF64(md, PS_LIST_TAIL, "good_frac", 0, NULL, 64.64)) { 2085 psFree(md); 2086 exit(EXIT_FAILURE); 2087 } 2088 psFree(md); 2089 exit(EXIT_FAILURE); 2090 } 2091 2092 object = diffSkyfileObjectFromMetadata(md); 2093 if (!object) { 2094 psFree(md); 2095 exit(EXIT_FAILURE); 2096 } 2097 2098 psFree(md); 2099 2100 psFree(object); 2101 exit(EXIT_FAILURE); 2102 } 2103 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 2104 psFree(object); 2105 exit(EXIT_FAILURE); 2106 } 2107 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 2108 psFree(object); 2109 exit(EXIT_FAILURE); 2110 } 2111 if (!object->bg == 64.64) { 2112 psFree(object); 2113 exit(EXIT_FAILURE); 2114 } 2115 if (!object->bg_stdev == 64.64) { 2116 psFree(object); 2117 exit(EXIT_FAILURE); 2118 } 2119 if (!object->good_frac == 64.64) { 2120 psFree(object); 2121 exit(EXIT_FAILURE); 2122 } 2123 psFree(object); 2124 exit(EXIT_FAILURE); 2125 } 2126 2127 psFree(object); 2128 } 2129 2130 { 2131 psMetadata *md; 2132 stackRunRow *object; 2133 2134 md = psMetadataAlloc(); 2135 psFree(md); 2136 exit(EXIT_FAILURE); 2137 } 2138 if (!psMetadataAddStr(md, PS_LIST_TAIL, "state", 0, NULL, "a string")) { 2139 psFree(md); 2140 exit(EXIT_FAILURE); 2141 } 2142 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir", 0, NULL, "a string")) { 2143 psFree(md); 2144 exit(EXIT_FAILURE); 2145 } 2146 if (!psMetadataAddStr(md, PS_LIST_TAIL, "dvodb", 0, NULL, "a string")) { 2147 psFree(md); 2148 exit(EXIT_FAILURE); 2149 } 2150 psFree(md); 2151 exit(EXIT_FAILURE); 2152 } 2153 if (!psMetadataAddStr(md, PS_LIST_TAIL, "skycell_id", 0, NULL, "a string")) { 2154 psFree(md); 2155 exit(EXIT_FAILURE); 2156 } 2157 if (!psMetadataAddStr(md, PS_LIST_TAIL, "tess_id", 0, NULL, "a string")) { 2158 psFree(md); 2159 exit(EXIT_FAILURE); 2160 } 2161 2162 object = stackRunObjectFromMetadata(md); 2163 if (!object) { 2164 psFree(md); 2165 exit(EXIT_FAILURE); 2166 } 2167 2168 psFree(md); 2169 2170 psFree(object); 2171 exit(EXIT_FAILURE); 2172 } 2173 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 2174 psFree(object); 2175 exit(EXIT_FAILURE); 2176 } 2177 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 2178 psFree(object); 2179 exit(EXIT_FAILURE); 2180 } 2181 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 2182 psFree(object); 2183 exit(EXIT_FAILURE); 2184 } 2185 psFree(object); 2186 exit(EXIT_FAILURE); 2187 } 2188 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 2189 psFree(object); 2190 exit(EXIT_FAILURE); 2191 } 2192 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 2193 psFree(object); 2194 exit(EXIT_FAILURE); 2195 } 2196 2197 psFree(object); 2198 } 2199 2200 { 2201 psMetadata *md; 2202 stackInputSkyfileRow *object; 2203 2204 md = psMetadataAlloc(); 2205 psFree(md); 2206 exit(EXIT_FAILURE); 2207 } 2208 psFree(md); 2209 exit(EXIT_FAILURE); 2210 } 2211 2212 object = stackInputSkyfileObjectFromMetadata(md); 2213 if (!object) { 2214 psFree(md); 2215 exit(EXIT_FAILURE); 2216 } 2217 2218 psFree(md); 2219 2220 psFree(object); 2221 exit(EXIT_FAILURE); 2222 } 2223 psFree(object); 2224 exit(EXIT_FAILURE); 2225 } 2226 2227 psFree(object); 2228 } 2229 2230 { 2231 psMetadata *md; 2232 stackSumSkyfileRow *object; 2233 2234 md = psMetadataAlloc(); 2235 psFree(md); 2236 exit(EXIT_FAILURE); 2237 } 2238 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 2239 psFree(md); 2240 exit(EXIT_FAILURE); 2241 } 2242 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 2243 psFree(md); 2244 exit(EXIT_FAILURE); 2245 } 2246 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 2247 psFree(md); 2248 exit(EXIT_FAILURE); 2249 } 2250 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 2251 psFree(md); 2252 exit(EXIT_FAILURE); 2253 } 2254 if (!psMetadataAddF64(md, PS_LIST_TAIL, "good_frac", 0, NULL, 64.64)) { 2255 psFree(md); 2256 exit(EXIT_FAILURE); 2257 } 2258 psFree(md); 2259 exit(EXIT_FAILURE); 2260 } 2261 2262 object = stackSumSkyfileObjectFromMetadata(md); 2263 if (!object) { 2264 psFree(md); 2265 exit(EXIT_FAILURE); 2266 } 2267 2268 psFree(md); 2269 2270 psFree(object); 2271 exit(EXIT_FAILURE); 2272 } 2273 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 2274 psFree(object); 2275 exit(EXIT_FAILURE); 2276 } 2277 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 2278 psFree(object); 2279 exit(EXIT_FAILURE); 2280 } 2281 if (!object->bg == 64.64) { 2282 psFree(object); 2283 exit(EXIT_FAILURE); 2284 } 2285 if (!object->bg_stdev == 64.64) { 2286 psFree(object); 2287 exit(EXIT_FAILURE); 2288 } 2289 if (!object->good_frac == 64.64) { 2290 psFree(object); 2291 exit(EXIT_FAILURE); 2292 } 2293 psFree(object); 2294 exit(EXIT_FAILURE); 2295 } 2296 2297 psFree(object); 2298 } 2299 2300 { 2301 psMetadata *md; 2302 detRunRow *object; 2303 2304 md = psMetadataAlloc(); 2305 psFree(md); 2306 exit(EXIT_FAILURE); 2307 } 2308 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) { 2309 psFree(md); 2310 exit(EXIT_FAILURE); 2311 } 2312 if (!psMetadataAddStr(md, PS_LIST_TAIL, "det_type", 0, NULL, "a string")) { 2313 psFree(md); 2314 exit(EXIT_FAILURE); 2315 } 2316 if (!psMetadataAddStr(md, PS_LIST_TAIL, "mode", 0, NULL, "a string")) { 2317 psFree(md); 2318 exit(EXIT_FAILURE); 2319 } 2320 if (!psMetadataAddStr(md, PS_LIST_TAIL, "state", 0, NULL, "a string")) { 2321 psFree(md); 2322 exit(EXIT_FAILURE); 2323 } 2324 if (!psMetadataAddStr(md, PS_LIST_TAIL, "filelevel", 0, NULL, "a string")) { 2325 psFree(md); 2326 exit(EXIT_FAILURE); 2327 } 2328 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir", 0, NULL, "a string")) { 2329 psFree(md); 2330 exit(EXIT_FAILURE); 2331 } 2332 if (!psMetadataAddStr(md, PS_LIST_TAIL, "camera", 0, NULL, "a string")) { 2333 psFree(md); 2334 exit(EXIT_FAILURE); 2335 } 2336 if (!psMetadataAddStr(md, PS_LIST_TAIL, "telescope", 0, NULL, "a string")) { 2337 psFree(md); 2338 exit(EXIT_FAILURE); 2339 } 2340 if (!psMetadataAddStr(md, PS_LIST_TAIL, "exp_type", 0, NULL, "a string")) { 2341 psFree(md); 2342 exit(EXIT_FAILURE); 2343 } 2344 if (!psMetadataAddStr(md, PS_LIST_TAIL, "reduction", 0, NULL, "a string")) { 2345 psFree(md); 2346 exit(EXIT_FAILURE); 2347 } 2348 if (!psMetadataAddStr(md, PS_LIST_TAIL, "filter", 0, NULL, "a string")) { 2349 psFree(md); 2350 exit(EXIT_FAILURE); 2351 } 2352 if (!psMetadataAddF32(md, PS_LIST_TAIL, "airmass_min", 0, NULL, 32.32)) { 2353 psFree(md); 2354 exit(EXIT_FAILURE); 2355 } 2356 if (!psMetadataAddF32(md, PS_LIST_TAIL, "airmass_max", 0, NULL, 32.32)) { 2357 psFree(md); 2358 exit(EXIT_FAILURE); 2359 } 2360 if (!psMetadataAddF32(md, PS_LIST_TAIL, "exp_time_min", 0, NULL, 32.32)) { 2361 psFree(md); 2362 exit(EXIT_FAILURE); 2363 } 2364 if (!psMetadataAddF32(md, PS_LIST_TAIL, "exp_time_max", 0, NULL, 32.32)) { 2365 psFree(md); 2366 exit(EXIT_FAILURE); 2367 } 2368 if (!psMetadataAddF32(md, PS_LIST_TAIL, "ccd_temp_min", 0, NULL, 32.32)) { 2369 psFree(md); 2370 exit(EXIT_FAILURE); 2371 } 2372 if (!psMetadataAddF32(md, PS_LIST_TAIL, "ccd_temp_max", 0, NULL, 32.32)) { 2373 psFree(md); 2374 exit(EXIT_FAILURE); 2375 } 2376 if (!psMetadataAddF64(md, PS_LIST_TAIL, "posang_min", 0, NULL, 64.64)) { 2377 psFree(md); 2378 exit(EXIT_FAILURE); 2379 } 2380 if (!psMetadataAddF64(md, PS_LIST_TAIL, "posang_max", 0, NULL, 64.64)) { 2381 psFree(md); 2382 exit(EXIT_FAILURE); 2383 } 2384 psFree(md); 2385 exit(EXIT_FAILURE); 2386 } 2387 psFree(md); 2388 exit(EXIT_FAILURE); 2389 } 2390 psFree(md); 2391 exit(EXIT_FAILURE); 2392 } 2393 psFree(md); 2394 exit(EXIT_FAILURE); 2395 } 2396 psFree(md); 2397 exit(EXIT_FAILURE); 2398 } 2399 if (!psMetadataAddF32(md, PS_LIST_TAIL, "solang_min", 0, NULL, 32.32)) { 2400 psFree(md); 2401 exit(EXIT_FAILURE); 2402 } 2403 if (!psMetadataAddF32(md, PS_LIST_TAIL, "solang_max", 0, NULL, 32.32)) { 2404 psFree(md); 2405 exit(EXIT_FAILURE); 2406 } 2407 if (!psMetadataAddStr(md, PS_LIST_TAIL, "label", 0, NULL, "a string")) { 2408 psFree(md); 2409 exit(EXIT_FAILURE); 2410 } 2411 if (!psMetadataAddS32(md, PS_LIST_TAIL, "parent", 0, NULL, -32)) { 2412 psFree(md); 2413 exit(EXIT_FAILURE); 2414 } 2415 2416 object = detRunObjectFromMetadata(md); 2417 if (!object) { 2418 psFree(md); 2419 exit(EXIT_FAILURE); 2420 } 2421 2422 psFree(md); 2423 2424 psFree(object); 2425 exit(EXIT_FAILURE); 2426 } 2427 if (!object->iteration == -32) { 2428 psFree(object); 2429 exit(EXIT_FAILURE); 2430 } 2431 if (strncmp(object->det_type, "a string", MAX_STRING_LENGTH)) { 2432 psFree(object); 2433 exit(EXIT_FAILURE); 2434 } 2435 if (strncmp(object->mode, "a string", MAX_STRING_LENGTH)) { 2436 psFree(object); 2437 exit(EXIT_FAILURE); 2438 } 2439 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 2440 psFree(object); 2441 exit(EXIT_FAILURE); 2442 } 2443 if (strncmp(object->filelevel, "a string", MAX_STRING_LENGTH)) { 2444 psFree(object); 2445 exit(EXIT_FAILURE); 2446 } 2447 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 2448 psFree(object); 2449 exit(EXIT_FAILURE); 2450 } 2451 if (strncmp(object->camera, "a string", MAX_STRING_LENGTH)) { 2452 psFree(object); 2453 exit(EXIT_FAILURE); 2454 } 2455 if (strncmp(object->telescope, "a string", MAX_STRING_LENGTH)) { 2456 psFree(object); 2457 exit(EXIT_FAILURE); 2458 } 2459 if (strncmp(object->exp_type, "a string", MAX_STRING_LENGTH)) { 2460 psFree(object); 2461 exit(EXIT_FAILURE); 2462 } 2463 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) { 2464 psFree(object); 2465 exit(EXIT_FAILURE); 2466 } 2467 if (strncmp(object->filter, "a string", MAX_STRING_LENGTH)) { 2468 psFree(object); 2469 exit(EXIT_FAILURE); 2470 } 2471 if (!object->airmass_min == 32.32) { 2472 psFree(object); 2473 exit(EXIT_FAILURE); 2474 } 2475 if (!object->airmass_max == 32.32) { 2476 psFree(object); 2477 exit(EXIT_FAILURE); 2478 } 2479 if (!object->exp_time_min == 32.32) { 2480 psFree(object); 2481 exit(EXIT_FAILURE); 2482 } 2483 if (!object->exp_time_max == 32.32) { 2484 psFree(object); 2485 exit(EXIT_FAILURE); 2486 } 2487 if (!object->ccd_temp_min == 32.32) { 2488 psFree(object); 2489 exit(EXIT_FAILURE); 2490 } 2491 if (!object->ccd_temp_max == 32.32) { 2492 psFree(object); 2493 exit(EXIT_FAILURE); 2494 } 2495 if (!object->posang_min == 64.64) { 2496 psFree(object); 2497 exit(EXIT_FAILURE); 2498 } 2499 if (!object->posang_max == 64.64) { 2500 psFree(object); 2501 exit(EXIT_FAILURE); 2502 } 2503 psFree(object); 2504 exit(EXIT_FAILURE); 2505 } 2506 psFree(object); 2507 exit(EXIT_FAILURE); 2508 } 2509 psFree(object); 2510 exit(EXIT_FAILURE); 2511 } 2512 psFree(object); 2513 exit(EXIT_FAILURE); 2514 } 2515 psFree(object); 2516 exit(EXIT_FAILURE); 2517 } 2518 if (!object->solang_min == 32.32) { 2519 psFree(object); 2520 exit(EXIT_FAILURE); 2521 } 2522 if (!object->solang_max == 32.32) { 2523 psFree(object); 2524 exit(EXIT_FAILURE); 2525 } 2526 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 2527 psFree(object); 2528 exit(EXIT_FAILURE); 2529 } 2530 if (!object->parent == -32) { 2531 psFree(object); 2532 exit(EXIT_FAILURE); 2533 } 2534 2535 psFree(object); 2536 } 2537 2538 { 2539 psMetadata *md; 2540 detInputExpRow *object; 2541 2542 md = psMetadataAlloc(); 2543 psFree(md); 2544 exit(EXIT_FAILURE); 2545 } 2546 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) { 2547 psFree(md); 2548 exit(EXIT_FAILURE); 2549 } 2550 psFree(md); 2551 exit(EXIT_FAILURE); 2552 } 2553 if (!psMetadataAdd(md, PS_LIST_TAIL, "include", PS_DATA_BOOL, NULL, true)) { 2554 psFree(md); 2555 exit(EXIT_FAILURE); 2556 } 2557 2558 object = detInputExpObjectFromMetadata(md); 2559 if (!object) { 2560 psFree(md); 2561 exit(EXIT_FAILURE); 2562 } 2563 2564 psFree(md); 2565 2566 psFree(object); 2567 exit(EXIT_FAILURE); 2568 } 2569 if (!object->iteration == -32) { 2570 psFree(object); 2571 exit(EXIT_FAILURE); 2572 } 2573 psFree(object); 2574 exit(EXIT_FAILURE); 2575 } 2576 if (!object->include == true) { 2577 psFree(object); 2578 exit(EXIT_FAILURE); 2579 } 2580 2581 psFree(object); 2582 } 2583 2584 { 2585 psMetadata *md; 2586 detProcessedImfileRow *object; 2587 2588 md = psMetadataAlloc(); 2589 psFree(md); 2590 exit(EXIT_FAILURE); 2591 } 2592 psFree(md); 2593 exit(EXIT_FAILURE); 2594 } 2595 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) { 2596 psFree(md); 2597 exit(EXIT_FAILURE); 2598 } 2599 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 2600 psFree(md); 2601 exit(EXIT_FAILURE); 2602 } 2603 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) { 2604 psFree(md); 2605 exit(EXIT_FAILURE); 2606 } 2607 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 2608 psFree(md); 2609 exit(EXIT_FAILURE); 2610 } 2611 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 2612 psFree(md); 2613 exit(EXIT_FAILURE); 2614 } 2615 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) { 2616 psFree(md); 2617 exit(EXIT_FAILURE); 2618 } 2619 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_0", 0, NULL, 64.64)) { 2620 psFree(md); 2621 exit(EXIT_FAILURE); 2622 } 2623 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_1", 0, NULL, 64.64)) { 2624 psFree(md); 2625 exit(EXIT_FAILURE); 2626 } 2627 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_2", 0, NULL, 64.64)) { 2628 psFree(md); 2629 exit(EXIT_FAILURE); 2630 } 2631 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) { 2632 psFree(md); 2633 exit(EXIT_FAILURE); 2634 } 2635 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) { 2636 psFree(md); 2637 exit(EXIT_FAILURE); 2638 } 2639 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) { 2640 psFree(md); 2641 exit(EXIT_FAILURE); 2642 } 2643 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) { 2644 psFree(md); 2645 exit(EXIT_FAILURE); 2646 } 2647 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) { 2648 psFree(md); 2649 exit(EXIT_FAILURE); 2650 } 2651 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 2652 psFree(md); 2653 exit(EXIT_FAILURE); 2654 } 2655 psFree(md); 2656 exit(EXIT_FAILURE); 2657 } 2658 2659 object = detProcessedImfileObjectFromMetadata(md); 1280 2660 if (!object) { 1281 2661 psFree(md); … … 1299 2679 exit(EXIT_FAILURE); 1300 2680 } 1301 if (!object->bg == 32.32) { 1302 psFree(object); 1303 exit(EXIT_FAILURE); 1304 } 1305 if (!object->bg_stdev == 32.32) { 1306 psFree(object); 1307 exit(EXIT_FAILURE); 1308 } 1309 if (!object->bg_mean_stdev == 32.32) { 1310 psFree(object); 1311 exit(EXIT_FAILURE); 1312 } 1313 if (!object->bias == 32.32) { 1314 psFree(object); 1315 exit(EXIT_FAILURE); 1316 } 1317 if (!object->bias_stdev == 32.32) { 1318 psFree(object); 1319 exit(EXIT_FAILURE); 1320 } 1321 if (!object->fringe_0 == 32.32) { 1322 psFree(object); 1323 exit(EXIT_FAILURE); 1324 } 1325 if (!object->fringe_1 == 32.32) { 1326 psFree(object); 1327 exit(EXIT_FAILURE); 1328 } 1329 if (!object->fringe_2 == 32.32) { 1330 psFree(object); 1331 exit(EXIT_FAILURE); 1332 } 1333 if (!object->sigma_ra == 32.32) { 1334 psFree(object); 1335 exit(EXIT_FAILURE); 1336 } 1337 if (!object->sigma_dec == 32.32) { 1338 psFree(object); 1339 exit(EXIT_FAILURE); 1340 } 1341 if (!object->ap_resid == 32.32) { 1342 psFree(object); 1343 exit(EXIT_FAILURE); 1344 } 1345 if (!object->ap_resid_stdev == 32.32) { 1346 psFree(object); 1347 exit(EXIT_FAILURE); 1348 } 1349 if (!object->fwhm == 32.32) { 1350 psFree(object); 1351 exit(EXIT_FAILURE); 1352 } 1353 if (!object->fwhm_range == 32.32) { 1354 psFree(object); 1355 exit(EXIT_FAILURE); 1356 } 1357 if (!object->n_stars == -32) { 1358 psFree(object); 1359 exit(EXIT_FAILURE); 1360 } 1361 if (!object->n_extended == -32) { 1362 psFree(object); 1363 exit(EXIT_FAILURE); 1364 } 1365 if (!object->n_cr == -32) { 1366 psFree(object); 1367 exit(EXIT_FAILURE); 1368 } 1369 if (!object->n_astrom == -32) { 2681 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 2682 psFree(object); 2683 exit(EXIT_FAILURE); 2684 } 2685 if (!object->bg == 64.64) { 2686 psFree(object); 2687 exit(EXIT_FAILURE); 2688 } 2689 if (!object->bg_stdev == 64.64) { 2690 psFree(object); 2691 exit(EXIT_FAILURE); 2692 } 2693 if (!object->bg_mean_stdev == 64.64) { 2694 psFree(object); 2695 exit(EXIT_FAILURE); 2696 } 2697 if (!object->fringe_0 == 64.64) { 2698 psFree(object); 2699 exit(EXIT_FAILURE); 2700 } 2701 if (!object->fringe_1 == 64.64) { 2702 psFree(object); 2703 exit(EXIT_FAILURE); 2704 } 2705 if (!object->fringe_2 == 64.64) { 2706 psFree(object); 2707 exit(EXIT_FAILURE); 2708 } 2709 if (!object->user_1 == 64.64) { 2710 psFree(object); 2711 exit(EXIT_FAILURE); 2712 } 2713 if (!object->user_2 == 64.64) { 2714 psFree(object); 2715 exit(EXIT_FAILURE); 2716 } 2717 if (!object->user_3 == 64.64) { 2718 psFree(object); 2719 exit(EXIT_FAILURE); 2720 } 2721 if (!object->user_4 == 64.64) { 2722 psFree(object); 2723 exit(EXIT_FAILURE); 2724 } 2725 if (!object->user_5 == 64.64) { 1370 2726 psFree(object); 1371 2727 exit(EXIT_FAILURE); … … 1384 2740 { 1385 2741 psMetadata *md; 1386 chipMaskRow *object; 1387 1388 md = psMetadataAlloc(); 2742 detProcessedExpRow *object; 2743 2744 md = psMetadataAlloc(); 2745 psFree(md); 2746 exit(EXIT_FAILURE); 2747 } 2748 psFree(md); 2749 exit(EXIT_FAILURE); 2750 } 2751 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) { 2752 psFree(md); 2753 exit(EXIT_FAILURE); 2754 } 2755 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 2756 psFree(md); 2757 exit(EXIT_FAILURE); 2758 } 2759 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 2760 psFree(md); 2761 exit(EXIT_FAILURE); 2762 } 2763 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) { 2764 psFree(md); 2765 exit(EXIT_FAILURE); 2766 } 2767 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_0", 0, NULL, 64.64)) { 2768 psFree(md); 2769 exit(EXIT_FAILURE); 2770 } 2771 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_1", 0, NULL, 64.64)) { 2772 psFree(md); 2773 exit(EXIT_FAILURE); 2774 } 2775 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_2", 0, NULL, 64.64)) { 2776 psFree(md); 2777 exit(EXIT_FAILURE); 2778 } 2779 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) { 2780 psFree(md); 2781 exit(EXIT_FAILURE); 2782 } 2783 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) { 2784 psFree(md); 2785 exit(EXIT_FAILURE); 2786 } 2787 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) { 2788 psFree(md); 2789 exit(EXIT_FAILURE); 2790 } 2791 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) { 2792 psFree(md); 2793 exit(EXIT_FAILURE); 2794 } 2795 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) { 2796 psFree(md); 2797 exit(EXIT_FAILURE); 2798 } 2799 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 2800 psFree(md); 2801 exit(EXIT_FAILURE); 2802 } 2803 psFree(md); 2804 exit(EXIT_FAILURE); 2805 } 2806 2807 object = detProcessedExpObjectFromMetadata(md); 2808 if (!object) { 2809 psFree(md); 2810 exit(EXIT_FAILURE); 2811 } 2812 2813 psFree(md); 2814 2815 psFree(object); 2816 exit(EXIT_FAILURE); 2817 } 2818 psFree(object); 2819 exit(EXIT_FAILURE); 2820 } 2821 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 2822 psFree(object); 2823 exit(EXIT_FAILURE); 2824 } 2825 if (!object->bg == 64.64) { 2826 psFree(object); 2827 exit(EXIT_FAILURE); 2828 } 2829 if (!object->bg_stdev == 64.64) { 2830 psFree(object); 2831 exit(EXIT_FAILURE); 2832 } 2833 if (!object->bg_mean_stdev == 64.64) { 2834 psFree(object); 2835 exit(EXIT_FAILURE); 2836 } 2837 if (!object->fringe_0 == 64.64) { 2838 psFree(object); 2839 exit(EXIT_FAILURE); 2840 } 2841 if (!object->fringe_1 == 64.64) { 2842 psFree(object); 2843 exit(EXIT_FAILURE); 2844 } 2845 if (!object->fringe_2 == 64.64) { 2846 psFree(object); 2847 exit(EXIT_FAILURE); 2848 } 2849 if (!object->user_1 == 64.64) { 2850 psFree(object); 2851 exit(EXIT_FAILURE); 2852 } 2853 if (!object->user_2 == 64.64) { 2854 psFree(object); 2855 exit(EXIT_FAILURE); 2856 } 2857 if (!object->user_3 == 64.64) { 2858 psFree(object); 2859 exit(EXIT_FAILURE); 2860 } 2861 if (!object->user_4 == 64.64) { 2862 psFree(object); 2863 exit(EXIT_FAILURE); 2864 } 2865 if (!object->user_5 == 64.64) { 2866 psFree(object); 2867 exit(EXIT_FAILURE); 2868 } 2869 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 2870 psFree(object); 2871 exit(EXIT_FAILURE); 2872 } 2873 psFree(object); 2874 exit(EXIT_FAILURE); 2875 } 2876 2877 psFree(object); 2878 } 2879 2880 { 2881 psMetadata *md; 2882 detStackedImfileRow *object; 2883 2884 md = psMetadataAlloc(); 2885 psFree(md); 2886 exit(EXIT_FAILURE); 2887 } 2888 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) { 2889 psFree(md); 2890 exit(EXIT_FAILURE); 2891 } 2892 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) { 2893 psFree(md); 2894 exit(EXIT_FAILURE); 2895 } 2896 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 2897 psFree(md); 2898 exit(EXIT_FAILURE); 2899 } 2900 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) { 2901 psFree(md); 2902 exit(EXIT_FAILURE); 2903 } 2904 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 2905 psFree(md); 2906 exit(EXIT_FAILURE); 2907 } 2908 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 2909 psFree(md); 2910 exit(EXIT_FAILURE); 2911 } 2912 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) { 2913 psFree(md); 2914 exit(EXIT_FAILURE); 2915 } 2916 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) { 2917 psFree(md); 2918 exit(EXIT_FAILURE); 2919 } 2920 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) { 2921 psFree(md); 2922 exit(EXIT_FAILURE); 2923 } 2924 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) { 2925 psFree(md); 2926 exit(EXIT_FAILURE); 2927 } 2928 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) { 2929 psFree(md); 2930 exit(EXIT_FAILURE); 2931 } 2932 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) { 2933 psFree(md); 2934 exit(EXIT_FAILURE); 2935 } 2936 psFree(md); 2937 exit(EXIT_FAILURE); 2938 } 2939 2940 object = detStackedImfileObjectFromMetadata(md); 2941 if (!object) { 2942 psFree(md); 2943 exit(EXIT_FAILURE); 2944 } 2945 2946 psFree(md); 2947 2948 psFree(object); 2949 exit(EXIT_FAILURE); 2950 } 2951 if (!object->iteration == -32) { 2952 psFree(object); 2953 exit(EXIT_FAILURE); 2954 } 2955 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 2956 psFree(object); 2957 exit(EXIT_FAILURE); 2958 } 2959 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 2960 psFree(object); 2961 exit(EXIT_FAILURE); 2962 } 2963 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 2964 psFree(object); 2965 exit(EXIT_FAILURE); 2966 } 2967 if (!object->bg == 64.64) { 2968 psFree(object); 2969 exit(EXIT_FAILURE); 2970 } 2971 if (!object->bg_stdev == 64.64) { 2972 psFree(object); 2973 exit(EXIT_FAILURE); 2974 } 2975 if (!object->bg_mean_stdev == 64.64) { 2976 psFree(object); 2977 exit(EXIT_FAILURE); 2978 } 2979 if (!object->user_1 == 64.64) { 2980 psFree(object); 2981 exit(EXIT_FAILURE); 2982 } 2983 if (!object->user_2 == 64.64) { 2984 psFree(object); 2985 exit(EXIT_FAILURE); 2986 } 2987 if (!object->user_3 == 64.64) { 2988 psFree(object); 2989 exit(EXIT_FAILURE); 2990 } 2991 if (!object->user_4 == 64.64) { 2992 psFree(object); 2993 exit(EXIT_FAILURE); 2994 } 2995 if (!object->user_5 == 64.64) { 2996 psFree(object); 2997 exit(EXIT_FAILURE); 2998 } 2999 psFree(object); 3000 exit(EXIT_FAILURE); 3001 } 3002 3003 psFree(object); 3004 } 3005 3006 { 3007 psMetadata *md; 3008 detNormalizedStatImfileRow *object; 3009 3010 md = psMetadataAlloc(); 3011 psFree(md); 3012 exit(EXIT_FAILURE); 3013 } 3014 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) { 3015 psFree(md); 3016 exit(EXIT_FAILURE); 3017 } 3018 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) { 3019 psFree(md); 3020 exit(EXIT_FAILURE); 3021 } 3022 if (!psMetadataAddF32(md, PS_LIST_TAIL, "norm", 0, NULL, 32.32)) { 3023 psFree(md); 3024 exit(EXIT_FAILURE); 3025 } 3026 psFree(md); 3027 exit(EXIT_FAILURE); 3028 } 3029 3030 object = detNormalizedStatImfileObjectFromMetadata(md); 3031 if (!object) { 3032 psFree(md); 3033 exit(EXIT_FAILURE); 3034 } 3035 3036 psFree(md); 3037 3038 psFree(object); 3039 exit(EXIT_FAILURE); 3040 } 3041 if (!object->iteration == -32) { 3042 psFree(object); 3043 exit(EXIT_FAILURE); 3044 } 3045 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 3046 psFree(object); 3047 exit(EXIT_FAILURE); 3048 } 3049 if (!object->norm == 32.32) { 3050 psFree(object); 3051 exit(EXIT_FAILURE); 3052 } 3053 psFree(object); 3054 exit(EXIT_FAILURE); 3055 } 3056 3057 psFree(object); 3058 } 3059 3060 { 3061 psMetadata *md; 3062 detNormalizedImfileRow *object; 3063 3064 md = psMetadataAlloc(); 3065 psFree(md); 3066 exit(EXIT_FAILURE); 3067 } 3068 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) { 3069 psFree(md); 3070 exit(EXIT_FAILURE); 3071 } 3072 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) { 3073 psFree(md); 3074 exit(EXIT_FAILURE); 3075 } 3076 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 3077 psFree(md); 3078 exit(EXIT_FAILURE); 3079 } 3080 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 3081 psFree(md); 3082 exit(EXIT_FAILURE); 3083 } 3084 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 3085 psFree(md); 3086 exit(EXIT_FAILURE); 3087 } 3088 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) { 3089 psFree(md); 3090 exit(EXIT_FAILURE); 3091 } 3092 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) { 3093 psFree(md); 3094 exit(EXIT_FAILURE); 3095 } 3096 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) { 3097 psFree(md); 3098 exit(EXIT_FAILURE); 3099 } 3100 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) { 3101 psFree(md); 3102 exit(EXIT_FAILURE); 3103 } 3104 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) { 3105 psFree(md); 3106 exit(EXIT_FAILURE); 3107 } 3108 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) { 3109 psFree(md); 3110 exit(EXIT_FAILURE); 3111 } 3112 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 3113 psFree(md); 3114 exit(EXIT_FAILURE); 3115 } 3116 psFree(md); 3117 exit(EXIT_FAILURE); 3118 } 3119 3120 object = detNormalizedImfileObjectFromMetadata(md); 3121 if (!object) { 3122 psFree(md); 3123 exit(EXIT_FAILURE); 3124 } 3125 3126 psFree(md); 3127 3128 psFree(object); 3129 exit(EXIT_FAILURE); 3130 } 3131 if (!object->iteration == -32) { 3132 psFree(object); 3133 exit(EXIT_FAILURE); 3134 } 3135 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 3136 psFree(object); 3137 exit(EXIT_FAILURE); 3138 } 3139 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 3140 psFree(object); 3141 exit(EXIT_FAILURE); 3142 } 3143 if (!object->bg == 64.64) { 3144 psFree(object); 3145 exit(EXIT_FAILURE); 3146 } 3147 if (!object->bg_stdev == 64.64) { 3148 psFree(object); 3149 exit(EXIT_FAILURE); 3150 } 3151 if (!object->bg_mean_stdev == 64.64) { 3152 psFree(object); 3153 exit(EXIT_FAILURE); 3154 } 3155 if (!object->user_1 == 64.64) { 3156 psFree(object); 3157 exit(EXIT_FAILURE); 3158 } 3159 if (!object->user_2 == 64.64) { 3160 psFree(object); 3161 exit(EXIT_FAILURE); 3162 } 3163 if (!object->user_3 == 64.64) { 3164 psFree(object); 3165 exit(EXIT_FAILURE); 3166 } 3167 if (!object->user_4 == 64.64) { 3168 psFree(object); 3169 exit(EXIT_FAILURE); 3170 } 3171 if (!object->user_5 == 64.64) { 3172 psFree(object); 3173 exit(EXIT_FAILURE); 3174 } 3175 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 3176 psFree(object); 3177 exit(EXIT_FAILURE); 3178 } 3179 psFree(object); 3180 exit(EXIT_FAILURE); 3181 } 3182 3183 psFree(object); 3184 } 3185 3186 { 3187 psMetadata *md; 3188 detNormalizedExpRow *object; 3189 3190 md = psMetadataAlloc(); 3191 psFree(md); 3192 exit(EXIT_FAILURE); 3193 } 3194 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) { 3195 psFree(md); 3196 exit(EXIT_FAILURE); 3197 } 3198 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) { 3199 psFree(md); 3200 exit(EXIT_FAILURE); 3201 } 3202 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 3203 psFree(md); 3204 exit(EXIT_FAILURE); 3205 } 3206 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 3207 psFree(md); 3208 exit(EXIT_FAILURE); 3209 } 3210 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) { 3211 psFree(md); 3212 exit(EXIT_FAILURE); 3213 } 3214 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) { 3215 psFree(md); 3216 exit(EXIT_FAILURE); 3217 } 3218 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) { 3219 psFree(md); 3220 exit(EXIT_FAILURE); 3221 } 3222 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) { 3223 psFree(md); 3224 exit(EXIT_FAILURE); 3225 } 3226 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) { 3227 psFree(md); 3228 exit(EXIT_FAILURE); 3229 } 3230 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) { 3231 psFree(md); 3232 exit(EXIT_FAILURE); 3233 } 3234 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 3235 psFree(md); 3236 exit(EXIT_FAILURE); 3237 } 3238 psFree(md); 3239 exit(EXIT_FAILURE); 3240 } 3241 3242 object = detNormalizedExpObjectFromMetadata(md); 3243 if (!object) { 3244 psFree(md); 3245 exit(EXIT_FAILURE); 3246 } 3247 3248 psFree(md); 3249 3250 psFree(object); 3251 exit(EXIT_FAILURE); 3252 } 3253 if (!object->iteration == -32) { 3254 psFree(object); 3255 exit(EXIT_FAILURE); 3256 } 3257 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 3258 psFree(object); 3259 exit(EXIT_FAILURE); 3260 } 3261 if (!object->bg == 64.64) { 3262 psFree(object); 3263 exit(EXIT_FAILURE); 3264 } 3265 if (!object->bg_stdev == 64.64) { 3266 psFree(object); 3267 exit(EXIT_FAILURE); 3268 } 3269 if (!object->bg_mean_stdev == 64.64) { 3270 psFree(object); 3271 exit(EXIT_FAILURE); 3272 } 3273 if (!object->user_1 == 64.64) { 3274 psFree(object); 3275 exit(EXIT_FAILURE); 3276 } 3277 if (!object->user_2 == 64.64) { 3278 psFree(object); 3279 exit(EXIT_FAILURE); 3280 } 3281 if (!object->user_3 == 64.64) { 3282 psFree(object); 3283 exit(EXIT_FAILURE); 3284 } 3285 if (!object->user_4 == 64.64) { 3286 psFree(object); 3287 exit(EXIT_FAILURE); 3288 } 3289 if (!object->user_5 == 64.64) { 3290 psFree(object); 3291 exit(EXIT_FAILURE); 3292 } 3293 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 3294 psFree(object); 3295 exit(EXIT_FAILURE); 3296 } 3297 psFree(object); 3298 exit(EXIT_FAILURE); 3299 } 3300 3301 psFree(object); 3302 } 3303 3304 { 3305 psMetadata *md; 3306 detResidImfileRow *object; 3307 3308 md = psMetadataAlloc(); 3309 psFree(md); 3310 exit(EXIT_FAILURE); 3311 } 3312 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) { 3313 psFree(md); 3314 exit(EXIT_FAILURE); 3315 } 3316 psFree(md); 3317 exit(EXIT_FAILURE); 3318 } 3319 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) { 3320 psFree(md); 3321 exit(EXIT_FAILURE); 3322 } 3323 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 3324 psFree(md); 3325 exit(EXIT_FAILURE); 3326 } 3327 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) { 3328 psFree(md); 3329 exit(EXIT_FAILURE); 3330 } 3331 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 3332 psFree(md); 3333 exit(EXIT_FAILURE); 3334 } 3335 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 3336 psFree(md); 3337 exit(EXIT_FAILURE); 3338 } 3339 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) { 3340 psFree(md); 3341 exit(EXIT_FAILURE); 3342 } 3343 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_skewness", 0, NULL, 64.64)) { 3344 psFree(md); 3345 exit(EXIT_FAILURE); 3346 } 3347 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_kurtosis", 0, NULL, 64.64)) { 3348 psFree(md); 3349 exit(EXIT_FAILURE); 3350 } 3351 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bin_stdev", 0, NULL, 64.64)) { 3352 psFree(md); 3353 exit(EXIT_FAILURE); 3354 } 3355 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_0", 0, NULL, 64.64)) { 3356 psFree(md); 3357 exit(EXIT_FAILURE); 3358 } 3359 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_1", 0, NULL, 64.64)) { 3360 psFree(md); 3361 exit(EXIT_FAILURE); 3362 } 3363 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_2", 0, NULL, 64.64)) { 3364 psFree(md); 3365 exit(EXIT_FAILURE); 3366 } 3367 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_resid_0", 0, NULL, 64.64)) { 3368 psFree(md); 3369 exit(EXIT_FAILURE); 3370 } 3371 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_resid_1", 0, NULL, 64.64)) { 3372 psFree(md); 3373 exit(EXIT_FAILURE); 3374 } 3375 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_resid_2", 0, NULL, 64.64)) { 3376 psFree(md); 3377 exit(EXIT_FAILURE); 3378 } 3379 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) { 3380 psFree(md); 3381 exit(EXIT_FAILURE); 3382 } 3383 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) { 3384 psFree(md); 3385 exit(EXIT_FAILURE); 3386 } 3387 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) { 3388 psFree(md); 3389 exit(EXIT_FAILURE); 3390 } 3391 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) { 3392 psFree(md); 3393 exit(EXIT_FAILURE); 3394 } 3395 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) { 3396 psFree(md); 3397 exit(EXIT_FAILURE); 3398 } 3399 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 3400 psFree(md); 3401 exit(EXIT_FAILURE); 3402 } 3403 psFree(md); 3404 exit(EXIT_FAILURE); 3405 } 3406 3407 object = detResidImfileObjectFromMetadata(md); 3408 if (!object) { 3409 psFree(md); 3410 exit(EXIT_FAILURE); 3411 } 3412 3413 psFree(md); 3414 3415 psFree(object); 3416 exit(EXIT_FAILURE); 3417 } 3418 if (!object->iteration == -32) { 3419 psFree(object); 3420 exit(EXIT_FAILURE); 3421 } 3422 psFree(object); 3423 exit(EXIT_FAILURE); 3424 } 3425 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 3426 psFree(object); 3427 exit(EXIT_FAILURE); 3428 } 3429 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 3430 psFree(object); 3431 exit(EXIT_FAILURE); 3432 } 3433 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 3434 psFree(object); 3435 exit(EXIT_FAILURE); 3436 } 3437 if (!object->bg == 64.64) { 3438 psFree(object); 3439 exit(EXIT_FAILURE); 3440 } 3441 if (!object->bg_stdev == 64.64) { 3442 psFree(object); 3443 exit(EXIT_FAILURE); 3444 } 3445 if (!object->bg_mean_stdev == 64.64) { 3446 psFree(object); 3447 exit(EXIT_FAILURE); 3448 } 3449 if (!object->bg_skewness == 64.64) { 3450 psFree(object); 3451 exit(EXIT_FAILURE); 3452 } 3453 if (!object->bg_kurtosis == 64.64) { 3454 psFree(object); 3455 exit(EXIT_FAILURE); 3456 } 3457 if (!object->bin_stdev == 64.64) { 3458 psFree(object); 3459 exit(EXIT_FAILURE); 3460 } 3461 if (!object->fringe_0 == 64.64) { 3462 psFree(object); 3463 exit(EXIT_FAILURE); 3464 } 3465 if (!object->fringe_1 == 64.64) { 3466 psFree(object); 3467 exit(EXIT_FAILURE); 3468 } 3469 if (!object->fringe_2 == 64.64) { 3470 psFree(object); 3471 exit(EXIT_FAILURE); 3472 } 3473 if (!object->fringe_resid_0 == 64.64) { 3474 psFree(object); 3475 exit(EXIT_FAILURE); 3476 } 3477 if (!object->fringe_resid_1 == 64.64) { 3478 psFree(object); 3479 exit(EXIT_FAILURE); 3480 } 3481 if (!object->fringe_resid_2 == 64.64) { 3482 psFree(object); 3483 exit(EXIT_FAILURE); 3484 } 3485 if (!object->user_1 == 64.64) { 3486 psFree(object); 3487 exit(EXIT_FAILURE); 3488 } 3489 if (!object->user_2 == 64.64) { 3490 psFree(object); 3491 exit(EXIT_FAILURE); 3492 } 3493 if (!object->user_3 == 64.64) { 3494 psFree(object); 3495 exit(EXIT_FAILURE); 3496 } 3497 if (!object->user_4 == 64.64) { 3498 psFree(object); 3499 exit(EXIT_FAILURE); 3500 } 3501 if (!object->user_5 == 64.64) { 3502 psFree(object); 3503 exit(EXIT_FAILURE); 3504 } 3505 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 3506 psFree(object); 3507 exit(EXIT_FAILURE); 3508 } 3509 psFree(object); 3510 exit(EXIT_FAILURE); 3511 } 3512 3513 psFree(object); 3514 } 3515 3516 { 3517 psMetadata *md; 3518 detResidExpRow *object; 3519 3520 md = psMetadataAlloc(); 3521 psFree(md); 3522 exit(EXIT_FAILURE); 3523 } 3524 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) { 3525 psFree(md); 3526 exit(EXIT_FAILURE); 3527 } 3528 psFree(md); 3529 exit(EXIT_FAILURE); 3530 } 3531 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) { 3532 psFree(md); 3533 exit(EXIT_FAILURE); 3534 } 3535 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 3536 psFree(md); 3537 exit(EXIT_FAILURE); 3538 } 3539 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 3540 psFree(md); 3541 exit(EXIT_FAILURE); 3542 } 3543 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) { 3544 psFree(md); 3545 exit(EXIT_FAILURE); 3546 } 3547 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_skewness", 0, NULL, 64.64)) { 3548 psFree(md); 3549 exit(EXIT_FAILURE); 3550 } 3551 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_kurtosis", 0, NULL, 64.64)) { 3552 psFree(md); 3553 exit(EXIT_FAILURE); 3554 } 3555 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bin_stdev", 0, NULL, 64.64)) { 3556 psFree(md); 3557 exit(EXIT_FAILURE); 3558 } 3559 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_0", 0, NULL, 64.64)) { 3560 psFree(md); 3561 exit(EXIT_FAILURE); 3562 } 3563 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_1", 0, NULL, 64.64)) { 3564 psFree(md); 3565 exit(EXIT_FAILURE); 3566 } 3567 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_2", 0, NULL, 64.64)) { 3568 psFree(md); 3569 exit(EXIT_FAILURE); 3570 } 3571 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_resid_0", 0, NULL, 64.64)) { 3572 psFree(md); 3573 exit(EXIT_FAILURE); 3574 } 3575 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_resid_1", 0, NULL, 64.64)) { 3576 psFree(md); 3577 exit(EXIT_FAILURE); 3578 } 3579 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_resid_2", 0, NULL, 64.64)) { 3580 psFree(md); 3581 exit(EXIT_FAILURE); 3582 } 3583 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) { 3584 psFree(md); 3585 exit(EXIT_FAILURE); 3586 } 3587 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) { 3588 psFree(md); 3589 exit(EXIT_FAILURE); 3590 } 3591 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) { 3592 psFree(md); 3593 exit(EXIT_FAILURE); 3594 } 3595 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) { 3596 psFree(md); 3597 exit(EXIT_FAILURE); 3598 } 3599 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) { 3600 psFree(md); 3601 exit(EXIT_FAILURE); 3602 } 3603 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 3604 psFree(md); 3605 exit(EXIT_FAILURE); 3606 } 3607 if (!psMetadataAdd(md, PS_LIST_TAIL, "accept", PS_DATA_BOOL, NULL, true)) { 3608 psFree(md); 3609 exit(EXIT_FAILURE); 3610 } 3611 psFree(md); 3612 exit(EXIT_FAILURE); 3613 } 3614 3615 object = detResidExpObjectFromMetadata(md); 3616 if (!object) { 3617 psFree(md); 3618 exit(EXIT_FAILURE); 3619 } 3620 3621 psFree(md); 3622 3623 psFree(object); 3624 exit(EXIT_FAILURE); 3625 } 3626 if (!object->iteration == -32) { 3627 psFree(object); 3628 exit(EXIT_FAILURE); 3629 } 3630 psFree(object); 3631 exit(EXIT_FAILURE); 3632 } 3633 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 3634 psFree(object); 3635 exit(EXIT_FAILURE); 3636 } 3637 if (!object->bg == 64.64) { 3638 psFree(object); 3639 exit(EXIT_FAILURE); 3640 } 3641 if (!object->bg_stdev == 64.64) { 3642 psFree(object); 3643 exit(EXIT_FAILURE); 3644 } 3645 if (!object->bg_mean_stdev == 64.64) { 3646 psFree(object); 3647 exit(EXIT_FAILURE); 3648 } 3649 if (!object->bg_skewness == 64.64) { 3650 psFree(object); 3651 exit(EXIT_FAILURE); 3652 } 3653 if (!object->bg_kurtosis == 64.64) { 3654 psFree(object); 3655 exit(EXIT_FAILURE); 3656 } 3657 if (!object->bin_stdev == 64.64) { 3658 psFree(object); 3659 exit(EXIT_FAILURE); 3660 } 3661 if (!object->fringe_0 == 64.64) { 3662 psFree(object); 3663 exit(EXIT_FAILURE); 3664 } 3665 if (!object->fringe_1 == 64.64) { 3666 psFree(object); 3667 exit(EXIT_FAILURE); 3668 } 3669 if (!object->fringe_2 == 64.64) { 3670 psFree(object); 3671 exit(EXIT_FAILURE); 3672 } 3673 if (!object->fringe_resid_0 == 64.64) { 3674 psFree(object); 3675 exit(EXIT_FAILURE); 3676 } 3677 if (!object->fringe_resid_1 == 64.64) { 3678 psFree(object); 3679 exit(EXIT_FAILURE); 3680 } 3681 if (!object->fringe_resid_2 == 64.64) { 3682 psFree(object); 3683 exit(EXIT_FAILURE); 3684 } 3685 if (!object->user_1 == 64.64) { 3686 psFree(object); 3687 exit(EXIT_FAILURE); 3688 } 3689 if (!object->user_2 == 64.64) { 3690 psFree(object); 3691 exit(EXIT_FAILURE); 3692 } 3693 if (!object->user_3 == 64.64) { 3694 psFree(object); 3695 exit(EXIT_FAILURE); 3696 } 3697 if (!object->user_4 == 64.64) { 3698 psFree(object); 3699 exit(EXIT_FAILURE); 3700 } 3701 if (!object->user_5 == 64.64) { 3702 psFree(object); 3703 exit(EXIT_FAILURE); 3704 } 3705 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 3706 psFree(object); 3707 exit(EXIT_FAILURE); 3708 } 3709 if (!object->accept == true) { 3710 psFree(object); 3711 exit(EXIT_FAILURE); 3712 } 3713 psFree(object); 3714 exit(EXIT_FAILURE); 3715 } 3716 3717 psFree(object); 3718 } 3719 3720 { 3721 psMetadata *md; 3722 detRunSummaryRow *object; 3723 3724 md = psMetadataAlloc(); 3725 psFree(md); 3726 exit(EXIT_FAILURE); 3727 } 3728 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) { 3729 psFree(md); 3730 exit(EXIT_FAILURE); 3731 } 3732 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 3733 psFree(md); 3734 exit(EXIT_FAILURE); 3735 } 3736 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 3737 psFree(md); 3738 exit(EXIT_FAILURE); 3739 } 3740 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) { 3741 psFree(md); 3742 exit(EXIT_FAILURE); 3743 } 3744 if (!psMetadataAdd(md, PS_LIST_TAIL, "accept", PS_DATA_BOOL, NULL, true)) { 3745 psFree(md); 3746 exit(EXIT_FAILURE); 3747 } 3748 psFree(md); 3749 exit(EXIT_FAILURE); 3750 } 3751 3752 object = detRunSummaryObjectFromMetadata(md); 3753 if (!object) { 3754 psFree(md); 3755 exit(EXIT_FAILURE); 3756 } 3757 3758 psFree(md); 3759 3760 psFree(object); 3761 exit(EXIT_FAILURE); 3762 } 3763 if (!object->iteration == -32) { 3764 psFree(object); 3765 exit(EXIT_FAILURE); 3766 } 3767 if (!object->bg == 64.64) { 3768 psFree(object); 3769 exit(EXIT_FAILURE); 3770 } 3771 if (!object->bg_stdev == 64.64) { 3772 psFree(object); 3773 exit(EXIT_FAILURE); 3774 } 3775 if (!object->bg_mean_stdev == 64.64) { 3776 psFree(object); 3777 exit(EXIT_FAILURE); 3778 } 3779 if (!object->accept == true) { 3780 psFree(object); 3781 exit(EXIT_FAILURE); 3782 } 3783 psFree(object); 3784 exit(EXIT_FAILURE); 3785 } 3786 3787 psFree(object); 3788 } 3789 3790 { 3791 psMetadata *md; 3792 detRegisteredImfileRow *object; 3793 3794 md = psMetadataAlloc(); 3795 psFree(md); 3796 exit(EXIT_FAILURE); 3797 } 3798 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) { 3799 psFree(md); 3800 exit(EXIT_FAILURE); 3801 } 3802 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) { 3803 psFree(md); 3804 exit(EXIT_FAILURE); 3805 } 3806 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 3807 psFree(md); 3808 exit(EXIT_FAILURE); 3809 } 3810 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 3811 psFree(md); 3812 exit(EXIT_FAILURE); 3813 } 3814 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 3815 psFree(md); 3816 exit(EXIT_FAILURE); 3817 } 3818 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) { 3819 psFree(md); 3820 exit(EXIT_FAILURE); 3821 } 3822 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) { 3823 psFree(md); 3824 exit(EXIT_FAILURE); 3825 } 3826 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) { 3827 psFree(md); 3828 exit(EXIT_FAILURE); 3829 } 3830 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) { 3831 psFree(md); 3832 exit(EXIT_FAILURE); 3833 } 3834 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) { 3835 psFree(md); 3836 exit(EXIT_FAILURE); 3837 } 3838 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) { 3839 psFree(md); 3840 exit(EXIT_FAILURE); 3841 } 3842 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 3843 psFree(md); 3844 exit(EXIT_FAILURE); 3845 } 3846 psFree(md); 3847 exit(EXIT_FAILURE); 3848 } 3849 3850 object = detRegisteredImfileObjectFromMetadata(md); 3851 if (!object) { 3852 psFree(md); 3853 exit(EXIT_FAILURE); 3854 } 3855 3856 psFree(md); 3857 3858 psFree(object); 3859 exit(EXIT_FAILURE); 3860 } 3861 if (!object->iteration == -32) { 3862 psFree(object); 3863 exit(EXIT_FAILURE); 3864 } 3865 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 3866 psFree(object); 3867 exit(EXIT_FAILURE); 3868 } 3869 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 3870 psFree(object); 3871 exit(EXIT_FAILURE); 3872 } 3873 if (!object->bg == 64.64) { 3874 psFree(object); 3875 exit(EXIT_FAILURE); 3876 } 3877 if (!object->bg_stdev == 64.64) { 3878 psFree(object); 3879 exit(EXIT_FAILURE); 3880 } 3881 if (!object->bg_mean_stdev == 64.64) { 3882 psFree(object); 3883 exit(EXIT_FAILURE); 3884 } 3885 if (!object->user_1 == 64.64) { 3886 psFree(object); 3887 exit(EXIT_FAILURE); 3888 } 3889 if (!object->user_2 == 64.64) { 3890 psFree(object); 3891 exit(EXIT_FAILURE); 3892 } 3893 if (!object->user_3 == 64.64) { 3894 psFree(object); 3895 exit(EXIT_FAILURE); 3896 } 3897 if (!object->user_4 == 64.64) { 3898 psFree(object); 3899 exit(EXIT_FAILURE); 3900 } 3901 if (!object->user_5 == 64.64) { 3902 psFree(object); 3903 exit(EXIT_FAILURE); 3904 } 3905 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 3906 psFree(object); 3907 exit(EXIT_FAILURE); 3908 } 3909 psFree(object); 3910 exit(EXIT_FAILURE); 3911 } 3912 3913 psFree(object); 3914 } 3915 3916 { 3917 psMetadata *md; 3918 detCorrectedExpRow *object; 3919 3920 md = psMetadataAlloc(); 3921 psFree(md); 3922 exit(EXIT_FAILURE); 3923 } 3924 psFree(md); 3925 exit(EXIT_FAILURE); 3926 } 3927 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 3928 psFree(md); 3929 exit(EXIT_FAILURE); 3930 } 3931 psFree(md); 3932 exit(EXIT_FAILURE); 3933 } 3934 if (!psMetadataAddStr(md, PS_LIST_TAIL, "corr_type", 0, NULL, "a string")) { 3935 psFree(md); 3936 exit(EXIT_FAILURE); 3937 } 3938 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) { 3939 psFree(md); 3940 exit(EXIT_FAILURE); 3941 } 3942 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 3943 psFree(md); 3944 exit(EXIT_FAILURE); 3945 } 3946 psFree(md); 3947 exit(EXIT_FAILURE); 3948 } 3949 3950 object = detCorrectedExpObjectFromMetadata(md); 3951 if (!object) { 3952 psFree(md); 3953 exit(EXIT_FAILURE); 3954 } 3955 3956 psFree(md); 3957 3958 psFree(object); 3959 exit(EXIT_FAILURE); 3960 } 3961 psFree(object); 3962 exit(EXIT_FAILURE); 3963 } 3964 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 3965 psFree(object); 3966 exit(EXIT_FAILURE); 3967 } 3968 psFree(object); 3969 exit(EXIT_FAILURE); 3970 } 3971 if (strncmp(object->corr_type, "a string", MAX_STRING_LENGTH)) { 3972 psFree(object); 3973 exit(EXIT_FAILURE); 3974 } 3975 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) { 3976 psFree(object); 3977 exit(EXIT_FAILURE); 3978 } 3979 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 3980 psFree(object); 3981 exit(EXIT_FAILURE); 3982 } 3983 psFree(object); 3984 exit(EXIT_FAILURE); 3985 } 3986 3987 psFree(object); 3988 } 3989 3990 { 3991 psMetadata *md; 3992 detCorrectedImfileRow *object; 3993 3994 md = psMetadataAlloc(); 3995 psFree(md); 3996 exit(EXIT_FAILURE); 3997 } 3998 psFree(md); 3999 exit(EXIT_FAILURE); 4000 } 4001 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) { 4002 psFree(md); 4003 exit(EXIT_FAILURE); 4004 } 4005 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) { 4006 psFree(md); 4007 exit(EXIT_FAILURE); 4008 } 4009 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 4010 psFree(md); 4011 exit(EXIT_FAILURE); 4012 } 4013 psFree(md); 4014 exit(EXIT_FAILURE); 4015 } 4016 4017 object = detCorrectedImfileObjectFromMetadata(md); 4018 if (!object) { 4019 psFree(md); 4020 exit(EXIT_FAILURE); 4021 } 4022 4023 psFree(md); 4024 4025 psFree(object); 4026 exit(EXIT_FAILURE); 4027 } 4028 psFree(object); 4029 exit(EXIT_FAILURE); 4030 } 4031 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 4032 psFree(object); 4033 exit(EXIT_FAILURE); 4034 } 4035 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 4036 psFree(object); 4037 exit(EXIT_FAILURE); 4038 } 4039 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 4040 psFree(object); 4041 exit(EXIT_FAILURE); 4042 } 4043 psFree(object); 4044 exit(EXIT_FAILURE); 4045 } 4046 4047 psFree(object); 4048 } 4049 4050 { 4051 psMetadata *md; 4052 magicRunRow *object; 4053 4054 md = psMetadataAlloc(); 4055 psFree(md); 4056 exit(EXIT_FAILURE); 4057 } 4058 if (!psMetadataAddStr(md, PS_LIST_TAIL, "state", 0, NULL, "a string")) { 4059 psFree(md); 4060 exit(EXIT_FAILURE); 4061 } 4062 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir", 0, NULL, "a string")) { 4063 psFree(md); 4064 exit(EXIT_FAILURE); 4065 } 4066 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir_state", 0, NULL, "a string")) { 4067 psFree(md); 4068 exit(EXIT_FAILURE); 4069 } 1389 4070 if (!psMetadataAddStr(md, PS_LIST_TAIL, "label", 0, NULL, "a string")) { 1390 4071 psFree(md); 1391 4072 exit(EXIT_FAILURE); 1392 4073 } 1393 1394 object = chipMaskObjectFromMetadata(md); 1395 if (!object) { 1396 psFree(md); 1397 exit(EXIT_FAILURE); 1398 } 1399 1400 psFree(md); 1401 4074 if (!psMetadataAddStr(md, PS_LIST_TAIL, "dvodb", 0, NULL, "a string")) { 4075 psFree(md); 4076 exit(EXIT_FAILURE); 4077 } 4078 psFree(md); 4079 exit(EXIT_FAILURE); 4080 } 4081 4082 object = magicRunObjectFromMetadata(md); 4083 if (!object) { 4084 psFree(md); 4085 exit(EXIT_FAILURE); 4086 } 4087 4088 psFree(md); 4089 4090 psFree(object); 4091 exit(EXIT_FAILURE); 4092 } 4093 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 4094 psFree(object); 4095 exit(EXIT_FAILURE); 4096 } 4097 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 4098 psFree(object); 4099 exit(EXIT_FAILURE); 4100 } 4101 if (strncmp(object->workdir_state, "a string", MAX_STRING_LENGTH)) { 4102 psFree(object); 4103 exit(EXIT_FAILURE); 4104 } 1402 4105 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 1403 4106 psFree(object); 1404 4107 exit(EXIT_FAILURE); 1405 4108 } 1406 1407 psFree(object);1408 }1409 1410 {1411 psMetadata *md;1412 camRunRow *object;1413 1414 md = psMetadataAlloc();1415 psFree(md);1416 exit(EXIT_FAILURE);1417 }1418 psFree(md);1419 exit(EXIT_FAILURE);1420 }1421 if (!psMetadataAddStr(md, PS_LIST_TAIL, "state", 0, NULL, "a string")) {1422 psFree(md);1423 exit(EXIT_FAILURE);1424 }1425 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir", 0, NULL, "a string")) {1426 psFree(md);1427 exit(EXIT_FAILURE);1428 }1429 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir_state", 0, NULL, "a string")) {1430 psFree(md);1431 exit(EXIT_FAILURE);1432 }1433 if (!psMetadataAddStr(md, PS_LIST_TAIL, "label", 0, NULL, "a string")) {1434 psFree(md);1435 exit(EXIT_FAILURE);1436 }1437 if (!psMetadataAddStr(md, PS_LIST_TAIL, "reduction", 0, NULL, "a string")) {1438 psFree(md);1439 exit(EXIT_FAILURE);1440 }1441 if (!psMetadataAddStr(md, PS_LIST_TAIL, "expgroup", 0, NULL, "a string")) {1442 psFree(md);1443 exit(EXIT_FAILURE);1444 }1445 if (!psMetadataAddStr(md, PS_LIST_TAIL, "dvodb", 0, NULL, "a string")) {1446 psFree(md);1447 exit(EXIT_FAILURE);1448 }1449 1450 object = camRunObjectFromMetadata(md);1451 if (!object) {1452 psFree(md);1453 exit(EXIT_FAILURE);1454 }1455 1456 psFree(md);1457 1458 psFree(object);1459 exit(EXIT_FAILURE);1460 }1461 psFree(object);1462 exit(EXIT_FAILURE);1463 }1464 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) {1465 psFree(object);1466 exit(EXIT_FAILURE);1467 }1468 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) {1469 psFree(object);1470 exit(EXIT_FAILURE);1471 }1472 if (strncmp(object->workdir_state, "a string", MAX_STRING_LENGTH)) {1473 psFree(object);1474 exit(EXIT_FAILURE);1475 }1476 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) {1477 psFree(object);1478 exit(EXIT_FAILURE);1479 }1480 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) {1481 psFree(object);1482 exit(EXIT_FAILURE);1483 }1484 if (strncmp(object->expgroup, "a string", MAX_STRING_LENGTH)) {1485 psFree(object);1486 exit(EXIT_FAILURE);1487 }1488 4109 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 1489 4110 psFree(object); 1490 4111 exit(EXIT_FAILURE); 1491 4112 } 1492 1493 psFree(object); 1494 } 1495 1496 { 1497 psMetadata *md; 1498 camProcessedExpRow *object; 1499 1500 md = psMetadataAlloc(); 1501 psFree(md); 1502 exit(EXIT_FAILURE); 1503 } 4113 psFree(object); 4114 exit(EXIT_FAILURE); 4115 } 4116 4117 psFree(object); 4118 } 4119 4120 { 4121 psMetadata *md; 4122 magicInputSkyfileRow *object; 4123 4124 md = psMetadataAlloc(); 4125 psFree(md); 4126 exit(EXIT_FAILURE); 4127 } 4128 psFree(md); 4129 exit(EXIT_FAILURE); 4130 } 4131 if (!psMetadataAddStr(md, PS_LIST_TAIL, "node", 0, NULL, "a string")) { 4132 psFree(md); 4133 exit(EXIT_FAILURE); 4134 } 4135 4136 object = magicInputSkyfileObjectFromMetadata(md); 4137 if (!object) { 4138 psFree(md); 4139 exit(EXIT_FAILURE); 4140 } 4141 4142 psFree(md); 4143 4144 psFree(object); 4145 exit(EXIT_FAILURE); 4146 } 4147 psFree(object); 4148 exit(EXIT_FAILURE); 4149 } 4150 if (strncmp(object->node, "a string", MAX_STRING_LENGTH)) { 4151 psFree(object); 4152 exit(EXIT_FAILURE); 4153 } 4154 4155 psFree(object); 4156 } 4157 4158 { 4159 psMetadata *md; 4160 magicTreeRow *object; 4161 4162 md = psMetadataAlloc(); 4163 psFree(md); 4164 exit(EXIT_FAILURE); 4165 } 4166 if (!psMetadataAddStr(md, PS_LIST_TAIL, "node", 0, NULL, "a string")) { 4167 psFree(md); 4168 exit(EXIT_FAILURE); 4169 } 4170 if (!psMetadataAddStr(md, PS_LIST_TAIL, "dep", 0, NULL, "a string")) { 4171 psFree(md); 4172 exit(EXIT_FAILURE); 4173 } 4174 4175 object = magicTreeObjectFromMetadata(md); 4176 if (!object) { 4177 psFree(md); 4178 exit(EXIT_FAILURE); 4179 } 4180 4181 psFree(md); 4182 4183 psFree(object); 4184 exit(EXIT_FAILURE); 4185 } 4186 if (strncmp(object->node, "a string", MAX_STRING_LENGTH)) { 4187 psFree(object); 4188 exit(EXIT_FAILURE); 4189 } 4190 if (strncmp(object->dep, "a string", MAX_STRING_LENGTH)) { 4191 psFree(object); 4192 exit(EXIT_FAILURE); 4193 } 4194 4195 psFree(object); 4196 } 4197 4198 { 4199 psMetadata *md; 4200 magicNodeResultRow *object; 4201 4202 md = psMetadataAlloc(); 4203 psFree(md); 4204 exit(EXIT_FAILURE); 4205 } 4206 if (!psMetadataAddStr(md, PS_LIST_TAIL, "node", 0, NULL, "a string")) { 1504 4207 psFree(md); 1505 4208 exit(EXIT_FAILURE); … … 1509 4212 exit(EXIT_FAILURE); 1510 4213 } 1511 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bg", 0, NULL, 32.32)) { 1512 psFree(md); 1513 exit(EXIT_FAILURE); 1514 } 1515 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 32.32)) { 1516 psFree(md); 1517 exit(EXIT_FAILURE); 1518 } 1519 if (!psMetadataAddF32(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 32.32)) { 1520 psFree(md); 1521 exit(EXIT_FAILURE); 1522 } 1523 if (!psMetadataAddF32(md, PS_LIST_TAIL, "sigma_ra", 0, NULL, 32.32)) { 1524 psFree(md); 1525 exit(EXIT_FAILURE); 1526 } 1527 if (!psMetadataAddF32(md, PS_LIST_TAIL, "sigma_dec", 0, NULL, 32.32)) { 1528 psFree(md); 1529 exit(EXIT_FAILURE); 1530 } 1531 if (!psMetadataAddF32(md, PS_LIST_TAIL, "zp_mean", 0, NULL, 32.32)) { 1532 psFree(md); 1533 exit(EXIT_FAILURE); 1534 } 1535 if (!psMetadataAddF32(md, PS_LIST_TAIL, "zp_stdev", 0, NULL, 32.32)) { 1536 psFree(md); 1537 exit(EXIT_FAILURE); 1538 } 1539 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fwhm", 0, NULL, 32.32)) { 1540 psFree(md); 1541 exit(EXIT_FAILURE); 1542 } 1543 if (!psMetadataAddF32(md, PS_LIST_TAIL, "fwhm_range", 0, NULL, 32.32)) { 1544 psFree(md); 1545 exit(EXIT_FAILURE); 1546 } 1547 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_stars", 0, NULL, -32)) { 1548 psFree(md); 1549 exit(EXIT_FAILURE); 1550 } 1551 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_extended", 0, NULL, -32)) { 1552 psFree(md); 1553 exit(EXIT_FAILURE); 1554 } 1555 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_cr", 0, NULL, -32)) { 1556 psFree(md); 1557 exit(EXIT_FAILURE); 1558 } 1559 if (!psMetadataAddS32(md, PS_LIST_TAIL, "n_astrom", 0, NULL, -32)) { 1560 psFree(md); 1561 exit(EXIT_FAILURE); 1562 } 1563 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 1564 psFree(md); 1565 exit(EXIT_FAILURE); 1566 } 1567 psFree(md); 1568 exit(EXIT_FAILURE); 1569 } 1570 1571 object = camProcessedExpObjectFromMetadata(md); 1572 if (!object) { 1573 psFree(md); 1574 exit(EXIT_FAILURE); 1575 } 1576 1577 psFree(md); 1578 1579 psFree(object); 1580 exit(EXIT_FAILURE); 1581 } 4214 4215 object = magicNodeResultObjectFromMetadata(md); 4216 if (!object) { 4217 psFree(md); 4218 exit(EXIT_FAILURE); 4219 } 4220 4221 psFree(md); 4222 4223 psFree(object); 4224 exit(EXIT_FAILURE); 4225 } 4226 if (strncmp(object->node, "a string", MAX_STRING_LENGTH)) { 1582 4227 psFree(object); 1583 4228 exit(EXIT_FAILURE); … … 1587 4232 exit(EXIT_FAILURE); 1588 4233 } 1589 if (!object->bg == 32.32) { 1590 psFree(object); 1591 exit(EXIT_FAILURE); 1592 } 1593 if (!object->bg_stdev == 32.32) { 1594 psFree(object); 1595 exit(EXIT_FAILURE); 1596 } 1597 if (!object->bg_mean_stdev == 32.32) { 1598 psFree(object); 1599 exit(EXIT_FAILURE); 1600 } 1601 if (!object->sigma_ra == 32.32) { 1602 psFree(object); 1603 exit(EXIT_FAILURE); 1604 } 1605 if (!object->sigma_dec == 32.32) { 1606 psFree(object); 1607 exit(EXIT_FAILURE); 1608 } 1609 if (!object->zp_mean == 32.32) { 1610 psFree(object); 1611 exit(EXIT_FAILURE); 1612 } 1613 if (!object->zp_stdev == 32.32) { 1614 psFree(object); 1615 exit(EXIT_FAILURE); 1616 } 1617 if (!object->fwhm == 32.32) { 1618 psFree(object); 1619 exit(EXIT_FAILURE); 1620 } 1621 if (!object->fwhm_range == 32.32) { 1622 psFree(object); 1623 exit(EXIT_FAILURE); 1624 } 1625 if (!object->n_stars == -32) { 1626 psFree(object); 1627 exit(EXIT_FAILURE); 1628 } 1629 if (!object->n_extended == -32) { 1630 psFree(object); 1631 exit(EXIT_FAILURE); 1632 } 1633 if (!object->n_cr == -32) { 1634 psFree(object); 1635 exit(EXIT_FAILURE); 1636 } 1637 if (!object->n_astrom == -32) { 1638 psFree(object); 1639 exit(EXIT_FAILURE); 1640 } 1641 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1642 psFree(object); 1643 exit(EXIT_FAILURE); 1644 } 1645 psFree(object); 1646 exit(EXIT_FAILURE); 1647 } 1648 1649 psFree(object); 1650 } 1651 1652 { 1653 psMetadata *md; 1654 camMaskRow *object; 1655 1656 md = psMetadataAlloc(); 1657 if (!psMetadataAddStr(md, PS_LIST_TAIL, "label", 0, NULL, "a string")) { 1658 psFree(md); 1659 exit(EXIT_FAILURE); 1660 } 1661 1662 object = camMaskObjectFromMetadata(md); 1663 if (!object) { 1664 psFree(md); 1665 exit(EXIT_FAILURE); 1666 } 1667 1668 psFree(md); 1669 1670 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) { 1671 psFree(object); 1672 exit(EXIT_FAILURE); 1673 } 1674 1675 psFree(object); 1676 } 1677 1678 { 1679 psMetadata *md; 1680 warpRunRow *object; 1681 1682 md = psMetadataAlloc(); 1683 psFree(md); 1684 exit(EXIT_FAILURE); 1685 } 1686 if (!psMetadataAddStr(md, PS_LIST_TAIL, "mode", 0, NULL, "a string")) { 1687 psFree(md); 1688 exit(EXIT_FAILURE); 1689 } 1690 if (!psMetadataAddStr(md, PS_LIST_TAIL, "state", 0, NULL, "a string")) { 1691 psFree(md); 1692 exit(EXIT_FAILURE); 1693 } 1694 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir", 0, NULL, "a string")) { 1695 psFree(md); 1696 exit(EXIT_FAILURE); 1697 } 1698 if (!psMetadataAddStr(md, PS_LIST_TAIL, "dvodb", 0, NULL, "a string")) { 1699 psFree(md); 1700 exit(EXIT_FAILURE); 1701 } 1702 psFree(md); 1703 exit(EXIT_FAILURE); 1704 } 1705 1706 object = warpRunObjectFromMetadata(md); 1707 if (!object) { 1708 psFree(md); 1709 exit(EXIT_FAILURE); 1710 } 1711 1712 psFree(md); 1713 1714 psFree(object); 1715 exit(EXIT_FAILURE); 1716 } 1717 if (strncmp(object->mode, "a string", MAX_STRING_LENGTH)) { 1718 psFree(object); 1719 exit(EXIT_FAILURE); 1720 } 1721 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 1722 psFree(object); 1723 exit(EXIT_FAILURE); 1724 } 1725 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 1726 psFree(object); 1727 exit(EXIT_FAILURE); 1728 } 1729 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 1730 psFree(object); 1731 exit(EXIT_FAILURE); 1732 } 1733 psFree(object); 1734 exit(EXIT_FAILURE); 1735 } 1736 1737 psFree(object); 1738 } 1739 1740 { 1741 psMetadata *md; 1742 warpInputExpRow *object; 1743 1744 md = psMetadataAlloc(); 1745 psFree(md); 1746 exit(EXIT_FAILURE); 1747 } 1748 psFree(md); 1749 exit(EXIT_FAILURE); 1750 } 1751 if (!psMetadataAdd(md, PS_LIST_TAIL, "magiced", PS_DATA_BOOL, NULL, true)) { 1752 psFree(md); 1753 exit(EXIT_FAILURE); 1754 } 1755 1756 object = warpInputExpObjectFromMetadata(md); 1757 if (!object) { 1758 psFree(md); 1759 exit(EXIT_FAILURE); 1760 } 1761 1762 psFree(md); 1763 1764 psFree(object); 1765 exit(EXIT_FAILURE); 1766 } 1767 psFree(object); 1768 exit(EXIT_FAILURE); 1769 } 1770 if (!object->magiced == true) { 1771 psFree(object); 1772 exit(EXIT_FAILURE); 1773 } 1774 1775 psFree(object); 1776 } 1777 1778 { 1779 psMetadata *md; 1780 warpSkyCellMapRow *object; 1781 1782 md = psMetadataAlloc(); 1783 psFree(md); 1784 exit(EXIT_FAILURE); 1785 } 1786 if (!psMetadataAddStr(md, PS_LIST_TAIL, "skycell_id", 0, NULL, "a string")) { 1787 psFree(md); 1788 exit(EXIT_FAILURE); 1789 } 1790 if (!psMetadataAddStr(md, PS_LIST_TAIL, "tess_id", 0, NULL, "a string")) { 1791 psFree(md); 1792 exit(EXIT_FAILURE); 1793 } 1794 psFree(md); 1795 exit(EXIT_FAILURE); 1796 } 1797 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) { 1798 psFree(md); 1799 exit(EXIT_FAILURE); 1800 } 1801 psFree(md); 1802 exit(EXIT_FAILURE); 1803 } 1804 1805 object = warpSkyCellMapObjectFromMetadata(md); 1806 if (!object) { 1807 psFree(md); 1808 exit(EXIT_FAILURE); 1809 } 1810 1811 psFree(md); 1812 1813 psFree(object); 1814 exit(EXIT_FAILURE); 1815 } 1816 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 1817 psFree(object); 1818 exit(EXIT_FAILURE); 1819 } 1820 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 1821 psFree(object); 1822 exit(EXIT_FAILURE); 1823 } 1824 psFree(object); 1825 exit(EXIT_FAILURE); 1826 } 1827 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) { 1828 psFree(object); 1829 exit(EXIT_FAILURE); 1830 } 1831 psFree(object); 1832 exit(EXIT_FAILURE); 1833 } 1834 1835 psFree(object); 1836 } 1837 1838 { 1839 psMetadata *md; 1840 warpSkyfileRow *object; 1841 1842 md = psMetadataAlloc(); 1843 psFree(md); 1844 exit(EXIT_FAILURE); 1845 } 1846 if (!psMetadataAddStr(md, PS_LIST_TAIL, "skycell_id", 0, NULL, "a string")) { 1847 psFree(md); 1848 exit(EXIT_FAILURE); 1849 } 1850 if (!psMetadataAddStr(md, PS_LIST_TAIL, "tess_id", 0, NULL, "a string")) { 4234 4235 psFree(object); 4236 } 4237 4238 { 4239 psMetadata *md; 4240 magicMaskRow *object; 4241 4242 md = psMetadataAlloc(); 1851 4243 psFree(md); 1852 4244 exit(EXIT_FAILURE); … … 1856 4248 exit(EXIT_FAILURE); 1857 4249 } 1858 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 1859 psFree(md); 1860 exit(EXIT_FAILURE); 1861 } 1862 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 1863 psFree(md); 1864 exit(EXIT_FAILURE); 1865 } 1866 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 1867 psFree(md); 1868 exit(EXIT_FAILURE); 1869 } 1870 1871 object = warpSkyfileObjectFromMetadata(md); 1872 if (!object) { 1873 psFree(md); 1874 exit(EXIT_FAILURE); 1875 } 1876 1877 psFree(md); 1878 1879 psFree(object); 1880 exit(EXIT_FAILURE); 1881 } 1882 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 1883 psFree(object); 1884 exit(EXIT_FAILURE); 1885 } 1886 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 4250 4251 object = magicMaskObjectFromMetadata(md); 4252 if (!object) { 4253 psFree(md); 4254 exit(EXIT_FAILURE); 4255 } 4256 4257 psFree(md); 4258 1887 4259 psFree(object); 1888 4260 exit(EXIT_FAILURE); … … 1892 4264 exit(EXIT_FAILURE); 1893 4265 } 1894 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) { 1895 psFree(object); 1896 exit(EXIT_FAILURE); 1897 } 1898 if (!object->bg == 64.64) { 1899 psFree(object); 1900 exit(EXIT_FAILURE); 1901 } 1902 if (!object->bg_stdev == 64.64) { 1903 psFree(object); 1904 exit(EXIT_FAILURE); 1905 } 1906 1907 psFree(object); 1908 } 1909 1910 { 1911 psMetadata *md; 1912 diffRunRow *object; 1913 1914 md = psMetadataAlloc(); 1915 psFree(md); 1916 exit(EXIT_FAILURE); 1917 } 1918 if (!psMetadataAddStr(md, PS_LIST_TAIL, "state", 0, NULL, "a string")) { 1919 psFree(md); 1920 exit(EXIT_FAILURE); 1921 } 1922 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir", 0, NULL, "a string")) { 1923 psFree(md); 1924 exit(EXIT_FAILURE); 1925 } 1926 if (!psMetadataAddStr(md, PS_LIST_TAIL, "dvodb", 0, NULL, "a string")) { 1927 psFree(md); 1928 exit(EXIT_FAILURE); 1929 } 1930 psFree(md); 1931 exit(EXIT_FAILURE); 1932 } 1933 if (!psMetadataAddStr(md, PS_LIST_TAIL, "skycell_id", 0, NULL, "a string")) { 1934 psFree(md); 1935 exit(EXIT_FAILURE); 1936 } 1937 if (!psMetadataAddStr(md, PS_LIST_TAIL, "tess_id", 0, NULL, "a string")) { 1938 psFree(md); 1939 exit(EXIT_FAILURE); 1940 } 1941 1942 object = diffRunObjectFromMetadata(md); 1943 if (!object) { 1944 psFree(md); 1945 exit(EXIT_FAILURE); 1946 } 1947 1948 psFree(md); 1949 1950 psFree(object); 1951 exit(EXIT_FAILURE); 1952 } 1953 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) { 1954 psFree(object); 1955 exit(EXIT_FAILURE); 1956 } 1957 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) { 1958 psFree(object); 1959 exit(EXIT_FAILURE); 1960 } 1961 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) { 1962 psFree(object); 1963 exit(EXIT_FAILURE); 1964 } 1965 psFree(object); 1966 exit(EXIT_FAILURE); 1967 } 1968 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 1969 psFree(object); 1970 exit(EXIT_FAILURE); 1971 } 1972 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 1973 psFree(object); 1974 exit(EXIT_FAILURE); 1975 } 1976 1977 psFree(object); 1978 } 1979 1980 { 1981 psMetadata *md; 1982 diffInputSkyfileRow *object; 1983 1984 md = psMetadataAlloc(); 1985 psFree(md); 1986 exit(EXIT_FAILURE); 1987 } 1988 psFree(md); 1989 exit(EXIT_FAILURE); 1990 } 1991 if (!psMetadataAddStr(md, PS_LIST_TAIL, "skycell_id", 0, NULL, "a string")) { 1992 psFree(md); 1993 exit(EXIT_FAILURE); 1994 } 1995 if (!psMetadataAddStr(md, PS_LIST_TAIL, "tess_id", 0, NULL, "a string")) { 1996 psFree(md); 1997 exit(EXIT_FAILURE); 1998 } 1999 if (!psMetadataAddStr(md, PS_LIST_TAIL, "kind", 0, NULL, "a string")) { 2000 psFree(md); 2001 exit(EXIT_FAILURE); 2002 } 2003 if (!psMetadataAdd(md, PS_LIST_TAIL, "template", PS_DATA_BOOL, NULL, true)) { 2004 psFree(md); 2005 exit(EXIT_FAILURE); 2006 } 2007 2008 object = diffInputSkyfileObjectFromMetadata(md); 2009 if (!object) { 2010 psFree(md); 2011 exit(EXIT_FAILURE); 2012 } 2013 2014 psFree(md); 2015 2016 psFree(object); 2017 exit(EXIT_FAILURE); 2018 } 2019 psFree(object); 2020 exit(EXIT_FAILURE); 2021 } 2022 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) { 2023 psFree(object); 2024 exit(EXIT_FAILURE); 2025 } 2026 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) { 2027 psFree(object); 2028 exit(EXIT_FAILURE); 2029 } 2030 if (strncmp(object->kind, "a string", MAX_STRING_LENGTH)) { 2031 psFree(object); 2032 exit(EXIT_FAILURE); 2033 } 2034 if (!object->template == true) { 2035 psFree(object); 2036 exit(EXIT_FAILURE); 2037 } 2038 2039 psFree(object); 2040 } 2041 2042 { 2043 psMetadata *md; 2044 diffSkyfileRow *object; 2045 2046 md = psMetadataAlloc(); 4266 4267 psFree(object); 4268 } 4269 4270 { 4271 psMetadata *md; 4272 magicSkyfileMaskRow *object; 4273 4274 md = psMetadataAlloc(); 4275 psFree(md); 4276 exit(EXIT_FAILURE); 4277 } 2047 4278 psFree(md); 2048 4279 exit(EXIT_FAILURE); … … 2052 4283 exit(EXIT_FAILURE); 2053 4284 } 2054 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) { 2055 psFree(md); 2056 exit(EXIT_FAILURE); 2057 } 2058 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) { 2059 psFree(md); 2060 exit(EXIT_FAILURE); 2061 } 2062 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) { 2063 psFree(md); 2064 exit(EXIT_FAILURE); 2065 } 2066 2067 object = diffSkyfileObjectFromMetadata(md); 2068 if (!object) { 2069 psFree(md); 2070 exit(EXIT_FAILURE); 2071 } 2072 2073 psFree(md); 2074 4285 4286 object = magicSkyfileMaskObjectFromMetadata(md); 4287 if (!object) { 4288 psFree(md); 4289 exit(EXIT_FAILURE); 4290 } 4291 4292 psFree(md); 4293 4294 psFree(object); 4295 exit(EXIT_FAILURE); 4296 } 2075 4297 psFree(object); 2076 4298 exit(EXIT_FAILURE); 2077 4299 } 2078 4300 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) { 2079 psFree(object);2080 exit(EXIT_FAILURE);2081 }2082 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {2083 psFree(object);2084 exit(EXIT_FAILURE);2085 }2086 if (!object->bg == 64.64) {2087 psFree(object);2088 exit(EXIT_FAILURE);2089 }2090 if (!object->bg_stdev == 64.64) {2091 psFree(object);2092 exit(EXIT_FAILURE);2093 }2094 2095 psFree(object);2096 }2097 2098 {2099 psMetadata *md;2100 stackRunRow *object;2101 2102 md = psMetadataAlloc();2103 psFree(md);2104 exit(EXIT_FAILURE);2105 }2106 if (!psMetadataAddStr(md, PS_LIST_TAIL, "state", 0, NULL, "a string")) {2107 psFree(md);2108 exit(EXIT_FAILURE);2109 }2110 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir", 0, NULL, "a string")) {2111 psFree(md);2112 exit(EXIT_FAILURE);2113 }2114 if (!psMetadataAddStr(md, PS_LIST_TAIL, "dvodb", 0, NULL, "a string")) {2115 psFree(md);2116 exit(EXIT_FAILURE);2117 }2118 psFree(md);2119 exit(EXIT_FAILURE);2120 }2121 if (!psMetadataAddStr(md, PS_LIST_TAIL, "skycell_id", 0, NULL, "a string")) {2122 psFree(md);2123 exit(EXIT_FAILURE);2124 }2125 if (!psMetadataAddStr(md, PS_LIST_TAIL, "tess_id", 0, NULL, "a string")) {2126 psFree(md);2127 exit(EXIT_FAILURE);2128 }2129 2130 object = stackRunObjectFromMetadata(md);2131 if (!object) {2132 psFree(md);2133 exit(EXIT_FAILURE);2134 }2135 2136 psFree(md);2137 2138 psFree(object);2139 exit(EXIT_FAILURE);2140 }2141 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) {2142 psFree(object);2143 exit(EXIT_FAILURE);2144 }2145 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) {2146 psFree(object);2147 exit(EXIT_FAILURE);2148 }2149 if (strncmp(object->dvodb, "a string", MAX_STRING_LENGTH)) {2150 psFree(object);2151 exit(EXIT_FAILURE);2152 }2153 psFree(object);2154 exit(EXIT_FAILURE);2155 }2156 if (strncmp(object->skycell_id, "a string", MAX_STRING_LENGTH)) {2157 psFree(object);2158 exit(EXIT_FAILURE);2159 }2160 if (strncmp(object->tess_id, "a string", MAX_STRING_LENGTH)) {2161 psFree(object);2162 exit(EXIT_FAILURE);2163 }2164 2165 psFree(object);2166 }2167 2168 {2169 psMetadata *md;2170 stackInputSkyfileRow *object;2171 2172 md = psMetadataAlloc();2173 psFree(md);2174 exit(EXIT_FAILURE);2175 }2176 psFree(md);2177 exit(EXIT_FAILURE);2178 }2179 2180 object = stackInputSkyfileObjectFromMetadata(md);2181 if (!object) {2182 psFree(md);2183 exit(EXIT_FAILURE);2184 }2185 2186 psFree(md);2187 2188 psFree(object);2189 exit(EXIT_FAILURE);2190 }2191 psFree(object);2192 exit(EXIT_FAILURE);2193 }2194 2195 psFree(object);2196 }2197 2198 {2199 psMetadata *md;2200 stackSumSkyfileRow *object;2201 2202 md = psMetadataAlloc();2203 psFree(md);2204 exit(EXIT_FAILURE);2205 }2206 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) {2207 psFree(md);2208 exit(EXIT_FAILURE);2209 }2210 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) {2211 psFree(md);2212 exit(EXIT_FAILURE);2213 }2214 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) {2215 psFree(md);2216 exit(EXIT_FAILURE);2217 }2218 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) {2219 psFree(md);2220 exit(EXIT_FAILURE);2221 }2222 2223 object = stackSumSkyfileObjectFromMetadata(md);2224 if (!object) {2225 psFree(md);2226 exit(EXIT_FAILURE);2227 }2228 2229 psFree(md);2230 2231 psFree(object);2232 exit(EXIT_FAILURE);2233 }2234 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {2235 psFree(object);2236 exit(EXIT_FAILURE);2237 }2238 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {2239 psFree(object);2240 exit(EXIT_FAILURE);2241 }2242 if (!object->bg == 64.64) {2243 psFree(object);2244 exit(EXIT_FAILURE);2245 }2246 if (!object->bg_stdev == 64.64) {2247 psFree(object);2248 exit(EXIT_FAILURE);2249 }2250 2251 psFree(object);2252 }2253 2254 {2255 psMetadata *md;2256 detRunRow *object;2257 2258 md = psMetadataAlloc();2259 psFree(md);2260 exit(EXIT_FAILURE);2261 }2262 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {2263 psFree(md);2264 exit(EXIT_FAILURE);2265 }2266 if (!psMetadataAddStr(md, PS_LIST_TAIL, "det_type", 0, NULL, "a string")) {2267 psFree(md);2268 exit(EXIT_FAILURE);2269 }2270 if (!psMetadataAddStr(md, PS_LIST_TAIL, "mode", 0, NULL, "a string")) {2271 psFree(md);2272 exit(EXIT_FAILURE);2273 }2274 if (!psMetadataAddStr(md, PS_LIST_TAIL, "state", 0, NULL, "a string")) {2275 psFree(md);2276 exit(EXIT_FAILURE);2277 }2278 if (!psMetadataAddStr(md, PS_LIST_TAIL, "filelevel", 0, NULL, "a string")) {2279 psFree(md);2280 exit(EXIT_FAILURE);2281 }2282 if (!psMetadataAddStr(md, PS_LIST_TAIL, "workdir", 0, NULL, "a string")) {2283 psFree(md);2284 exit(EXIT_FAILURE);2285 }2286 if (!psMetadataAddStr(md, PS_LIST_TAIL, "camera", 0, NULL, "a string")) {2287 psFree(md);2288 exit(EXIT_FAILURE);2289 }2290 if (!psMetadataAddStr(md, PS_LIST_TAIL, "telescope", 0, NULL, "a string")) {2291 psFree(md);2292 exit(EXIT_FAILURE);2293 }2294 if (!psMetadataAddStr(md, PS_LIST_TAIL, "exp_type", 0, NULL, "a string")) {2295 psFree(md);2296 exit(EXIT_FAILURE);2297 }2298 if (!psMetadataAddStr(md, PS_LIST_TAIL, "reduction", 0, NULL, "a string")) {2299 psFree(md);2300 exit(EXIT_FAILURE);2301 }2302 if (!psMetadataAddStr(md, PS_LIST_TAIL, "filter", 0, NULL, "a string")) {2303 psFree(md);2304 exit(EXIT_FAILURE);2305 }2306 if (!psMetadataAddF32(md, PS_LIST_TAIL, "airmass_min", 0, NULL, 32.32)) {2307 psFree(md);2308 exit(EXIT_FAILURE);2309 }2310 if (!psMetadataAddF32(md, PS_LIST_TAIL, "airmass_max", 0, NULL, 32.32)) {2311 psFree(md);2312 exit(EXIT_FAILURE);2313 }2314 if (!psMetadataAddF32(md, PS_LIST_TAIL, "exp_time_min", 0, NULL, 32.32)) {2315 psFree(md);2316 exit(EXIT_FAILURE);2317 }2318 if (!psMetadataAddF32(md, PS_LIST_TAIL, "exp_time_max", 0, NULL, 32.32)) {2319 psFree(md);2320 exit(EXIT_FAILURE);2321 }2322 if (!psMetadataAddF32(md, PS_LIST_TAIL, "ccd_temp_min", 0, NULL, 32.32)) {2323 psFree(md);2324 exit(EXIT_FAILURE);2325 }2326 if (!psMetadataAddF32(md, PS_LIST_TAIL, "ccd_temp_max", 0, NULL, 32.32)) {2327 psFree(md);2328 exit(EXIT_FAILURE);2329 }2330 if (!psMetadataAddF64(md, PS_LIST_TAIL, "posang_min", 0, NULL, 64.64)) {2331 psFree(md);2332 exit(EXIT_FAILURE);2333 }2334 if (!psMetadataAddF64(md, PS_LIST_TAIL, "posang_max", 0, NULL, 64.64)) {2335 psFree(md);2336 exit(EXIT_FAILURE);2337 }2338 psFree(md);2339 exit(EXIT_FAILURE);2340 }2341 psFree(md);2342 exit(EXIT_FAILURE);2343 }2344 psFree(md);2345 exit(EXIT_FAILURE);2346 }2347 psFree(md);2348 exit(EXIT_FAILURE);2349 }2350 psFree(md);2351 exit(EXIT_FAILURE);2352 }2353 if (!psMetadataAddF32(md, PS_LIST_TAIL, "solang_min", 0, NULL, 32.32)) {2354 psFree(md);2355 exit(EXIT_FAILURE);2356 }2357 if (!psMetadataAddF32(md, PS_LIST_TAIL, "solang_max", 0, NULL, 32.32)) {2358 psFree(md);2359 exit(EXIT_FAILURE);2360 }2361 if (!psMetadataAddStr(md, PS_LIST_TAIL, "label", 0, NULL, "a string")) {2362 psFree(md);2363 exit(EXIT_FAILURE);2364 }2365 if (!psMetadataAddS32(md, PS_LIST_TAIL, "parent", 0, NULL, -32)) {2366 psFree(md);2367 exit(EXIT_FAILURE);2368 }2369 2370 object = detRunObjectFromMetadata(md);2371 if (!object) {2372 psFree(md);2373 exit(EXIT_FAILURE);2374 }2375 2376 psFree(md);2377 2378 psFree(object);2379 exit(EXIT_FAILURE);2380 }2381 if (!object->iteration == -32) {2382 psFree(object);2383 exit(EXIT_FAILURE);2384 }2385 if (strncmp(object->det_type, "a string", MAX_STRING_LENGTH)) {2386 psFree(object);2387 exit(EXIT_FAILURE);2388 }2389 if (strncmp(object->mode, "a string", MAX_STRING_LENGTH)) {2390 psFree(object);2391 exit(EXIT_FAILURE);2392 }2393 if (strncmp(object->state, "a string", MAX_STRING_LENGTH)) {2394 psFree(object);2395 exit(EXIT_FAILURE);2396 }2397 if (strncmp(object->filelevel, "a string", MAX_STRING_LENGTH)) {2398 psFree(object);2399 exit(EXIT_FAILURE);2400 }2401 if (strncmp(object->workdir, "a string", MAX_STRING_LENGTH)) {2402 psFree(object);2403 exit(EXIT_FAILURE);2404 }2405 if (strncmp(object->camera, "a string", MAX_STRING_LENGTH)) {2406 psFree(object);2407 exit(EXIT_FAILURE);2408 }2409 if (strncmp(object->telescope, "a string", MAX_STRING_LENGTH)) {2410 psFree(object);2411 exit(EXIT_FAILURE);2412 }2413 if (strncmp(object->exp_type, "a string", MAX_STRING_LENGTH)) {2414 psFree(object);2415 exit(EXIT_FAILURE);2416 }2417 if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) {2418 psFree(object);2419 exit(EXIT_FAILURE);2420 }2421 if (strncmp(object->filter, "a string", MAX_STRING_LENGTH)) {2422 psFree(object);2423 exit(EXIT_FAILURE);2424 }2425 if (!object->airmass_min == 32.32) {2426 psFree(object);2427 exit(EXIT_FAILURE);2428 }2429 if (!object->airmass_max == 32.32) {2430 psFree(object);2431 exit(EXIT_FAILURE);2432 }2433 if (!object->exp_time_min == 32.32) {2434 psFree(object);2435 exit(EXIT_FAILURE);2436 }2437 if (!object->exp_time_max == 32.32) {2438 psFree(object);2439 exit(EXIT_FAILURE);2440 }2441 if (!object->ccd_temp_min == 32.32) {2442 psFree(object);2443 exit(EXIT_FAILURE);2444 }2445 if (!object->ccd_temp_max == 32.32) {2446 psFree(object);2447 exit(EXIT_FAILURE);2448 }2449 if (!object->posang_min == 64.64) {2450 psFree(object);2451 exit(EXIT_FAILURE);2452 }2453 if (!object->posang_max == 64.64) {2454 psFree(object);2455 exit(EXIT_FAILURE);2456 }2457 psFree(object);2458 exit(EXIT_FAILURE);2459 }2460 psFree(object);2461 exit(EXIT_FAILURE);2462 }2463 psFree(object);2464 exit(EXIT_FAILURE);2465 }2466 psFree(object);2467 exit(EXIT_FAILURE);2468 }2469 psFree(object);2470 exit(EXIT_FAILURE);2471 }2472 if (!object->solang_min == 32.32) {2473 psFree(object);2474 exit(EXIT_FAILURE);2475 }2476 if (!object->solang_max == 32.32) {2477 psFree(object);2478 exit(EXIT_FAILURE);2479 }2480 if (strncmp(object->label, "a string", MAX_STRING_LENGTH)) {2481 psFree(object);2482 exit(EXIT_FAILURE);2483 }2484 if (!object->parent == -32) {2485 psFree(object);2486 exit(EXIT_FAILURE);2487 }2488 2489 psFree(object);2490 }2491 2492 {2493 psMetadata *md;2494 detInputExpRow *object;2495 2496 md = psMetadataAlloc();2497 psFree(md);2498 exit(EXIT_FAILURE);2499 }2500 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {2501 psFree(md);2502 exit(EXIT_FAILURE);2503 }2504 psFree(md);2505 exit(EXIT_FAILURE);2506 }2507 if (!psMetadataAdd(md, PS_LIST_TAIL, "include", PS_DATA_BOOL, NULL, true)) {2508 psFree(md);2509 exit(EXIT_FAILURE);2510 }2511 2512 object = detInputExpObjectFromMetadata(md);2513 if (!object) {2514 psFree(md);2515 exit(EXIT_FAILURE);2516 }2517 2518 psFree(md);2519 2520 psFree(object);2521 exit(EXIT_FAILURE);2522 }2523 if (!object->iteration == -32) {2524 psFree(object);2525 exit(EXIT_FAILURE);2526 }2527 psFree(object);2528 exit(EXIT_FAILURE);2529 }2530 if (!object->include == true) {2531 psFree(object);2532 exit(EXIT_FAILURE);2533 }2534 2535 psFree(object);2536 }2537 2538 {2539 psMetadata *md;2540 detProcessedImfileRow *object;2541 2542 md = psMetadataAlloc();2543 psFree(md);2544 exit(EXIT_FAILURE);2545 }2546 psFree(md);2547 exit(EXIT_FAILURE);2548 }2549 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) {2550 psFree(md);2551 exit(EXIT_FAILURE);2552 }2553 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) {2554 psFree(md);2555 exit(EXIT_FAILURE);2556 }2557 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) {2558 psFree(md);2559 exit(EXIT_FAILURE);2560 }2561 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) {2562 psFree(md);2563 exit(EXIT_FAILURE);2564 }2565 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) {2566 psFree(md);2567 exit(EXIT_FAILURE);2568 }2569 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) {2570 psFree(md);2571 exit(EXIT_FAILURE);2572 }2573 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_0", 0, NULL, 64.64)) {2574 psFree(md);2575 exit(EXIT_FAILURE);2576 }2577 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_1", 0, NULL, 64.64)) {2578 psFree(md);2579 exit(EXIT_FAILURE);2580 }2581 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_2", 0, NULL, 64.64)) {2582 psFree(md);2583 exit(EXIT_FAILURE);2584 }2585 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) {2586 psFree(md);2587 exit(EXIT_FAILURE);2588 }2589 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) {2590 psFree(md);2591 exit(EXIT_FAILURE);2592 }2593 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) {2594 psFree(md);2595 exit(EXIT_FAILURE);2596 }2597 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) {2598 psFree(md);2599 exit(EXIT_FAILURE);2600 }2601 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) {2602 psFree(md);2603 exit(EXIT_FAILURE);2604 }2605 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) {2606 psFree(md);2607 exit(EXIT_FAILURE);2608 }2609 psFree(md);2610 exit(EXIT_FAILURE);2611 }2612 2613 object = detProcessedImfileObjectFromMetadata(md);2614 if (!object) {2615 psFree(md);2616 exit(EXIT_FAILURE);2617 }2618 2619 psFree(md);2620 2621 psFree(object);2622 exit(EXIT_FAILURE);2623 }2624 psFree(object);2625 exit(EXIT_FAILURE);2626 }2627 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {2628 psFree(object);2629 exit(EXIT_FAILURE);2630 }2631 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {2632 psFree(object);2633 exit(EXIT_FAILURE);2634 }2635 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {2636 psFree(object);2637 exit(EXIT_FAILURE);2638 }2639 if (!object->bg == 64.64) {2640 psFree(object);2641 exit(EXIT_FAILURE);2642 }2643 if (!object->bg_stdev == 64.64) {2644 psFree(object);2645 exit(EXIT_FAILURE);2646 }2647 if (!object->bg_mean_stdev == 64.64) {2648 psFree(object);2649 exit(EXIT_FAILURE);2650 }2651 if (!object->fringe_0 == 64.64) {2652 psFree(object);2653 exit(EXIT_FAILURE);2654 }2655 if (!object->fringe_1 == 64.64) {2656 psFree(object);2657 exit(EXIT_FAILURE);2658 }2659 if (!object->fringe_2 == 64.64) {2660 psFree(object);2661 exit(EXIT_FAILURE);2662 }2663 if (!object->user_1 == 64.64) {2664 psFree(object);2665 exit(EXIT_FAILURE);2666 }2667 if (!object->user_2 == 64.64) {2668 psFree(object);2669 exit(EXIT_FAILURE);2670 }2671 if (!object->user_3 == 64.64) {2672 psFree(object);2673 exit(EXIT_FAILURE);2674 }2675 if (!object->user_4 == 64.64) {2676 psFree(object);2677 exit(EXIT_FAILURE);2678 }2679 if (!object->user_5 == 64.64) {2680 psFree(object);2681 exit(EXIT_FAILURE);2682 }2683 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {2684 psFree(object);2685 exit(EXIT_FAILURE);2686 }2687 psFree(object);2688 exit(EXIT_FAILURE);2689 }2690 2691 psFree(object);2692 }2693 2694 {2695 psMetadata *md;2696 detProcessedExpRow *object;2697 2698 md = psMetadataAlloc();2699 psFree(md);2700 exit(EXIT_FAILURE);2701 }2702 psFree(md);2703 exit(EXIT_FAILURE);2704 }2705 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) {2706 psFree(md);2707 exit(EXIT_FAILURE);2708 }2709 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) {2710 psFree(md);2711 exit(EXIT_FAILURE);2712 }2713 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) {2714 psFree(md);2715 exit(EXIT_FAILURE);2716 }2717 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) {2718 psFree(md);2719 exit(EXIT_FAILURE);2720 }2721 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_0", 0, NULL, 64.64)) {2722 psFree(md);2723 exit(EXIT_FAILURE);2724 }2725 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_1", 0, NULL, 64.64)) {2726 psFree(md);2727 exit(EXIT_FAILURE);2728 }2729 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_2", 0, NULL, 64.64)) {2730 psFree(md);2731 exit(EXIT_FAILURE);2732 }2733 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) {2734 psFree(md);2735 exit(EXIT_FAILURE);2736 }2737 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) {2738 psFree(md);2739 exit(EXIT_FAILURE);2740 }2741 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) {2742 psFree(md);2743 exit(EXIT_FAILURE);2744 }2745 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) {2746 psFree(md);2747 exit(EXIT_FAILURE);2748 }2749 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) {2750 psFree(md);2751 exit(EXIT_FAILURE);2752 }2753 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) {2754 psFree(md);2755 exit(EXIT_FAILURE);2756 }2757 psFree(md);2758 exit(EXIT_FAILURE);2759 }2760 2761 object = detProcessedExpObjectFromMetadata(md);2762 if (!object) {2763 psFree(md);2764 exit(EXIT_FAILURE);2765 }2766 2767 psFree(md);2768 2769 psFree(object);2770 exit(EXIT_FAILURE);2771 }2772 psFree(object);2773 exit(EXIT_FAILURE);2774 }2775 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {2776 psFree(object);2777 exit(EXIT_FAILURE);2778 }2779 if (!object->bg == 64.64) {2780 psFree(object);2781 exit(EXIT_FAILURE);2782 }2783 if (!object->bg_stdev == 64.64) {2784 psFree(object);2785 exit(EXIT_FAILURE);2786 }2787 if (!object->bg_mean_stdev == 64.64) {2788 psFree(object);2789 exit(EXIT_FAILURE);2790 }2791 if (!object->fringe_0 == 64.64) {2792 psFree(object);2793 exit(EXIT_FAILURE);2794 }2795 if (!object->fringe_1 == 64.64) {2796 psFree(object);2797 exit(EXIT_FAILURE);2798 }2799 if (!object->fringe_2 == 64.64) {2800 psFree(object);2801 exit(EXIT_FAILURE);2802 }2803 if (!object->user_1 == 64.64) {2804 psFree(object);2805 exit(EXIT_FAILURE);2806 }2807 if (!object->user_2 == 64.64) {2808 psFree(object);2809 exit(EXIT_FAILURE);2810 }2811 if (!object->user_3 == 64.64) {2812 psFree(object);2813 exit(EXIT_FAILURE);2814 }2815 if (!object->user_4 == 64.64) {2816 psFree(object);2817 exit(EXIT_FAILURE);2818 }2819 if (!object->user_5 == 64.64) {2820 psFree(object);2821 exit(EXIT_FAILURE);2822 }2823 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {2824 psFree(object);2825 exit(EXIT_FAILURE);2826 }2827 psFree(object);2828 exit(EXIT_FAILURE);2829 }2830 2831 psFree(object);2832 }2833 2834 {2835 psMetadata *md;2836 detStackedImfileRow *object;2837 2838 md = psMetadataAlloc();2839 psFree(md);2840 exit(EXIT_FAILURE);2841 }2842 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {2843 psFree(md);2844 exit(EXIT_FAILURE);2845 }2846 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) {2847 psFree(md);2848 exit(EXIT_FAILURE);2849 }2850 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) {2851 psFree(md);2852 exit(EXIT_FAILURE);2853 }2854 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) {2855 psFree(md);2856 exit(EXIT_FAILURE);2857 }2858 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) {2859 psFree(md);2860 exit(EXIT_FAILURE);2861 }2862 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) {2863 psFree(md);2864 exit(EXIT_FAILURE);2865 }2866 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) {2867 psFree(md);2868 exit(EXIT_FAILURE);2869 }2870 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) {2871 psFree(md);2872 exit(EXIT_FAILURE);2873 }2874 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) {2875 psFree(md);2876 exit(EXIT_FAILURE);2877 }2878 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) {2879 psFree(md);2880 exit(EXIT_FAILURE);2881 }2882 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) {2883 psFree(md);2884 exit(EXIT_FAILURE);2885 }2886 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) {2887 psFree(md);2888 exit(EXIT_FAILURE);2889 }2890 psFree(md);2891 exit(EXIT_FAILURE);2892 }2893 2894 object = detStackedImfileObjectFromMetadata(md);2895 if (!object) {2896 psFree(md);2897 exit(EXIT_FAILURE);2898 }2899 2900 psFree(md);2901 2902 psFree(object);2903 exit(EXIT_FAILURE);2904 }2905 if (!object->iteration == -32) {2906 psFree(object);2907 exit(EXIT_FAILURE);2908 }2909 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {2910 psFree(object);2911 exit(EXIT_FAILURE);2912 }2913 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {2914 psFree(object);2915 exit(EXIT_FAILURE);2916 }2917 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {2918 psFree(object);2919 exit(EXIT_FAILURE);2920 }2921 if (!object->bg == 64.64) {2922 psFree(object);2923 exit(EXIT_FAILURE);2924 }2925 if (!object->bg_stdev == 64.64) {2926 psFree(object);2927 exit(EXIT_FAILURE);2928 }2929 if (!object->bg_mean_stdev == 64.64) {2930 psFree(object);2931 exit(EXIT_FAILURE);2932 }2933 if (!object->user_1 == 64.64) {2934 psFree(object);2935 exit(EXIT_FAILURE);2936 }2937 if (!object->user_2 == 64.64) {2938 psFree(object);2939 exit(EXIT_FAILURE);2940 }2941 if (!object->user_3 == 64.64) {2942 psFree(object);2943 exit(EXIT_FAILURE);2944 }2945 if (!object->user_4 == 64.64) {2946 psFree(object);2947 exit(EXIT_FAILURE);2948 }2949 if (!object->user_5 == 64.64) {2950 psFree(object);2951 exit(EXIT_FAILURE);2952 }2953 psFree(object);2954 exit(EXIT_FAILURE);2955 }2956 2957 psFree(object);2958 }2959 2960 {2961 psMetadata *md;2962 detNormalizedStatImfileRow *object;2963 2964 md = psMetadataAlloc();2965 psFree(md);2966 exit(EXIT_FAILURE);2967 }2968 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {2969 psFree(md);2970 exit(EXIT_FAILURE);2971 }2972 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) {2973 psFree(md);2974 exit(EXIT_FAILURE);2975 }2976 if (!psMetadataAddF32(md, PS_LIST_TAIL, "norm", 0, NULL, 32.32)) {2977 psFree(md);2978 exit(EXIT_FAILURE);2979 }2980 psFree(md);2981 exit(EXIT_FAILURE);2982 }2983 2984 object = detNormalizedStatImfileObjectFromMetadata(md);2985 if (!object) {2986 psFree(md);2987 exit(EXIT_FAILURE);2988 }2989 2990 psFree(md);2991 2992 psFree(object);2993 exit(EXIT_FAILURE);2994 }2995 if (!object->iteration == -32) {2996 psFree(object);2997 exit(EXIT_FAILURE);2998 }2999 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {3000 psFree(object);3001 exit(EXIT_FAILURE);3002 }3003 if (!object->norm == 32.32) {3004 psFree(object);3005 exit(EXIT_FAILURE);3006 }3007 psFree(object);3008 exit(EXIT_FAILURE);3009 }3010 3011 psFree(object);3012 }3013 3014 {3015 psMetadata *md;3016 detNormalizedImfileRow *object;3017 3018 md = psMetadataAlloc();3019 psFree(md);3020 exit(EXIT_FAILURE);3021 }3022 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {3023 psFree(md);3024 exit(EXIT_FAILURE);3025 }3026 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) {3027 psFree(md);3028 exit(EXIT_FAILURE);3029 }3030 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) {3031 psFree(md);3032 exit(EXIT_FAILURE);3033 }3034 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) {3035 psFree(md);3036 exit(EXIT_FAILURE);3037 }3038 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) {3039 psFree(md);3040 exit(EXIT_FAILURE);3041 }3042 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) {3043 psFree(md);3044 exit(EXIT_FAILURE);3045 }3046 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) {3047 psFree(md);3048 exit(EXIT_FAILURE);3049 }3050 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) {3051 psFree(md);3052 exit(EXIT_FAILURE);3053 }3054 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) {3055 psFree(md);3056 exit(EXIT_FAILURE);3057 }3058 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) {3059 psFree(md);3060 exit(EXIT_FAILURE);3061 }3062 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) {3063 psFree(md);3064 exit(EXIT_FAILURE);3065 }3066 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) {3067 psFree(md);3068 exit(EXIT_FAILURE);3069 }3070 psFree(md);3071 exit(EXIT_FAILURE);3072 }3073 3074 object = detNormalizedImfileObjectFromMetadata(md);3075 if (!object) {3076 psFree(md);3077 exit(EXIT_FAILURE);3078 }3079 3080 psFree(md);3081 3082 psFree(object);3083 exit(EXIT_FAILURE);3084 }3085 if (!object->iteration == -32) {3086 psFree(object);3087 exit(EXIT_FAILURE);3088 }3089 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {3090 psFree(object);3091 exit(EXIT_FAILURE);3092 }3093 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {3094 psFree(object);3095 exit(EXIT_FAILURE);3096 }3097 if (!object->bg == 64.64) {3098 psFree(object);3099 exit(EXIT_FAILURE);3100 }3101 if (!object->bg_stdev == 64.64) {3102 psFree(object);3103 exit(EXIT_FAILURE);3104 }3105 if (!object->bg_mean_stdev == 64.64) {3106 psFree(object);3107 exit(EXIT_FAILURE);3108 }3109 if (!object->user_1 == 64.64) {3110 psFree(object);3111 exit(EXIT_FAILURE);3112 }3113 if (!object->user_2 == 64.64) {3114 psFree(object);3115 exit(EXIT_FAILURE);3116 }3117 if (!object->user_3 == 64.64) {3118 psFree(object);3119 exit(EXIT_FAILURE);3120 }3121 if (!object->user_4 == 64.64) {3122 psFree(object);3123 exit(EXIT_FAILURE);3124 }3125 if (!object->user_5 == 64.64) {3126 psFree(object);3127 exit(EXIT_FAILURE);3128 }3129 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {3130 psFree(object);3131 exit(EXIT_FAILURE);3132 }3133 psFree(object);3134 exit(EXIT_FAILURE);3135 }3136 3137 psFree(object);3138 }3139 3140 {3141 psMetadata *md;3142 detNormalizedExpRow *object;3143 3144 md = psMetadataAlloc();3145 psFree(md);3146 exit(EXIT_FAILURE);3147 }3148 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {3149 psFree(md);3150 exit(EXIT_FAILURE);3151 }3152 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) {3153 psFree(md);3154 exit(EXIT_FAILURE);3155 }3156 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) {3157 psFree(md);3158 exit(EXIT_FAILURE);3159 }3160 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) {3161 psFree(md);3162 exit(EXIT_FAILURE);3163 }3164 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) {3165 psFree(md);3166 exit(EXIT_FAILURE);3167 }3168 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) {3169 psFree(md);3170 exit(EXIT_FAILURE);3171 }3172 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) {3173 psFree(md);3174 exit(EXIT_FAILURE);3175 }3176 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) {3177 psFree(md);3178 exit(EXIT_FAILURE);3179 }3180 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) {3181 psFree(md);3182 exit(EXIT_FAILURE);3183 }3184 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) {3185 psFree(md);3186 exit(EXIT_FAILURE);3187 }3188 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) {3189 psFree(md);3190 exit(EXIT_FAILURE);3191 }3192 psFree(md);3193 exit(EXIT_FAILURE);3194 }3195 3196 object = detNormalizedExpObjectFromMetadata(md);3197 if (!object) {3198 psFree(md);3199 exit(EXIT_FAILURE);3200 }3201 3202 psFree(md);3203 3204 psFree(object);3205 exit(EXIT_FAILURE);3206 }3207 if (!object->iteration == -32) {3208 psFree(object);3209 exit(EXIT_FAILURE);3210 }3211 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {3212 psFree(object);3213 exit(EXIT_FAILURE);3214 }3215 if (!object->bg == 64.64) {3216 psFree(object);3217 exit(EXIT_FAILURE);3218 }3219 if (!object->bg_stdev == 64.64) {3220 psFree(object);3221 exit(EXIT_FAILURE);3222 }3223 if (!object->bg_mean_stdev == 64.64) {3224 psFree(object);3225 exit(EXIT_FAILURE);3226 }3227 if (!object->user_1 == 64.64) {3228 psFree(object);3229 exit(EXIT_FAILURE);3230 }3231 if (!object->user_2 == 64.64) {3232 psFree(object);3233 exit(EXIT_FAILURE);3234 }3235 if (!object->user_3 == 64.64) {3236 psFree(object);3237 exit(EXIT_FAILURE);3238 }3239 if (!object->user_4 == 64.64) {3240 psFree(object);3241 exit(EXIT_FAILURE);3242 }3243 if (!object->user_5 == 64.64) {3244 psFree(object);3245 exit(EXIT_FAILURE);3246 }3247 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {3248 psFree(object);3249 exit(EXIT_FAILURE);3250 }3251 psFree(object);3252 exit(EXIT_FAILURE);3253 }3254 3255 psFree(object);3256 }3257 3258 {3259 psMetadata *md;3260 detResidImfileRow *object;3261 3262 md = psMetadataAlloc();3263 psFree(md);3264 exit(EXIT_FAILURE);3265 }3266 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {3267 psFree(md);3268 exit(EXIT_FAILURE);3269 }3270 psFree(md);3271 exit(EXIT_FAILURE);3272 }3273 if (!psMetadataAddStr(md, PS_LIST_TAIL, "class_id", 0, NULL, "a string")) {3274 psFree(md);3275 exit(EXIT_FAILURE);3276 }3277 if (!psMetadataAddStr(md, PS_LIST_TAIL, "uri", 0, NULL, "a string")) {3278 psFree(md);3279 exit(EXIT_FAILURE);3280 }3281 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) {3282 psFree(md);3283 exit(EXIT_FAILURE);3284 }3285 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) {3286 psFree(md);3287 exit(EXIT_FAILURE);3288 }3289 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) {3290 psFree(md);3291 exit(EXIT_FAILURE);3292 }3293 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) {3294 psFree(md);3295 exit(EXIT_FAILURE);3296 }3297 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bin_stdev", 0, NULL, 64.64)) {3298 psFree(md);3299 exit(EXIT_FAILURE);3300 }3301 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_0", 0, NULL, 64.64)) {3302 psFree(md);3303 exit(EXIT_FAILURE);3304 }3305 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_1", 0, NULL, 64.64)) {3306 psFree(md);3307 exit(EXIT_FAILURE);3308 }3309 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_2", 0, NULL, 64.64)) {3310 psFree(md);3311 exit(EXIT_FAILURE);3312 }3313 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) {3314 psFree(md);3315 exit(EXIT_FAILURE);3316 }3317 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) {3318 psFree(md);3319 exit(EXIT_FAILURE);3320 }3321 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) {3322 psFree(md);3323 exit(EXIT_FAILURE);3324 }3325 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) {3326 psFree(md);3327 exit(EXIT_FAILURE);3328 }3329 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) {3330 psFree(md);3331 exit(EXIT_FAILURE);3332 }3333 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) {3334 psFree(md);3335 exit(EXIT_FAILURE);3336 }3337 psFree(md);3338 exit(EXIT_FAILURE);3339 }3340 3341 object = detResidImfileObjectFromMetadata(md);3342 if (!object) {3343 psFree(md);3344 exit(EXIT_FAILURE);3345 }3346 3347 psFree(md);3348 3349 psFree(object);3350 exit(EXIT_FAILURE);3351 }3352 if (!object->iteration == -32) {3353 psFree(object);3354 exit(EXIT_FAILURE);3355 }3356 psFree(object);3357 exit(EXIT_FAILURE);3358 }3359 if (strncmp(object->class_id, "a string", MAX_STRING_LENGTH)) {3360 psFree(object);3361 exit(EXIT_FAILURE);3362 }3363 if (strncmp(object->uri, "a string", MAX_STRING_LENGTH)) {3364 psFree(object);3365 exit(EXIT_FAILURE);3366 }3367 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {3368 psFree(object);3369 exit(EXIT_FAILURE);3370 }3371 if (!object->bg == 64.64) {3372 psFree(object);3373 exit(EXIT_FAILURE);3374 }3375 if (!object->bg_stdev == 64.64) {3376 psFree(object);3377 exit(EXIT_FAILURE);3378 }3379 if (!object->bg_mean_stdev == 64.64) {3380 psFree(object);3381 exit(EXIT_FAILURE);3382 }3383 if (!object->bin_stdev == 64.64) {3384 psFree(object);3385 exit(EXIT_FAILURE);3386 }3387 if (!object->fringe_0 == 64.64) {3388 psFree(object);3389 exit(EXIT_FAILURE);3390 }3391 if (!object->fringe_1 == 64.64) {3392 psFree(object);3393 exit(EXIT_FAILURE);3394 }3395 if (!object->fringe_2 == 64.64) {3396 psFree(object);3397 exit(EXIT_FAILURE);3398 }3399 if (!object->user_1 == 64.64) {3400 psFree(object);3401 exit(EXIT_FAILURE);3402 }3403 if (!object->user_2 == 64.64) {3404 psFree(object);3405 exit(EXIT_FAILURE);3406 }3407 if (!object->user_3 == 64.64) {3408 psFree(object);3409 exit(EXIT_FAILURE);3410 }3411 if (!object->user_4 == 64.64) {3412 psFree(object);3413 exit(EXIT_FAILURE);3414 }3415 if (!object->user_5 == 64.64) {3416 psFree(object);3417 exit(EXIT_FAILURE);3418 }3419 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {3420 psFree(object);3421 exit(EXIT_FAILURE);3422 }3423 psFree(object);3424 exit(EXIT_FAILURE);3425 }3426 3427 psFree(object);3428 }3429 3430 {3431 psMetadata *md;3432 detResidExpRow *object;3433 3434 md = psMetadataAlloc();3435 psFree(md);3436 exit(EXIT_FAILURE);3437 }3438 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {3439 psFree(md);3440 exit(EXIT_FAILURE);3441 }3442 psFree(md);3443 exit(EXIT_FAILURE);3444 }3445 if (!psMetadataAddStr(md, PS_LIST_TAIL, "recipe", 0, NULL, "a string")) {3446 psFree(md);3447 exit(EXIT_FAILURE);3448 }3449 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) {3450 psFree(md);3451 exit(EXIT_FAILURE);3452 }3453 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) {3454 psFree(md);3455 exit(EXIT_FAILURE);3456 }3457 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) {3458 psFree(md);3459 exit(EXIT_FAILURE);3460 }3461 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bin_stdev", 0, NULL, 64.64)) {3462 psFree(md);3463 exit(EXIT_FAILURE);3464 }3465 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_0", 0, NULL, 64.64)) {3466 psFree(md);3467 exit(EXIT_FAILURE);3468 }3469 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_1", 0, NULL, 64.64)) {3470 psFree(md);3471 exit(EXIT_FAILURE);3472 }3473 if (!psMetadataAddF64(md, PS_LIST_TAIL, "fringe_2", 0, NULL, 64.64)) {3474 psFree(md);3475 exit(EXIT_FAILURE);3476 }3477 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_1", 0, NULL, 64.64)) {3478 psFree(md);3479 exit(EXIT_FAILURE);3480 }3481 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_2", 0, NULL, 64.64)) {3482 psFree(md);3483 exit(EXIT_FAILURE);3484 }3485 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_3", 0, NULL, 64.64)) {3486 psFree(md);3487 exit(EXIT_FAILURE);3488 }3489 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_4", 0, NULL, 64.64)) {3490 psFree(md);3491 exit(EXIT_FAILURE);3492 }3493 if (!psMetadataAddF64(md, PS_LIST_TAIL, "user_5", 0, NULL, 64.64)) {3494 psFree(md);3495 exit(EXIT_FAILURE);3496 }3497 if (!psMetadataAddStr(md, PS_LIST_TAIL, "path_base", 0, NULL, "a string")) {3498 psFree(md);3499 exit(EXIT_FAILURE);3500 }3501 if (!psMetadataAdd(md, PS_LIST_TAIL, "accept", PS_DATA_BOOL, NULL, true)) {3502 psFree(md);3503 exit(EXIT_FAILURE);3504 }3505 psFree(md);3506 exit(EXIT_FAILURE);3507 }3508 3509 object = detResidExpObjectFromMetadata(md);3510 if (!object) {3511 psFree(md);3512 exit(EXIT_FAILURE);3513 }3514 3515 psFree(md);3516 3517 psFree(object);3518 exit(EXIT_FAILURE);3519 }3520 if (!object->iteration == -32) {3521 psFree(object);3522 exit(EXIT_FAILURE);3523 }3524 psFree(object);3525 exit(EXIT_FAILURE);3526 }3527 if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {3528 psFree(object);3529 exit(EXIT_FAILURE);3530 }3531 if (!object->bg == 64.64) {3532 psFree(object);3533 exit(EXIT_FAILURE);3534 }3535 if (!object->bg_stdev == 64.64) {3536 psFree(object);3537 exit(EXIT_FAILURE);3538 }3539 if (!object->bg_mean_stdev == 64.64) {3540 psFree(object);3541 exit(EXIT_FAILURE);3542 }3543 if (!object->bin_stdev == 64.64) {3544 psFree(object);3545 exit(EXIT_FAILURE);3546 }3547 if (!object->fringe_0 == 64.64) {3548 psFree(object);3549 exit(EXIT_FAILURE);3550 }3551 if (!object->fringe_1 == 64.64) {3552 psFree(object);3553 exit(EXIT_FAILURE);3554 }3555 if (!object->fringe_2 == 64.64) {3556 psFree(object);3557 exit(EXIT_FAILURE);3558 }3559 if (!object->user_1 == 64.64) {3560 psFree(object);3561 exit(EXIT_FAILURE);3562 }3563 if (!object->user_2 == 64.64) {3564 psFree(object);3565 exit(EXIT_FAILURE);3566 }3567 if (!object->user_3 == 64.64) {3568 psFree(object);3569 exit(EXIT_FAILURE);3570 }3571 if (!object->user_4 == 64.64) {3572 psFree(object);3573 exit(EXIT_FAILURE);3574 }3575 if (!object->user_5 == 64.64) {3576 psFree(object);3577 exit(EXIT_FAILURE);3578 }3579 if (strncmp(object->path_base, "a string", MAX_STRING_LENGTH)) {3580 psFree(object);3581 exit(EXIT_FAILURE);3582 }3583 if (!object->accept == true) {3584 psFree(object);3585 exit(EXIT_FAILURE);3586 }3587 psFree(object);3588 exit(EXIT_FAILURE);3589 }3590 3591 psFree(object);3592 }3593 3594 {3595 psMetadata *md;3596 detRunSummaryRow *object;3597 3598 md = psMetadataAlloc();3599 psFree(md);3600 exit(EXIT_FAILURE);3601 }3602 if (!psMetadataAddS32(md, PS_LIST_TAIL, "iteration", 0, NULL, -32)) {3603 psFree(md);3604 exit(EXIT_FAILURE);3605 }3606 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg", 0, NULL, 64.64)) {3607 psFree(md);3608 exit(EXIT_FAILURE);3609 }3610 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_stdev", 0, NULL, 64.64)) {3611 psFree(md);3612 exit(EXIT_FAILURE);3613 }3614 if (!psMetadataAddF64(md, PS_LIST_TAIL, "bg_mean_stdev", 0, NULL, 64.64)) {3615 psFree(md);3616 exit(EXIT_FAILURE);3617 }3618 if (!psMetadataAdd(md, PS_LIST_TAIL, "accept", PS_DATA_BOOL, NULL, true)) {3619 psFree(md);3620 exit(EXIT_FAILURE);3621 }3622 psFree(md);3623 exit(EXIT_FAILURE);3624 }3625 3626 object = detRunSummaryObjectFromMetadata(md);3627 if (!object) {3628 psFree(md);3629 exit(EXIT_FAILURE);3630 }3631 3632 psFree(md);3633 3634 psFree(object);3635 exit(EXIT_FAILURE);3636 }3637 if (!object->iteration == -32) {3638 psFree(object);3639 exit(EXIT_FAILURE);3640 }3641 if (!object->bg == 64.64) {3642 psFree(object);3643 exit(EXIT_FAILURE);3644 }3645 if (!object->bg_stdev == 64.64) {3646 psFree(object);3647 exit(EXIT_FAILURE);3648 }3649 if (!object->bg_mean_stdev == 64.64) {3650 psFree(object);3651 exit(EXIT_FAILURE);3652 }3653 if (!object->accept == true) {3654 psFree(object);3655 exit(EXIT_FAILURE);3656 }3657 4301 psFree(object); 3658 4302 exit(EXIT_FAILURE); -
trunk/ippdb/tests/selectrowsfits.c
r15420 r15421 21 21 } 22 22 23 if (!pzDataStoreSelectRowsFits(dbh, fits, NULL, 1)) { 24 exit(EXIT_FAILURE); 25 } 26 27 psFree(fits); 28 psDBCleanup(dbh); 29 } 30 31 { 32 psDB *dbh; 33 psFits *fits; 34 35 dbh = psDBInit("localhost", "test", NULL, "test"); 36 if (!dbh) { 37 exit(EXIT_FAILURE); 38 } 39 40 fits = psFitsOpen(TMP_FILENAME, "w"); 41 if (!fits) { 42 exit(EXIT_FAILURE); 43 } 44 23 45 if (!summitExpSelectRowsFits(dbh, fits, NULL, 1)) { 24 46 exit(EXIT_FAILURE); … … 285 307 } 286 308 287 if (!chipInputImfileSelectRowsFits(dbh, fits, NULL, 1)) {288 exit(EXIT_FAILURE);289 }290 291 psFree(fits);292 psDBCleanup(dbh);293 }294 295 {296 psDB *dbh;297 psFits *fits;298 299 dbh = psDBInit("localhost", "test", NULL, "test");300 if (!dbh) {301 exit(EXIT_FAILURE);302 }303 304 fits = psFitsOpen(TMP_FILENAME, "w");305 if (!fits) {306 exit(EXIT_FAILURE);307 }308 309 309 if (!chipProcessedImfileSelectRowsFits(dbh, fits, NULL, 1)) { 310 310 exit(EXIT_FAILURE); … … 858 858 859 859 if (!detRunSummarySelectRowsFits(dbh, fits, NULL, 1)) { 860 exit(EXIT_FAILURE); 861 } 862 863 psFree(fits); 864 psDBCleanup(dbh); 865 } 866 867 { 868 psDB *dbh; 869 psFits *fits; 870 871 dbh = psDBInit("localhost", "test", NULL, "test"); 872 if (!dbh) { 873 exit(EXIT_FAILURE); 874 } 875 876 fits = psFitsOpen(TMP_FILENAME, "w"); 877 if (!fits) { 878 exit(EXIT_FAILURE); 879 } 880 881 if (!detRegisteredImfileSelectRowsFits(dbh, fits, NULL, 1)) { 882 exit(EXIT_FAILURE); 883 } 884 885 psFree(fits); 886 psDBCleanup(dbh); 887 } 888 889 { 890 psDB *dbh; 891 psFits *fits; 892 893 dbh = psDBInit("localhost", "test", NULL, "test"); 894 if (!dbh) { 895 exit(EXIT_FAILURE); 896 } 897 898 fits = psFitsOpen(TMP_FILENAME, "w"); 899 if (!fits) { 900 exit(EXIT_FAILURE); 901 } 902 903 if (!detCorrectedExpSelectRowsFits(dbh, fits, NULL, 1)) { 904 exit(EXIT_FAILURE); 905 } 906 907 psFree(fits); 908 psDBCleanup(dbh); 909 } 910 911 { 912 psDB *dbh; 913 psFits *fits; 914 915 dbh = psDBInit("localhost", "test", NULL, "test"); 916 if (!dbh) { 917 exit(EXIT_FAILURE); 918 } 919 920 fits = psFitsOpen(TMP_FILENAME, "w"); 921 if (!fits) { 922 exit(EXIT_FAILURE); 923 } 924 925 if (!detCorrectedImfileSelectRowsFits(dbh, fits, NULL, 1)) { 926 exit(EXIT_FAILURE); 927 } 928 929 psFree(fits); 930 psDBCleanup(dbh); 931 } 932 933 { 934 psDB *dbh; 935 psFits *fits; 936 937 dbh = psDBInit("localhost", "test", NULL, "test"); 938 if (!dbh) { 939 exit(EXIT_FAILURE); 940 } 941 942 fits = psFitsOpen(TMP_FILENAME, "w"); 943 if (!fits) { 944 exit(EXIT_FAILURE); 945 } 946 947 if (!magicRunSelectRowsFits(dbh, fits, NULL, 1)) { 948 exit(EXIT_FAILURE); 949 } 950 951 psFree(fits); 952 psDBCleanup(dbh); 953 } 954 955 { 956 psDB *dbh; 957 psFits *fits; 958 959 dbh = psDBInit("localhost", "test", NULL, "test"); 960 if (!dbh) { 961 exit(EXIT_FAILURE); 962 } 963 964 fits = psFitsOpen(TMP_FILENAME, "w"); 965 if (!fits) { 966 exit(EXIT_FAILURE); 967 } 968 969 if (!magicInputSkyfileSelectRowsFits(dbh, fits, NULL, 1)) { 970 exit(EXIT_FAILURE); 971 } 972 973 psFree(fits); 974 psDBCleanup(dbh); 975 } 976 977 { 978 psDB *dbh; 979 psFits *fits; 980 981 dbh = psDBInit("localhost", "test", NULL, "test"); 982 if (!dbh) { 983 exit(EXIT_FAILURE); 984 } 985 986 fits = psFitsOpen(TMP_FILENAME, "w"); 987 if (!fits) { 988 exit(EXIT_FAILURE); 989 } 990 991 if (!magicTreeSelectRowsFits(dbh, fits, NULL, 1)) { 992 exit(EXIT_FAILURE); 993 } 994 995 psFree(fits); 996 psDBCleanup(dbh); 997 } 998 999 { 1000 psDB *dbh; 1001 psFits *fits; 1002 1003 dbh = psDBInit("localhost", "test", NULL, "test"); 1004 if (!dbh) { 1005 exit(EXIT_FAILURE); 1006 } 1007 1008 fits = psFitsOpen(TMP_FILENAME, "w"); 1009 if (!fits) { 1010 exit(EXIT_FAILURE); 1011 } 1012 1013 if (!magicNodeResultSelectRowsFits(dbh, fits, NULL, 1)) { 1014 exit(EXIT_FAILURE); 1015 } 1016 1017 psFree(fits); 1018 psDBCleanup(dbh); 1019 } 1020 1021 { 1022 psDB *dbh; 1023 psFits *fits; 1024 1025 dbh = psDBInit("localhost", "test", NULL, "test"); 1026 if (!dbh) { 1027 exit(EXIT_FAILURE); 1028 } 1029 1030 fits = psFitsOpen(TMP_FILENAME, "w"); 1031 if (!fits) { 1032 exit(EXIT_FAILURE); 1033 } 1034 1035 if (!magicMaskSelectRowsFits(dbh, fits, NULL, 1)) { 1036 exit(EXIT_FAILURE); 1037 } 1038 1039 psFree(fits); 1040 psDBCleanup(dbh); 1041 } 1042 1043 { 1044 psDB *dbh; 1045 psFits *fits; 1046 1047 dbh = psDBInit("localhost", "test", NULL, "test"); 1048 if (!dbh) { 1049 exit(EXIT_FAILURE); 1050 } 1051 1052 fits = psFitsOpen(TMP_FILENAME, "w"); 1053 if (!fits) { 1054 exit(EXIT_FAILURE); 1055 } 1056 1057 if (!magicSkyfileMaskSelectRowsFits(dbh, fits, NULL, 1)) { 860 1058 exit(EXIT_FAILURE); 861 1059 }
Note:
See TracChangeset
for help on using the changeset viewer.
