giwlsolution.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef GIWLSOLUTION_H
00029 #define GIWLSOLUTION_H
00030
00031 #include <cxtypes.h>
00032
00033 #include <cpl_macros.h>
00034 #include <cpl_table.h>
00035
00036 #include <gimodel.h>
00037 #include <gigrating.h>
00038 #include <giwlresiduals.h>
00039
00040
00041 #ifdef __cplusplus
00042 extern "C" {
00043 #endif
00044
00045
00046 typedef struct GiWlSolution GiWlSolution;
00047
00048
00049 GiWlSolution *giraffe_wlsolution_new(const cxchar *name, cxint orientation,
00050 cxint npixels, cxdouble pixelsize,
00051 GiGrating *grating);
00052 GiWlSolution *giraffe_wlsolution_clone(const GiWlSolution *other);
00053 GiWlSolution *giraffe_wlsolution_create(GiTable *solution, GiImage *spectra,
00054 GiGrating *grating);
00055 void giraffe_wlsolution_delete(GiWlSolution *self);
00056
00057 const cxchar *giraffe_wlsolution_name(const GiWlSolution *self);
00058 GiModel *giraffe_wlsolution_model(const GiWlSolution *self);
00059
00060 void giraffe_wlsolution_reset_residuals(GiWlSolution *self);
00061
00062 cxint giraffe_wlsolution_set_subslits(GiWlSolution *self, cxbool flag);
00063 cxbool giraffe_wlsolution_get_subslits(const GiWlSolution *self);
00064
00065 cxint giraffe_wlsolution_set_residuals(GiWlSolution *self,
00066 const GiWlResiduals *residuals);
00067 GiWlResiduals *giraffe_wlsolution_get_residuals(const GiWlSolution *self);
00068
00069 cxdouble giraffe_wlsolution_compute_pixel(const GiWlSolution *self,
00070 cxdouble lambda, cxdouble x,
00071 cxdouble y, cxint *status);
00072
00073 cxdouble giraffe_wlsolution_compute_residual(const GiWlSolution *self,
00074 cxdouble x, cxdouble y);
00075
00076 GiTable *giraffe_wlsolution_create_table(const GiWlSolution *solution);
00077
00078
00079 #ifdef __cplusplus
00080 }
00081 #endif
00082
00083 #endif