00001
#ifndef _FPEAKFILTER_H_
00002
#define _FPEAKFILTER_H_
00003
00004
00005
00006
00007
00008
00009
struct FPeakFilter
00010 {
00011
unsigned param_abundance_on: 1;
00012
unsigned param_rt_on: 1;
00013
unsigned param_sigma_rt_on: 1;
00014
unsigned param_mz_on: 1;
00015
unsigned param_sigma_mz_on: 1;
00016
unsigned param_z_on: 1;
00017
00018 Range param_abundance;
00019 Range param_rt;
00020 Range param_sigma_rt;
00021 Range param_mz;
00022 Range param_sigma_mz;
00023 Range param_z;
00024 };
00025
00026
typedef struct FPeakFilter FPeakFilter;
00027
00028
00029
void FPeakFilter_init(FPeakFilter* filter);
00030
void FPeakFilter_set(FPeakFilter* filter,
int param,
float min,
float max);
00031
void FPeakFilter_print(FPeakFilter* filter);
00032
void FPeakFilter_setFromStat(FPeakFilter* filter, RestrictionStatistics* pRest,
int nRestr);
00033
00034
void FPeak2iArray_filter(
FPeak2i* array,
int size, FPeakFilter* filter);
00035
void FPeak2iArray_filterCurve(
FPeak2i* array,
int size,
int curve);
00036
void FPeak2iArray_filterCurveWithZ(
FPeak2i* array,
int size);
00037
00038
int FPeak2i_testMetrics(
FPeak2i* fpk,
Experiment* expmnt);
00039
int FPeak2i_testMetricsUsingFilter(
FPeak2i* fpk,
Experiment* expmnt, FPeakFilter* filter);
00040
00041
int FPeak2i_getDiscreteDev(
FPeak2i* fpk,
Experiment* expmnt,
int dimension);
00042
float FPeak2i_getFitDev(
FPeak2i* fpk,
Experiment* expmnt,
int dimension);
00043
00044
int FPeakMetrics_loadUsingFilename(
char* filename);
00045
int FPeakMetrics_load(
Experiment* expmnt,
char* szSession);
00046
int FPeak2i_parameterPassRestrictions(
FPeak2i* fpk,
Experiment* expmnt,
00047 ParameterName parameter,
00048 RestrictionStatistics* pRestr,
int nRestr);
00049
#endif
00050