Functions | |
int | main (int argc, char **argv) |
The main function. | |
void | error (char *msg) |
Terminating error function. | |
void | doFit (Parratt *par) |
Extraneous function for doing the fit. |
int main | ( | int | argc, | |
char ** | argv | |||
) |
The main function accepts one input file only.
00029 { 00030 Parratt *parratt; 00031 00032 if (argc != 2) error("No input files."); 00033 00034 parratt = initParratt(argv[1]); 00035 00036 if (parratt->s.doit) 00037 { 00038 doFit(parratt); 00039 00040 reportParratt(parratt); 00041 outputProfile(parratt); 00042 outputReflectivity(parratt); 00043 00044 /* Put these into a free function? */ 00045 free(parratt->d1.xpt); 00046 free(parratt->d1.ypt); 00047 free(parratt->d1.sig); 00048 if (parratt->s.pntp == POLARIZED) 00049 { 00050 free(parratt->d2.xpt); 00051 free(parratt->d2.ypt); 00052 free(parratt->d2.sig); 00053 } 00054 free(parratt); 00055 } 00056 else 00057 { 00058 reportParratt(parratt); 00059 outputProfile(parratt); 00060 outputReflectivity(parratt); 00061 00062 free(parratt); 00063 } 00064 00065 return(EXIT_SUCCESS); 00066 }
void error | ( | char * | msg | ) |
void doFit | ( | Parratt * | par | ) |
As a suggestion for future expansion, this function shows how the fitting routine might be initialized from inside another function, such as a button callback.
00083 { 00084 /* 1. Store the parameters */ 00085 /* 2. Do fit */ 00086 fit_method.solv_type(par); 00087 /* 3. Ask if keep fit */ 00088 /* YES - return */ 00089 /* NO - restore old params */ 00090 return; 00091 }