NACO Pipeline Reference Manual
4.4.0
|
Functions | |
void | irplib_errorstate_dump_warning (unsigned self, unsigned first, unsigned last) |
Dump a single CPL error at the CPL warning level. More... | |
static cpl_polynomial * | irplib_polynomial_fit_1d_create_common (const cpl_vector *x_pos, const cpl_vector *values, int degree, double *mse, double *rechisq) |
void | irplib_errorstate_dump_info (unsigned self, unsigned first, unsigned last) |
Dump a single CPL error at the CPL info level. More... | |
void | irplib_errorstate_dump_debug (unsigned self, unsigned first, unsigned last) |
Dump a single CPL error at the CPL debug level. More... | |
cpl_error_code | irplib_dfs_save_image (cpl_frameset *allframes, const cpl_parameterlist *parlist, const cpl_frameset *usedframes, const cpl_image *image, cpl_type_bpp bpp, const char *recipe, const char *procat, const cpl_propertylist *applist, const char *remregexp, const char *pipe_id, const char *filename) |
Save an image as a DFS-compliant pipeline product. More... | |
cpl_error_code | irplib_dfs_save_propertylist (cpl_frameset *allframes, const cpl_parameterlist *parlist, const cpl_frameset *usedframes, const char *recipe, const char *procat, const cpl_propertylist *applist, const char *remregexp, const char *pipe_id, const char *filename) |
Save a propertylist as a DFS-compliant pipeline product. More... | |
cpl_error_code | irplib_dfs_save_imagelist (cpl_frameset *allframes, const cpl_parameterlist *parlist, const cpl_frameset *usedframes, const cpl_imagelist *imagelist, cpl_type_bpp bpp, const char *recipe, const char *procat, const cpl_propertylist *applist, const char *remregexp, const char *pipe_id, const char *filename) |
Save an imagelist as a DFS-compliant pipeline product. More... | |
cpl_error_code | irplib_dfs_save_table (cpl_frameset *allframes, const cpl_parameterlist *parlist, const cpl_frameset *usedframes, const cpl_table *table, const cpl_propertylist *tablelist, const char *recipe, const char *procat, const cpl_propertylist *applist, const char *remregexp, const char *pipe_id, const char *filename) |
Save a table as a DFS-compliant pipeline product. More... | |
cpl_error_code | irplib_dfs_save_image_ (cpl_frameset *allframes, cpl_propertylist *header, const cpl_parameterlist *parlist, const cpl_frameset *usedframes, const cpl_frame *inherit, const cpl_image *image, cpl_type type, const char *recipe, const cpl_propertylist *applist, const char *remregexp, const char *pipe_id, const char *filename) |
Save an image as a DFS-compliant pipeline product. More... | |
static cpl_error_code | irplib_dfs_product_save (cpl_frameset *allframes, cpl_propertylist *header, const cpl_parameterlist *parlist, const cpl_frameset *usedframes, const cpl_frame *inherit, const cpl_imagelist *imagelist, const cpl_image *image, cpl_type type, const cpl_table *table, const cpl_propertylist *tablelist, const char *recipe, const cpl_propertylist *applist, const char *remregexp, const char *pipe_id, const char *filename) |
Save either an image or table as a pipeline product. More... | |
cpl_error_code | irplib_image_split (const cpl_image *self, cpl_image *im_low, cpl_image *im_mid, cpl_image *im_high, double th_low, cpl_boolean isleq_low, double th_high, cpl_boolean isgeq_high, double alt_low, double alt_high, cpl_boolean isbad_low, cpl_boolean isbad_mid, cpl_boolean isbad_high) |
Split the values in an image in three according to two thresholds. More... | |
cpl_error_code | irplib_dfs_table_convert (cpl_table *self, cpl_frameset *allframes, const cpl_frameset *useframes, int maxlinelen, char commentchar, const char *product_name, const char *procatg, const cpl_parameterlist *parlist, const char *recipe_name, const cpl_propertylist *mainlist, const cpl_propertylist *extlist, const char *remregexp, const char *instrume, const char *pipe_id, cpl_boolean(*table_set_row)(cpl_table *, const char *, int, const cpl_frame *, const cpl_parameterlist *), cpl_error_code(*table_check)(cpl_table *, const cpl_frameset *, const cpl_parameterlist *)) |
Create a DFS product with one table from one or more (ASCII) file(s) More... | |
cpl_error_code | irplib_table_read_from_frameset (cpl_table *self, const cpl_frameset *useframes, int maxlinelen, char commentchar, const cpl_parameterlist *parlist, cpl_boolean(*table_set_row)(cpl_table *, const char *, int, const cpl_frame *, const cpl_parameterlist *)) |
Set the rows of a table with data from one or more (ASCII) files. More... | |
void | irplib_reset (void) |
Reset IRPLIB state. More... | |
int | irplib_compare_tags (cpl_frame *frame1, cpl_frame *frame2) |
Comparison function to identify different input frames. More... | |
const char * | irplib_frameset_find_file (const cpl_frameset *self, const char *tag) |
Find the filename with the given tag in a frame set. More... | |
const cpl_frame * | irplib_frameset_get_first_from_group (const cpl_frameset *self, cpl_frame_group group) |
Find the first frame belonging to the given group. More... | |
cpl_error_code | irplib_apertures_find_max_flux (const cpl_apertures *self, int *ind, int nfind) |
Find the aperture(s) with the greatest flux. More... | |
void irplib_errorstate_dump_warning | ( | unsigned | self, |
unsigned | first, | ||
unsigned | last | ||
) |
Dump a single CPL error at the CPL warning level.
self | The number of the current error to be dumped |
first | The number of the first error to be dumped |
last | The number of the last error to be dumped |
FIXME: Move this function to the CPL errorstate module.
Definition at line 130 of file irplib_utils.c.
void irplib_errorstate_dump_info | ( | unsigned | self, |
unsigned | first, | ||
unsigned | last | ||
) |
Dump a single CPL error at the CPL info level.
self | The number of the current error to be dumped |
first | The number of the first error to be dumped |
last | The number of the last error to be dumped |
Definition at line 157 of file irplib_utils.c.
void irplib_errorstate_dump_debug | ( | unsigned | self, |
unsigned | first, | ||
unsigned | last | ||
) |
Dump a single CPL error at the CPL debug level.
self | The number of the current error to be dumped |
first | The number of the first error to be dumped |
last | The number of the last error to be dumped |
Definition at line 177 of file irplib_utils.c.
Referenced by irplib_polynomial_find_1d_from_correlation_all(), and irplib_vector_fill_line_spectrum_model().
cpl_error_code irplib_dfs_save_image | ( | cpl_frameset * | allframes, |
const cpl_parameterlist * | parlist, | ||
const cpl_frameset * | usedframes, | ||
const cpl_image * | image, | ||
cpl_type_bpp | bpp, | ||
const char * | recipe, | ||
const char * | procat, | ||
const cpl_propertylist * | applist, | ||
const char * | remregexp, | ||
const char * | pipe_id, | ||
const char * | filename | ||
) |
Save an image as a DFS-compliant pipeline product.
allframes | The list of input frames for the recipe |
parlist | The list of input parameters |
usedframes | The list of raw/calibration frames used for this product |
image | The image to be saved |
bpp | Bits per pixel |
recipe | The recipe name |
procat | The product category tag |
applist | Optional propertylist to append to primary header or NULL |
remregexp | Optional regexp of properties not to put in main header |
pipe_id | PACKAGE "/" PACKAGE_VERSION |
filename | Filename of created product |
Definition at line 208 of file irplib_utils.c.
References irplib_dfs_save_image_().
cpl_error_code irplib_dfs_save_propertylist | ( | cpl_frameset * | allframes, |
const cpl_parameterlist * | parlist, | ||
const cpl_frameset * | usedframes, | ||
const char * | recipe, | ||
const char * | procat, | ||
const cpl_propertylist * | applist, | ||
const char * | remregexp, | ||
const char * | pipe_id, | ||
const char * | filename | ||
) |
Save a propertylist as a DFS-compliant pipeline product.
allframes | The list of input frames for the recipe |
parlist | The list of input parameters |
usedframes | The list of raw/calibration frames used for this product |
recipe | The recipe name |
procat | The product category tag |
applist | Optional propertylist to append to primary header or NULL |
remregexp | Optional regexp of properties not to put in main header |
pipe_id | PACKAGE "/" PACKAGE_VERSION |
filename | Filename of created product |
Definition at line 256 of file irplib_utils.c.
cpl_error_code irplib_dfs_save_imagelist | ( | cpl_frameset * | allframes, |
const cpl_parameterlist * | parlist, | ||
const cpl_frameset * | usedframes, | ||
const cpl_imagelist * | imagelist, | ||
cpl_type_bpp | bpp, | ||
const char * | recipe, | ||
const char * | procat, | ||
const cpl_propertylist * | applist, | ||
const char * | remregexp, | ||
const char * | pipe_id, | ||
const char * | filename | ||
) |
Save an imagelist as a DFS-compliant pipeline product.
allframes | The list of input frames for the recipe |
parlist | The list of input parameters |
usedframes | The list of raw/calibration frames used for this product |
imagelist | The imagelist to be saved |
bpp | Bits per pixel |
recipe | The recipe name |
procat | The product category tag |
applist | Optional propertylist to append to primary header or NULL |
remregexp | Optional regexp of properties not to put in main header |
pipe_id | PACKAGE "/" PACKAGE_VERSION |
filename | Filename of created product |
Definition at line 303 of file irplib_utils.c.
cpl_error_code irplib_dfs_save_table | ( | cpl_frameset * | allframes, |
const cpl_parameterlist * | parlist, | ||
const cpl_frameset * | usedframes, | ||
const cpl_table * | table, | ||
const cpl_propertylist * | tablelist, | ||
const char * | recipe, | ||
const char * | procat, | ||
const cpl_propertylist * | applist, | ||
const char * | remregexp, | ||
const char * | pipe_id, | ||
const char * | filename | ||
) |
Save a table as a DFS-compliant pipeline product.
allframes | The list of input frames for the recipe |
parlist | The list of input parameters |
usedframes | The list of raw/calibration frames used for this product |
table | The table to be saved |
tablelist | Optional propertylist to use in table extension or NULL |
recipe | The recipe name |
procat | The product category tag |
applist | Optional propertylist to append to primary header or NULL |
remregexp | Optional regexp of properties not to put in main header |
pipe_id | PACKAGE "/" PACKAGE_VERSION |
filename | Filename of created product |
Definition at line 351 of file irplib_utils.c.
Referenced by irplib_dfs_table_convert().
cpl_error_code irplib_dfs_save_image_ | ( | cpl_frameset * | allframes, |
cpl_propertylist * | header, | ||
const cpl_parameterlist * | parlist, | ||
const cpl_frameset * | usedframes, | ||
const cpl_frame * | inherit, | ||
const cpl_image * | image, | ||
cpl_type | type, | ||
const char * | recipe, | ||
const cpl_propertylist * | applist, | ||
const char * | remregexp, | ||
const char * | pipe_id, | ||
const char * | filename | ||
) |
Save an image as a DFS-compliant pipeline product.
allframes | The list of input frames for the recipe |
header | NULL, or filled with properties written to product header |
parlist | The list of input parameters |
usedframes | The list of raw/calibration frames used for this product |
inherit | NULL or product frames inherit their header from this frame |
image | The image to be saved |
type | The type used to represent the data in the file |
recipe | The recipe name |
applist | Propertylist to append to primary header, w. PRO.CATG |
remregexp | Optional regexp of properties not to put in main header |
pipe_id | PACKAGE "/" PACKAGE_VERSION |
filename | Filename of created product |
Definition at line 411 of file irplib_utils.c.
References irplib_dfs_product_save().
Referenced by irplib_dfs_save_image().
|
static |
Save either an image or table as a pipeline product.
allframes | The list of input frames for the recipe |
header | NULL, or filled with properties written to product header |
parlist | The list of input parameters |
usedframes | The list of raw/calibration frames used for this product |
inherit | NULL, or frame from which header information is inherited |
imagelist | The imagelist to be saved or NULL |
image | The image to be saved or NULL |
type | The type used to represent the data in the file |
table | The table to be saved or NULL |
tablelist | Optional propertylist to use in table extension or NULL |
recipe | The recipe name |
applist | Optional propertylist to append to main header or NULL |
remregexp | Optional regexp of properties not to put in main header |
pipe_id | PACKAGE "/" PACKAGE_VERSION |
filename | Filename of created product |
Definition at line 460 of file irplib_utils.c.
Referenced by irplib_dfs_save_image_().
cpl_error_code irplib_image_split | ( | const cpl_image * | self, |
cpl_image * | im_low, | ||
cpl_image * | im_mid, | ||
cpl_image * | im_high, | ||
double | th_low, | ||
cpl_boolean | isleq_low, | ||
double | th_high, | ||
cpl_boolean | isgeq_high, | ||
double | alt_low, | ||
double | alt_high, | ||
cpl_boolean | isbad_low, | ||
cpl_boolean | isbad_mid, | ||
cpl_boolean | isbad_high | ||
) |
Split the values in an image in three according to two thresholds.
self | The image to split |
im_low | If non-NULL low-valued pixels are assigned to this image |
im_mid | If non-NULL middle-valued pixels are assigned to this image |
im_high | If non-NULL high-valued pixels are assigned to this image |
th_low | The lower threshold |
isleq_low | Ift true use less than or equal |
th_high | The upper threshold, must be at least th_low |
isgeq_high | Iff true use greater than or equal |
alt_low | Assign this value when the pixel value is not low |
alt_high | Assign this value, when the pixel value is not high |
isbad_low | Flag non-low pixels as bad |
isbad_mid | Flag non-mid pixels as bad |
isbad_high | Flag non-high pixels as bad |
FIXME: This function is way too slow and perhaps over-engineered...
A split in two is achieved with th_low equal th_high (in this case there is little reason for im_mid to be non-NULL).
All pixel values in the output images are reset, as well as their bad pixels maps.
If an input pixel-value is flagged as bad, then the receiving pixel in the output image is flagged as well.
Definition at line 665 of file irplib_utils.c.
cpl_error_code irplib_dfs_table_convert | ( | cpl_table * | self, |
cpl_frameset * | allframes, | ||
const cpl_frameset * | useframes, | ||
int | maxlinelen, | ||
char | commentchar, | ||
const char * | product_name, | ||
const char * | procatg, | ||
const cpl_parameterlist * | parlist, | ||
const char * | recipe_name, | ||
const cpl_propertylist * | mainlist, | ||
const cpl_propertylist * | extlist, | ||
const char * | remregexp, | ||
const char * | instrume, | ||
const char * | pipe_id, | ||
cpl_boolean(*)(cpl_table *, const char *, int, const cpl_frame *, const cpl_parameterlist *) | table_set_row, | ||
cpl_error_code(*)(cpl_table *, const cpl_frameset *, const cpl_parameterlist *) | table_check | ||
) |
Create a DFS product with one table from one or more (ASCII) file(s)
self | Table with labels (and units) but no row data |
allframes | The list of input frames for the recipe |
useframes | The frames to process for the product |
maxlinelen | The maximum line length in the input file(s) |
commentchar | Skip lines that start with this character, e.g. '#' |
product_name | The name of the created FITS table product or NULL |
procatg | The PROCATG of the created FITS table product |
parlist | The list of input parameters |
recipe_name | The name of the calling recipe |
mainlist | Optional propertylist to append to main header or NULL |
extlist | Optional propertylist to append to ext. header or NULL |
remregexp | Optional regexp of properties not to put in main header |
instrume | The value to use for the INSTRUME key, uppercase PACKAGE |
pipe_id | PACKAGE "/" PACKAGE_VERSION |
table_set_row | Caller-defined function to insert one row in the table |
table_check | Optional caller-defined function to check table or NULL |
Definition at line 860 of file irplib_utils.c.
References irplib_dfs_save_table(), and irplib_table_read_from_frameset().
cpl_error_code irplib_table_read_from_frameset | ( | cpl_table * | self, |
const cpl_frameset * | useframes, | ||
int | maxlinelen, | ||
char | commentchar, | ||
const cpl_parameterlist * | parlist, | ||
cpl_boolean(*)(cpl_table *, const char *, int, const cpl_frame *, const cpl_parameterlist *) | table_set_row | ||
) |
Set the rows of a table with data from one or more (ASCII) files.
self | Table with labels (and units) but no row data |
useframes | The frames to process for the table |
maxlinelen | The maximum line length in the input file(s) |
commentchar | Skip lines that start with this character, e.g. '#' |
parlist | The list of input parameters |
table_set_row | Caller-defined function to insert one row in the table |
table_set_row() is a function that sets the specified row in a table
It needs to know: 1) How to parse the lines - each line is read with fgets(). 2) For each column: type/format (lg/s/d) + label
During a successful call self will have rows added or removed to exactly match the number of lines converted. Any a priori knowledge about the expected number of converted rows can be used in the creation of the table (to reduce memory reallocation overhead). On error the number of rows in self is undefined.
Definition at line 989 of file irplib_utils.c.
Referenced by irplib_dfs_table_convert().
void irplib_reset | ( | void | ) |
Reset IRPLIB state.
This function resets all static memory used by IRPLIB to a well-defined, initial state.
The function should be called (during initialization) by any application using static memory facilities in IRPLIB.
Currently, this function does nothing.
Definition at line 1136 of file irplib_utils.c.
int irplib_compare_tags | ( | cpl_frame * | frame1, |
cpl_frame * | frame2 | ||
) |
Comparison function to identify different input frames.
frame1 | first frame |
frame2 | second frame |
Definition at line 1149 of file irplib_utils.c.
const char* irplib_frameset_find_file | ( | const cpl_frameset * | self, |
const char * | tag | ||
) |
Find the filename with the given tag in a frame set.
self | A frame set. |
tag | The frame tag to search for. |
NULL is returned and no error code set if the tag is not found.
If the file is not unique, the name of the first one is returned and with a warning.
Definition at line 1185 of file irplib_utils.c.
const cpl_frame* irplib_frameset_get_first_from_group | ( | const cpl_frameset * | self, |
cpl_frame_group | group | ||
) |
Find the first frame belonging to the given group.
self | The frameset |
group | The group attribute |
NULL
if no such frame was found. The function returns NULL
if an error occurs and sets the appropriate error code. Definition at line 1216 of file irplib_utils.c.
cpl_error_code irplib_apertures_find_max_flux | ( | const cpl_apertures * | self, |
int * | ind, | ||
int | nfind | ||
) |
Find the aperture(s) with the greatest flux.
self | The aperture object |
ind | The aperture-indices in order of decreasing flux |
nfind | Number of indices to find |
nfind must be at least 1 and at most the size of the aperture object.
The ind array must be able to hold (at least) nfind integers. On success the first nfind elements of ind point to indices of the aperture object.
To find the single ind of the aperture with the maximum flux use simply: int ind; irplib_apertures_find_max_flux(self, &ind, 1);
Definition at line 1253 of file irplib_utils.c.