IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jun 21, 2007, 2:10:11 PM (19 years ago)
Author:
Paul Price
Message:

Changes to multiple packages in order to use "reduction classes" to
specify recipe names. The idea is to give a group of recipes a
symbolic name, which distinguish how the reduction is to be performed,
without going to all the trouble of changing the recipes themselves.

For example, we might want to turn off the usual
overscan/bias/dark/shutter/flat processing and only do photometry if
we have pre-processed data. Gene also wants a similar ability for
building the flat-field correction.

Added a REDUCTION metadata to the camera configuration that contains
multiple METADATA entries that have recipes for different processing
steps. PS::IPP::Config has a 'reduction' function to return the
appropriate recipe, and this is now used in the scripts. Updated
ippTasks to use these where appropriate.

This necessitated changing the database, so that the desired reduction
class can be specified in the right places. Instructions on converting
an extant database are in dbconfig/changes.txt.

Tested with the SIMTEST, and it works.

There is currently no way of specifying the reduction class when an
exposure proceeds from 'register' to 'chip' (it has to be hacked in
the database directly: "update chipPendingExp set reduction =
'SOME_CLASS' where ..."), but it can be specified when adding a
detrend run or queuing chips with 'chiptool -queue' (the '-reduction'
option). Also, the 'recipe' columns remain throughout the detrend
tables, and they continue to be populated with the actual recipe used
(rather than the reduction class; but that is contained in the
detRun).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippdb/tests/alloc.c

    r13739 r13937  
    610610            exit(EXIT_FAILURE);
    611611        }
    612         if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
     612        if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) {
    613613            psFree(object);
    614614            exit(EXIT_FAILURE);
     
    680680            exit(EXIT_FAILURE);
    681681        }
    682         if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
     682        if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) {
    683683            psFree(object);
    684684            exit(EXIT_FAILURE);
     
    843843            exit(EXIT_FAILURE);
    844844        }
    845         if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
     845        if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) {
    846846            psFree(object);
    847847            exit(EXIT_FAILURE);
     
    884884            exit(EXIT_FAILURE);
    885885        }
    886         if (strncmp(object->recipe, "a string", MAX_STRING_LENGTH)) {
     886        if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) {
    887887            psFree(object);
    888888            exit(EXIT_FAILURE);
     
    13271327        detRunRow       *object;
    13281328
    1329         object = detRunRowAlloc(-64, -32, "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    );
     1329        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    );
    13301330
    13311331        if (!object) {
     
    13701370        }
    13711371        if (strncmp(object->exp_type, "a string", MAX_STRING_LENGTH)) {
     1372            psFree(object);
     1373            exit(EXIT_FAILURE);
     1374        }
     1375        if (strncmp(object->reduction, "a string", MAX_STRING_LENGTH)) {
    13721376            psFree(object);
    13731377            exit(EXIT_FAILURE);
Note: See TracChangeset for help on using the changeset viewer.