IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 6903


Ignore:
Timestamp:
Apr 19, 2006, 9:18:24 AM (20 years ago)
Author:
Paul Price
Message:

In the process of changing ppImage to ppMerge

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ppMerge/src/ppMerge.c

    r5862 r6903  
    1 # include "ppMerge.h"
     1#include <stdio.h>
     2#include "pslib.h"
     3#include "pmConcepts.h"
     4#include "ppMerge.h"
     5#include "ppMem.h"
    26
    3 int main (int argc, char **argv) {
     7int main(int argc, char **argv)
     8{
     9    ppMergeOptions *options = ppMergeOptionsAlloc();
     10    ppConfig *config = ppConfigAlloc();
    411
    5     ppData data;
    6     ppConfig config;
    7     ppOptions options;
    8 
    9 
    10     psTimerStart("merge");
     12    psTimerStart(TIMERNAME);
    1113
    1214    // Parse the configuration and arguments
    13     ppMergeConfig (&config, argc, argv);
     15    ppImageConfig(config, argc, argv);
    1416
    1517    // Open the input image, output image, output mask
    1618    // Get camera configuration from header if not already defined
    1719    // Construct camera in preparation for reading
    18     ppMergeParseCamera (&data, &config);
     20    ppImageParseCamera(data, config);
    1921
    2022    // Set various tasks (define optional operations)
    21     ppMergeOptions (&data, &options, &config);
     23    ppImageOptionsParse(data, options, config);
    2224
    23     // open detrend images (mask), load headers
    24     ppMergeParseDetrend (&data, &options, &config);
     25    // open detrend images, load headers, optionally load pixels
     26    ppImageParseDetrend(data, options, config);
    2527
    26     // Image Merge Loop
    27     ppMergeLoop (&data, &options, &config);
     28    // Image Arithmetic Loop
     29    ppImageLoop(data, options, config);
    2830
    29     // output options
    30     ppMergeOutput (&data, &options, &config);
     31    // Cleaning up
     32    psFree(data);
     33    psFree(options);
     34    psFree(config);
     35    psTimerStop();
     36    psTraceReset();
     37    pmConceptsDone();
     38    ppMemCheck();
    3139
    32     exit (0);
     40    return EXIT_SUCCESS;
    3341}
    34 
    35 int speedTest (void)
    36 {
    37     # define NTEST 10000000
    38     psStats *testData, *stats;
    39     stats = psStatsAlloc (PS_STAT_ROBUST_MEAN);
    40     psList *testList = psListAlloc (NULL);
    41     psArray *testArray = psArrayAlloc (NTEST);
    42 
    43     psTimerStart("merge");
    44     for (int i = 0; i < NTEST; i++) {
    45         testArray->data[i] = stats;
    46     }
    47     fprintf (stderr, "added %d objects to array: %f usec / obj\n", NTEST, 1e6*psTimerMark ("merge")/NTEST);
    48 
    49     psTimerStart("merge");
    50     for (int i = 0; i < NTEST; i++) {
    51         psListAdd (testList, PS_LIST_TAIL, stats);
    52     }
    53     fprintf (stderr, "added %d objects to list: %f usec / obj\n", NTEST, 1e6*psTimerMark ("merge")/NTEST);
    54 
    55     psTimerStart("merge");
    56     for (int i = 0; i < NTEST; i++) {
    57         testData = testArray->data[i];
    58     }
    59     fprintf (stderr, "pulled %d objects from array: %f usec / obj\n", NTEST, 1e6*psTimerMark ("merge")/NTEST);
    60 
    61     psTimerStart("merge");
    62     psListElem *tmpInput = (psListElem *) testList->head;
    63     while (tmpInput != NULL) {
    64         testData = tmpInput->data;
    65         tmpInput = tmpInput->next;
    66     }
    67     fprintf (stderr, "pulled %d objects from list: %f usec / obj\n", NTEST, 1e6*psTimerMark ("merge")/NTEST);
    68 
    69     exit (0);
    70 }
Note: See TracChangeset for help on using the changeset viewer.