IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 37051


Ignore:
Timestamp:
Jul 17, 2014, 10:22:59 AM (12 years ago)
Author:
eugene
Message:

handle new cmf formats; add -photcode option to pmConfig

Location:
trunk/psModules/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/psModules/src/config/pmConfig.c

    r36375 r37051  
    965965                                  "Original replaced by -R option", newRule);
    966966        }
     967        psFree(camerasIter);
     968    }
     969
     970    // Look for command-line options for files to replace
     971    while ((argNum = psArgumentGet(*argc, argv, "-photcode-rule")) > 0) {
     972        psArgumentRemove(argNum, argc, argv);
     973        if (argNum >= *argc) {
     974            psError(PM_ERR_CONFIG, true,
     975                    "-photcode-rule provided without new rule.");
     976            psFree(config);
     977            return NULL;
     978        }
     979
     980        psString newrule = psStringCopy(argv[argNum]); // The filerule, to be modified
     981        psArgumentRemove(argNum, argc, argv);
     982
     983        psMetadata *cameras = psMetadataLookupMetadata(NULL, config->system, "CAMERAS"); // List of cameras
     984        if (!cameras) {
     985            psError(PM_ERR_CONFIG, false, "Unable to find CAMERAS in the site configuration.\n");
     986            return false;
     987        }
     988
     989        psMetadataIterator *camerasIter = psMetadataIteratorAlloc(cameras, PS_LIST_HEAD, NULL); // Iterator
     990        psMetadataItem *cameraItem;     // Item from iteration
     991        while ((cameraItem = psMetadataGetAndIncrement(camerasIter))) {
     992            // Silently ignore problems --- they will be caught later, because if the user wants the nominated
     993            // file and it's not available for that camera, then they will know.
     994
     995            if (cameraItem->type != PS_DATA_METADATA) {
     996                psTrace("psModules.config", 2,
     997                        "Entry %s in CAMERAS is not of type METADATA --- ignored.", cameraItem->name);
     998                continue;
     999            }
     1000            psMetadata *camera = cameraItem->data.md; // Camera configuration
     1001
     1002            psMetadataAddStr (camera, PS_LIST_TAIL, "PHOTCODE.RULE", PS_META_REPLACE, "original replaced by -photcode-rule option", newrule);
     1003        }
     1004        psFree(newrule);
    9671005        psFree(camerasIter);
    9681006    }
  • trunk/psModules/src/objects/pmSourceIO.c

    r36892 r37051  
    11291129            PM_SOURCES_READ_PSF("PS1_DV4",   CMF_PS1_DV4);
    11301130
     1131            if (!sources) {
     1132                psError(PS_ERR_IO, false, "reading CMF data from %s with format %s\n", file->filename, exttype);
     1133                return false;
     1134            }
     1135
    11311136            long *sourceIndex = NULL;
    11321137            if (XSRC_OUTPUT || XFIT_OUTPUT || XRAD_OUTPUT || XGAL_OUTPUT) {
     
    14061411        PM_SOURCES_READ_XSRC("PS1_SV1",   CMF_PS1_SV1);
    14071412        PM_SOURCES_READ_XSRC("PS1_SV2",   CMF_PS1_SV2);
     1413        PM_SOURCES_READ_XSRC("PS1_SV3",   CMF_PS1_SV3);
    14081414        PM_SOURCES_READ_XSRC("PS1_DV1",   CMF_PS1_DV1);
    14091415        PM_SOURCES_READ_XSRC("PS1_DV2",   CMF_PS1_DV2);
    14101416        PM_SOURCES_READ_XSRC("PS1_DV3",   CMF_PS1_DV3);
     1417        PM_SOURCES_READ_XSRC("PS1_DV4",   CMF_PS1_DV4);
    14111418    }
    14121419    psFree(tableHeader);
     
    14461453        PM_SOURCES_READ_XFIT("PS1_SV1",   CMF_PS1_SV1);
    14471454        PM_SOURCES_READ_XFIT("PS1_SV2",   CMF_PS1_SV2);
     1455        PM_SOURCES_READ_XFIT("PS1_SV3",   CMF_PS1_SV3);
    14481456        PM_SOURCES_READ_XFIT("PS1_DV1",   CMF_PS1_DV1);
    14491457        PM_SOURCES_READ_XFIT("PS1_DV2",   CMF_PS1_DV2);
    14501458        PM_SOURCES_READ_XFIT("PS1_DV3",   CMF_PS1_DV3);
     1459        PM_SOURCES_READ_XFIT("PS1_DV4",   CMF_PS1_DV4);
    14511460    }
    14521461    psFree(tableHeader);
     
    14851494        PM_SOURCES_READ_XRAD("PS1_SV1",   CMF_PS1_SV1);
    14861495        PM_SOURCES_READ_XRAD("PS1_SV2",   CMF_PS1_SV2);
     1496        PM_SOURCES_READ_XRAD("PS1_SV3",   CMF_PS1_SV3);
    14871497        PM_SOURCES_READ_XRAD("PS1_DV1",   CMF_PS1_DV1);
    14881498        PM_SOURCES_READ_XRAD("PS1_DV2",   CMF_PS1_DV2);
    14891499        PM_SOURCES_READ_XRAD("PS1_DV3",   CMF_PS1_DV3);
     1500        PM_SOURCES_READ_XRAD("PS1_DV4",   CMF_PS1_DV4);
    14901501    }
    14911502    psFree(tableHeader);
     
    15241535        PM_SOURCES_READ_XGAL("PS1_SV1",   CMF_PS1_SV1);
    15251536        PM_SOURCES_READ_XGAL("PS1_SV2",   CMF_PS1_SV2);
     1537        PM_SOURCES_READ_XGAL("PS1_SV3",   CMF_PS1_SV3);
    15261538        PM_SOURCES_READ_XGAL("PS1_DV1",   CMF_PS1_DV1);
    15271539        PM_SOURCES_READ_XGAL("PS1_DV2",   CMF_PS1_DV2);
    15281540        PM_SOURCES_READ_XGAL("PS1_DV3",   CMF_PS1_DV3);
     1541        PM_SOURCES_READ_XGAL("PS1_DV4",   CMF_PS1_DV4);
    15291542    }
    15301543    psFree(tableHeader);
Note: See TracChangeset for help on using the changeset viewer.