00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef MS_MS1QUANT_MATCH_RATIO_HPP
00018 #define MS_MS1QUANT_MATCH_RATIO_HPP
00019
00020
00021
00022 #include <string>
00023 #include <vector>
00024
00025 namespace matrix_science
00026 {
00027
00033 class ms_ms1quant_match_ratio_body;
00034 class ms_quant_method;
00035 class ms_fitexy_result;
00036
00038
00041 class MS_MASCOTRESFILE_API ms_ms1quant_match_ratio :
00042 public ms_handle
00043 {
00044 public:
00046
00055 enum ratioStatusCode
00056 {
00057 RS_EMPTY = 0,
00058 RS_OK = 1,
00059 RS_ISOLATEDPRECURSORFAILED = 2,
00060 RS_INTEFERENCEFAILED = 4,
00061 RS_NODATA = 8,
00062 RS_FITEXYSIGMA = 16,
00063 RS_NEGATIVERATIO = 32,
00064 RS_INFINITERATIO = 64,
00065 RS_ZERORATIO = 128,
00066 RS_DO_NOT_USE = 256,
00067 RS_TOTALINTENSITYFAILED = 512,
00068 RS_VALID_FLAGS = RS_OK | RS_ISOLATEDPRECURSORFAILED | RS_INTEFERENCEFAILED | RS_NODATA | RS_FITEXYSIGMA | RS_NEGATIVERATIO | RS_INFINITERATIO | RS_ZERORATIO | RS_TOTALINTENSITYFAILED
00069 };
00070
00072 static std::string getXmlCode(ratioStatusCode code);
00073
00075 static ratioStatusCode getCodeFromXml(std::string text);
00076
00078 static bool getCodeInfo(ratioStatusCode code, const ms_quant_method & method, double & info);
00079
00081 ms_ms1quant_match_ratio();
00082
00084 ms_ms1quant_match_ratio(const ms_ms1quant_match_ratio_body & body);
00085
00087 std::string getRatioName() const;
00088
00090 bool isSet() const;
00091
00093 double getValue() const;
00094
00096 double getQuality() const;
00097
00099 bool isValid() const;
00100
00102 bool isUsedForAverage() const;
00103
00105 bool isIncluded() const;
00106
00108 bool getFitexy(ms_fitexy_result & value) const;
00109
00111 int getStatus() const;
00112
00114 std::vector<ratioStatusCode> getStatusList() const;
00115
00116 #ifndef SWIG
00117
00118 ms_ms1quant_match_ratio_body * body();
00120 const ms_ms1quant_match_ratio_body * body() const;
00122 void setStatus(const int status);
00124 void setValid(const bool valid);
00126 void setInclude(const bool include);
00128 void setFitexy(const ms_fitexy_result & value);
00130 void setValue(const std::string & ratioName, double value, double quality, bool usedForAverage, bool include);
00131 #endif
00132 };
00133
00135
00136
00137 }
00138
00139 #endif // MS_MS1QUANT_MATCH_RATIO_HPP
00140
00141