00001
#ifndef _RPEPTIDE_H_
00002
#define _RPEPTIDE_H_
00003
00004
struct RPeptide
00005 {
00006
int nIndex;
00007
00008
char* szSequence;
00009
00010
float dMZ;
00011
float dModification;
00012
float dRT;
00013
float dZ;
00014
float dAbundance;
00015
float epsilonMZ;
00016 };
00017
00018
typedef struct RPeptide RPeptide;
00019
00020
struct RPeptideLoader
00021 {
00022
int nRTColumn;
00023
int nMZColumn;
00024
int nZColumn;
00025
int nSeqColumn;
00026
int nAbundanceColumn;
00027
int nModificationColumn;
00028 double (*string_to_double) (
char*);
00029 };
00030
00031
typedef struct RPeptideLoader RPeptideLoader;
00032
00033 RPeptide* RPeptideArray_create(
int size);
00034 RPeptide* MassFilterResult_loadFlatFile(
Experiment expmnt,
char *filename,
int *nRPeptides);
00035 RPeptide* RPeptideArray_loadFromDelimitedFile(RPeptideLoader* loader,
char *filename,
char* delimiter,
int start_row,
int *nRPeptides);
00036
void RPeptideArray_fprint(FILE* fp, RPeptide* rpeptide,
int npeptides);
00037
void RPeptideArray_calcMZ(RPeptide* rp,
int rpeptides,
int type);
00038
void RPeptide_calcEpsilonMZ(RPeptide* rp,
int type);
00039
00040
Point2i* RPeptideArray_getPoint2iArray(RPeptide* rp,
int rpeptides,
Experiment* expmnt);
00041
00042
00043
00044
00045
00046
00047 MQStringArray RPeptideArray_getStringArray(RPeptide* RPEPTIDES,
int NO_RPEPTIDES);
00048 MQStringArray RPeptideArray_getAbuStringArray(RPeptide* rp,
int NO_RPEPTIDES);
00049 MQStringArray RPeptideArray_getRTStringArray(RPeptide* rp,
int NO_RPEPTIDES);
00050 MQStringArray RPeptideArray_getEMZStringArray(RPeptide* rp,
int NO_RPEPTIDES);
00051
void RPeptideArray_calcEpsilonMZ(RPeptide* rp,
int rpeptides,
int type);
00052
void RPeptideArray_sortBySequenceAndCharge(RPeptide* rp,
int npeptide);
00053 MQStringArray RPeptideArray_getChargeStringArray(RPeptide* rp,
int NO_RPEPTIDES);
00054 MQStringArray RPeptideArray_getSequenceArray(RPeptide* RPEPTIDES,
int NO_RPEPTIDES);
00055
00056
void RPeptideLoader_init(RPeptideLoader* rpl);
00057
00058
#endif
00059
00060