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 #ifdef HAVE_CONFIG_H
00028 #include <config.h>
00029 #endif
00030
00031
00032
00033
00034
00035 #include <cpl.h>
00036
00037 #include "irplib_detmon.h"
00038 #include "irplib_detmon_lg.h"
00039 #include "irplib_plugin.h"
00040
00041
00042 #define DETMON_OPT_LG_ON_RAW "ON_RAW"
00043 #define DETMON_OPT_LG_OFF_RAW "OFF_RAW"
00044
00045 #define RECIPE_NAME "detmon_opt_lg"
00046
00047 #define OPT FALSE
00048
00049
00050
00051
00052
00053 IRPLIB_RECIPE_DEFINE(detmon_opt_lg, DETMON_BINARY_VERSION,
00054 irplib_detmon_lg_fill_parlist_opt_default(recipe->parameters,
00055 "detmon_opt_lg", "detmon"),
00056 "Lander de Bilbao", "lbilbao@eso.org", "2007",
00057 "Linearity/Gain recipe for the optical domain",
00058 irplib_detmon_lg_get_description("detmon_opt_lg", "DETMON",
00059 DETMON_OPT_LG_ON_RAW,
00060 DETMON_OPT_LG_OFF_RAW));
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071 static int detmon_opt_lg(cpl_frameset * frameset,
00072 const cpl_parameterlist * parlist)
00073 {
00074 cpl_propertylist * lintbl =
00075 irplib_detmon_fill_prolist("DET_LIN_INFO", "REDUCED", "TECH", CPL_FALSE);
00076
00077 cpl_propertylist * gaintbl =
00078 irplib_detmon_fill_prolist("GAIN_INFO", "REDUCED", "TECH", CPL_FALSE);
00079
00080 cpl_propertylist * coeffscube =
00081 irplib_detmon_fill_prolist("COEFFS_CUBE", "REDUCED", "TECH", CPL_FALSE);
00082
00083 cpl_propertylist * bpm =
00084 irplib_detmon_fill_prolist("BP_MAP_NL", "REDUCED", "TECH", CPL_FALSE);
00085
00086 cpl_propertylist * corr =
00087 irplib_detmon_fill_prolist("AUTOCORR", "REDUCED", "TECH", CPL_FALSE);
00088
00089 cpl_propertylist * diff_flat =
00090 irplib_detmon_fill_prolist("DIFF_FLAT", "REDUCED", "TECH", CPL_FALSE);
00091
00092 const cpl_error_code error = irplib_detmon_lg(frameset,
00093 parlist,
00094 DETMON_OPT_LG_ON_RAW,
00095 DETMON_OPT_LG_OFF_RAW,
00096 RECIPE_NAME,
00097 PACKAGE_TARNAME,
00098 REGEXP,
00099 lintbl, gaintbl, coeffscube,
00100 bpm, corr, diff_flat,
00101 PACKAGE "/" PACKAGE_VERSION,
00102 NULL, NULL, OPT);
00103
00104 cpl_propertylist_delete(lintbl);
00105 cpl_propertylist_delete(gaintbl);
00106 cpl_propertylist_delete(coeffscube);
00107 cpl_propertylist_delete(bpm);
00108 cpl_propertylist_delete(corr);
00109 cpl_propertylist_delete(diff_flat);
00110
00111
00112 cpl_ensure_code(!error, error);
00113
00114 return CPL_ERROR_NONE;
00115 }