segment.h

Go to the documentation of this file.
00001 #ifndef _SEGMENT_H_
00002 #define _SEGMENT_H_
00003 
00004 /* Copyright (c) Kyriacos Leptos and the President and Fellows of Harvard University
00005    Release Date: 2004-11-01
00006    Part of the MapQuant suite library "massspec.lib" 
00007 */
00008 
00026 struct Segment
00027 {
00028     unsigned    holdsData: 1;
00029 
00030     int                 nStatus;
00031     
00032     MQTileID            bTile;
00033     int                 nIndex;
00034 
00035     MQSegmentAttributes         attr;
00036     
00037     FPeak2i*            pFPeaks;
00038     FPeak2iPointer*     pPFPeaks;
00039 
00040     int                 nFPeaks;
00041     float               dChiSquare;
00042     int                 nIterations;
00043 };
00044 
00045 typedef struct Segment Segment;
00046 
00047 void        Segment_fprint  (FILE* fp, Segment* seg);
00048 void        Segment_destroy (Segment* segment);
00049 void        Segment_copy(Segment *dest, Segment *src);
00050 void        Segment_copyNonFitElements(Segment *dest, Segment *src);
00051 void        Segment_validatePositivePeaks(Segment* segment);
00052 void        Segment_init(Segment* segment, MQSegmentAttributes* attr);
00053 Segment*    SegmentArray_create         (int nSegments);
00054 Segment*    SegmentArray_getUsingIndexArray(Segment* array, int* pIndexArray, int nIndices);
00055 void        SegmentArray_destroy(Segment** pSegmentArray, int nSegments);
00056 void Segment_createFromFPeak2iArray(Segment* segment, FPeak2i* pFPeaks, int size);
00057 
00058 
00059 FPeak2i* SegmentArray_getFPeaksUsingIndexArray(Segment* array, int* index_array, int nSegments, 
00060                                                int* nPeaks);
00061 
00062 
00063 FPeak2i* SegmentArray_getFPeaks(Segment* array, int nSegments, int* nFPeaks);
00064 void     SegmentArray_markSegmentsContainingPeaks( Segment* pSegment, int nSegment, 
00065                                                Peak2i* peaks, int npeaks, 
00066                                                Map2D* map, float dMZTolerance, int nScanTolerance);
00067 
00068 
00069 void SegmentArray_sortByTileAndSegment(Segment* pArray, int nArray);
00070 
00071 int SegmentArray_countFPeaks(Segment* pSegments, int nSegments);
00072 int SegmentArray_queryBySamplingCoordinates(Segment* pSegments, int nSegments, int scan, int bin);
00073 
00074 Segment* SegmentArray_queryByTileAndSegment(Segment* pArray, int nArray, MQTileID bTile, int nSegment);
00075 #endif
00076 
00077 
00078 
00079 

Generated on Tue Feb 7 11:54:27 2006 for libmqobject by  doxygen 1.4.6