IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Mar 10, 2009, 4:53:42 PM (17 years ago)
Author:
Paul Price
Message:

Changing API for psRandomAlloc() to make it easier to be deterministic. psRandomAlloc() now takes only a single argument, which is the generator type (only PS_RANDOM_TAUS is currently supported; others could easily be added). The seed used by the generator is set by psRandomSeed(). This allows us to use the same seed for the random number generator over multiple calls, which means that we can be deterministic by setting the seed. The old API for psRandomAlloc() is available using psRandomAllocSpecific(). Added to the configuration setup in psModules to include recording the random seed, and setting if desired. Updated all our products to use this API. Some fixes and updates to the configuration run-time information dumping. ppImage now dumps the configuration at the end, allowing the list of files in the run-time information to be set.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psModules/test/detrend/tap_pmMaskBadPixels.c

    r15160 r23259  
    282282        pmCell *cell = generateSimpleCell(NULL);
    283283        pmReadout *in = generateSimpleReadout(cell);
    284         psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS, 0);
     284        psRandom *rng = psRandomAllocSpecific(PS_RANDOM_TAUS, 0);
    285285
    286286        ok(!pmMaskFlagSuspectPixels(out, NULL, 1.0, 1, 1.0, rng), "pmMaskFlagSuspectPixels() returned NULL with NULL input pmReadout");
     
    301301        psFree(in->image);
    302302        in->image = NULL;
    303         psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS, 0);
     303        psRandom *rng = psRandomAllocSpecific(PS_RANDOM_TAUS, 0);
    304304        ok(!pmMaskFlagSuspectPixels(out, NULL, 1.0, 1, 1.0, rng), "pmMaskFlagSuspectPixels() returned NULL with NULL input pmReadout->image");
    305305        psFree(rng);
     
    319319        psFree(in->image);
    320320        in->image = psImageAlloc(0, 0, PS_TYPE_F32);
    321         psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS, 0);
     321        psRandom *rng = psRandomAllocSpecific(PS_RANDOM_TAUS, 0);
    322322        ok(!pmMaskFlagSuspectPixels(out, NULL, 1.0, 1, 1.0, rng), "pmMaskFlagSuspectPixels() returned NULL with empty input pmReadout->image");
    323323        psFree(rng);
     
    337337        psFree(in->image);
    338338        in->image = psImageAlloc(TEST_NUM_COLS, TEST_NUM_ROWS, PS_TYPE_S32);
    339         psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS, 0);
     339        psRandom *rng = psRandomAllocSpecific(PS_RANDOM_TAUS, 0);
    340340        ok(!pmMaskFlagSuspectPixels(out, NULL, 1.0, 1, 1.0, rng), "pmMaskFlagSuspectPixels() returned NULL with incorrect type for pmReadout->image");
    341341        psFree(rng);
     
    355355        psFree(in->mask);
    356356        in->mask = psImageAlloc(0, 0, PS_TYPE_MASK);
    357         psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS, 0);
     357        psRandom *rng = psRandomAllocSpecific(PS_RANDOM_TAUS, 0);
    358358        ok(!pmMaskFlagSuspectPixels(out, NULL, 1.0, 1, 1.0, rng), "pmMaskFlagSuspectPixels() returned NULL with incorrect type for pmReadout->image");
    359359        psFree(rng);
     
    373373        psFree(in->mask);
    374374        in->mask = psImageAlloc(TEST_NUM_COLS/2, TEST_NUM_ROWS/2, PS_TYPE_MASK);
    375         psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS, 0);
     375        psRandom *rng = psRandomAllocSpecific(PS_RANDOM_TAUS, 0);
    376376        ok(!pmMaskFlagSuspectPixels(out, NULL, 1.0, 1, 1.0, rng), "pmMaskFlagSuspectPixels() returned NULL with bad size for in->mask");
    377377        psFree(rng);
     
    391391        psFree(in->mask);
    392392        in->mask = psImageAlloc(TEST_NUM_COLS, TEST_NUM_ROWS, PS_TYPE_S32);
    393         psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS, 0);
     393        psRandom *rng = psRandomAllocSpecific(PS_RANDOM_TAUS, 0);
    394394        ok(!pmMaskFlagSuspectPixels(out, NULL, 1.0, 1, 1.0, rng), "pmMaskFlagSuspectPixels() returned NULL with bad type for in->mask");
    395395        psFree(rng);
     
    407407        pmCell *cell = generateSimpleCell(NULL);
    408408        pmReadout *in = generateSimpleReadout(cell);
    409         psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS, 0);
     409        psRandom *rng = psRandomAllocSpecific(PS_RANDOM_TAUS, 0);
    410410        ok(!pmMaskFlagSuspectPixels(out, NULL, 1.0, 1, 1.0, rng), "pmMaskFlagSuspectPixels() returned NULL with empty out image");
    411411        psFree(rng);
     
    423423        pmCell *cell = generateSimpleCell(NULL);
    424424        pmReadout *in = generateSimpleReadout(cell);
    425         psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS, 0);
     425        psRandom *rng = psRandomAllocSpecific(PS_RANDOM_TAUS, 0);
    426426        ok(!pmMaskFlagSuspectPixels(out, NULL, 1.0, 1, 1.0, rng), "pmMaskFlagSuspectPixels() returned NULL with incorrect type for out image");
    427427        psFree(rng);
     
    439439        pmCell *cell = generateSimpleCell(NULL);
    440440        pmReadout *in = generateSimpleReadout(cell);
    441         psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS, 0);
     441        psRandom *rng = psRandomAllocSpecific(PS_RANDOM_TAUS, 0);
    442442        ok(!pmMaskFlagSuspectPixels(out, NULL, 1.0, 1, 1.0, rng), "pmMaskFlagSuspectPixels() returned NULL with incorrect size for out image");
    443443        psFree(rng);
     
    455455        pmCell *cell = generateSimpleCell(NULL);
    456456        pmReadout *in = generateSimpleReadout(cell);
    457         psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS, 0);
     457        psRandom *rng = psRandomAllocSpecific(PS_RANDOM_TAUS, 0);
    458458
    459459        ok(!pmMaskFlagSuspectPixels(out, in, 0.0, 1, 1.0, rng), "pmMaskFlagSuspectPixels() returned NULL with rej input <= 0.0");
     
    472472        pmCell *cell = generateSimpleCell(NULL);
    473473        pmReadout *in = generateSimpleReadout(cell);
    474         psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS, 0);
     474        psRandom *rng = psRandomAllocSpecific(PS_RANDOM_TAUS, 0);
    475475
    476476        ok(!pmMaskFlagSuspectPixels(out, in, 1.0, 1, -1.0, rng), "pmMaskFlagSuspectPixels() returned NULL with frac input < 0.0");
Note: See TracChangeset for help on using the changeset viewer.