IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jun 17, 2008, 12:16:38 PM (18 years ago)
Author:
Paul Price
Message:

Changing use of psDB* to pmConfig* so that the database handle only has to be set up when required.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psModules/src/concepts/pmConcepts.c

    r18104 r18163  
    1010#include <string.h>
    1111
     12#include "pmConfig.h"
    1213#include "pmHDU.h"
    1314#include "pmFPA.h"
     
    195196                         unsigned int *read,     // What's already been read
    196197                         pmConceptSource source, // The source of the concepts to read
    197                          psDB *db,      // Database handle
     198                         pmConfig *config, // Configuration
    198199                         psMetadata *target // Place into which to read the concepts
    199200                        )
     
    256257    #ifdef HAVE_PSDB
    257258    if (source & PM_CONCEPT_SOURCE_DATABASE && !(*read & PM_CONCEPT_SOURCE_DATABASE)) {
    258         if (p_pmConceptsReadFromDatabase(target, *specs, fpa, chip, cell, db)) {
     259        if (p_pmConceptsReadFromDatabase(target, *specs, fpa, chip, cell, config)) {
    259260            *read |= PM_CONCEPT_SOURCE_DATABASE;
    260261        } else {
     
    276277                          const pmCell *cell, // The cell
    277278                          pmConceptSource source, // The source of the concepts to write
    278                           psDB *db,      // Database handle
     279                          pmConfig *config, // Configuration
    279280                          const psMetadata *concepts // The concepts to write out
    280281                         )
     
    299300    }
    300301    if (source & PM_CONCEPT_SOURCE_DATABASE) {
    301         p_pmConceptsWriteToDatabase(*specs, fpa, chip, cell, db, concepts);
     302        p_pmConceptsWriteToDatabase(*specs, fpa, chip, cell, config, concepts);
    302303    }
    303304
     
    306307
    307308
    308 bool pmConceptsRead(pmFPA *fpa, pmChip *chip, pmCell *cell, pmConceptSource source, psDB *db)
     309bool pmConceptsRead(pmFPA *fpa, pmChip *chip, pmCell *cell, pmConceptSource source, pmConfig *config)
    309310{
    310311    PS_ASSERT_PTR_NON_NULL(fpa, false);
    311     bool success = conceptsRead(&conceptsFPA, fpa, chip, cell, &fpa->conceptsRead, source, db, fpa->concepts);
     312    bool success = conceptsRead(&conceptsFPA, fpa, chip, cell, &fpa->conceptsRead, source,
     313                                config, fpa->concepts);
    312314    if (chip) {
    313         success &= conceptsRead(&conceptsChip, fpa, chip, cell, &chip->conceptsRead, source, db, chip->concepts);
     315        success &= conceptsRead(&conceptsChip, fpa, chip, cell, &chip->conceptsRead, source,
     316                                config, chip->concepts);
    314317    }
    315318    if (cell) {
    316         success &= conceptsRead(&conceptsCell, fpa, chip, cell, &cell->conceptsRead, source, db, cell->concepts);
     319        success &= conceptsRead(&conceptsCell, fpa, chip, cell, &cell->conceptsRead, source,
     320                                config, cell->concepts);
    317321    }
    318322
     
    329333
    330334
    331 bool pmConceptsReadFPA(pmFPA *fpa, pmConceptSource source, bool propagateDown, psDB *db)
     335bool pmConceptsReadFPA(pmFPA *fpa, pmConceptSource source, bool propagateDown, pmConfig *config)
    332336{
    333337    PS_ASSERT_PTR_NON_NULL(fpa, false);
    334338    psTrace("psModules.concepts", 5, "Reading FPA concepts: %p %p\n", conceptsFPA, fpa->concepts);
    335     bool success = conceptsRead(&conceptsFPA, fpa, NULL, NULL, &fpa->conceptsRead, source, db, fpa->concepts);
     339    bool success = conceptsRead(&conceptsFPA, fpa, NULL, NULL, &fpa->conceptsRead, source,
     340                                config, fpa->concepts);
    336341    if (propagateDown) {
    337342        psArray *chips = fpa->chips;    // Array of chips
     
    339344            pmChip *chip = chips->data[i]; // Chip of interest
    340345            if (chip) {
    341                 success &= pmConceptsReadChip(chip, source, false, true, db);
     346                success &= pmConceptsReadChip(chip, source, false, true, config);
    342347            }
    343348        }
     
    347352}
    348353
    349 bool pmConceptsWriteFPA(const pmFPA *fpa, pmConceptSource source, bool propagateDown, psDB *db)
     354bool pmConceptsWriteFPA(const pmFPA *fpa, pmConceptSource source, bool propagateDown, pmConfig *config)
    350355{
    351356    PS_ASSERT_PTR_NON_NULL(fpa, false);
    352357    psTrace("psModules.concepts", 5, "Writing FPA concepts: %p %p\n", conceptsFPA, fpa->concepts);
    353     bool success = conceptsWrite(&conceptsFPA, fpa, NULL, NULL, source, db, fpa->concepts);
     358    bool success = conceptsWrite(&conceptsFPA, fpa, NULL, NULL, source, config, fpa->concepts);
    354359    if (propagateDown) {
    355360        psArray *chips = fpa->chips;        // Array of chips
     
    357362            pmChip *chip = chips->data[i];  // Chip of interest
    358363            if (chip && !chip->hdu) {
    359                 success &= pmConceptsWriteChip(chip, source, false, true, db);
     364                success &= pmConceptsWriteChip(chip, source, false, true, config);
    360365            }
    361366        }
     
    372377
    373378bool pmConceptsReadChip(pmChip *chip, pmConceptSource source, bool propagateUp,
    374                         bool propagateDown, psDB *db)
     379                        bool propagateDown, pmConfig *config)
    375380{
    376381    PS_ASSERT_PTR_NON_NULL(chip, false);
    377382    psTrace("psModules.concepts", 5, "Reading chip concepts: %p %p\n", conceptsChip, chip->concepts);
    378383    pmFPA *fpa = chip->parent;          // FPA to which the chip belongs
    379     bool success = conceptsRead(&conceptsChip, fpa, chip, NULL, &chip->conceptsRead, source, db,
     384    bool success = conceptsRead(&conceptsChip, fpa, chip, NULL, &chip->conceptsRead, source, config,
    380385                                chip->concepts);
    381386    if (propagateUp) {
    382         success &= conceptsRead(&conceptsFPA, fpa, chip, NULL, &fpa->conceptsRead, source, db, fpa->concepts);
     387        success &= conceptsRead(&conceptsFPA, fpa, chip, NULL, &fpa->conceptsRead, source,
     388                                config, fpa->concepts);
    383389    }
    384390    if (propagateDown) {
     
    387393            pmCell *cell = cells->data[i];  // Cell of interest
    388394            if (cell) {
    389                 success &= pmConceptsReadCell(cell, source, false, db);
     395                success &= pmConceptsReadCell(cell, source, false, config);
    390396            }
    391397        }
     
    395401
    396402bool pmConceptsWriteChip(const pmChip *chip, pmConceptSource source, bool propagateUp,
    397                          bool propagateDown, psDB *db)
     403                         bool propagateDown, pmConfig *config)
    398404{
    399405    PS_ASSERT_PTR_NON_NULL(chip, false);
    400406    psTrace("psModules.concepts", 5, "Writing chip concepts: %p %p\n", conceptsChip, chip->concepts);
    401407    pmFPA *fpa = chip->parent;          // FPA to which the chip belongs
    402     bool success = conceptsWrite(&conceptsChip, fpa, chip, NULL, source, db, chip->concepts);
     408    bool success = conceptsWrite(&conceptsChip, fpa, chip, NULL, source, config, chip->concepts);
    403409    if (propagateUp && !fpa->hdu) {
    404         success &= conceptsWrite(&conceptsFPA, fpa, chip, NULL, source, db, fpa->concepts);
     410        success &= conceptsWrite(&conceptsFPA, fpa, chip, NULL, source, config, fpa->concepts);
    405411    }
    406412    if (propagateDown) {
     
    409415            pmCell *cell = cells->data[i];  // Cell of interest
    410416            if (cell && !cell->hdu) {
    411                 success &= pmConceptsWriteCell(cell, source, false, db);
     417                success &= pmConceptsWriteCell(cell, source, false, config);
    412418            }
    413419        }
     
    423429}
    424430
    425 bool pmConceptsReadCell(pmCell *cell, pmConceptSource source, bool propagateUp, psDB *db)
     431bool pmConceptsReadCell(pmCell *cell, pmConceptSource source, bool propagateUp, pmConfig *config)
    426432{
    427433    PS_ASSERT_PTR_NON_NULL(cell, false);
     
    430436    pmFPA *fpa = chip->parent;          // FPA to which the chip belongs
    431437
    432     bool success = conceptsRead(&conceptsCell, fpa, chip, cell, &cell->conceptsRead, source, db,
     438    bool success = conceptsRead(&conceptsCell, fpa, chip, cell, &cell->conceptsRead, source, config,
    433439                                cell->concepts);
    434440    if (propagateUp) {
    435         success &= conceptsRead(&conceptsChip, fpa, chip, cell, &chip->conceptsRead, source, db,
     441        success &= conceptsRead(&conceptsChip, fpa, chip, cell, &chip->conceptsRead, source, config,
    436442                                chip->concepts);
    437         success &= conceptsRead(&conceptsFPA, fpa, chip, cell, &fpa->conceptsRead, source, db,
     443        success &= conceptsRead(&conceptsFPA, fpa, chip, cell, &fpa->conceptsRead, source, config,
    438444                                fpa->concepts);
    439445    }
     
    442448}
    443449
    444 bool pmConceptsWriteCell(const pmCell *cell, pmConceptSource source, bool propagateUp, psDB *db)
     450bool pmConceptsWriteCell(const pmCell *cell, pmConceptSource source, bool propagateUp, pmConfig *config)
    445451{
    446452    PS_ASSERT_PTR_NON_NULL(cell, false);
     
    449455    pmFPA *fpa = chip->parent;          // FPA to which the chip belongs
    450456
    451     bool success = conceptsWrite(&conceptsCell, fpa, chip, cell, source, db, cell->concepts);
     457    bool success = conceptsWrite(&conceptsCell, fpa, chip, cell, source, config, cell->concepts);
    452458    if (propagateUp) {
    453459        if (!chip->hdu) {
    454             success &= conceptsWrite(&conceptsChip, fpa, chip, cell, source, db, chip->concepts);
     460            success &= conceptsWrite(&conceptsChip, fpa, chip, cell, source, config, chip->concepts);
    455461            if (!fpa->hdu) {
    456                 success &= conceptsWrite(&conceptsFPA, fpa, chip, cell, source, db, fpa->concepts);
     462                success &= conceptsWrite(&conceptsFPA, fpa, chip, cell, source, config, fpa->concepts);
    457463            }
    458464        }
Note: See TracChangeset for help on using the changeset viewer.