Main Page | File List

openraw_file.h

Go to the documentation of this file.
00001 #ifndef _OPENRAW_FILE_H_
00002 #define _OPENRAW_FILE_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 "openraw.lib"
00007 */
00008 
00019 #define OPENRAW_MS1_FOLDER      "MS1"
00020 #define OPENRAW_MS2_FOLDER      "MS2"
00021 #define OPENRAW_PARAM_FOLDER    "PARAM"
00022 
00023 #define OPENRAW_MSAR_EXT         "msar"
00024 #define OPENRAW_MS2AR_EXT        "ms2ar"
00025 #define OPENRAW_PARAM_EXT        "param"
00026 
00027 #define OPENRAW_GLOBAL_RT_SAMPLING_ARRAY_FILENAME   "RTSA.param"
00028 #define OPENRAW_GLOBAL_MS_SAMPLING_ARRAY_FILENAME   "MSSA.param"
00029 #define OPENRAW_MZ_RULER_TEMPLATE_FILENAME          "MZRuler"
00030 #define OPENRAW_EXPERIMENT_SIZE_FILENAME            "Size.param"
00031 #define OPENRAW_INSTRUMENT_METHOD_FILENAME          "InstrumentMethod.param"
00032 
00033 extern int OPENRAW_VERSION;
00034 
00035 enum {  OPENRAW_ARCHIVE_TYPE_PROFILE, 
00036         OPENRAW_ARCHIVE_TYPE_CENTROID, 
00037         OPENRAW_ARCHIVE_TYPE_PROFILE_ZERO_PADDING, 
00038         OPENRAW_ARCHIVE_TYPE_MIXED};
00039 
00040 struct OpenRawFile
00041 {
00042     char*       szName;
00043 
00044     char*       szRawExpDir;
00045     // Open Raw Specific Folders
00046     char*       szMS1Dir;
00047     char*       szMS2Dir;
00048     char*       szParamDir;
00049 
00050     OpenRawScanHeader* scanheaders;
00051     OpenRawMZRuler*    mzrulers;
00052 
00053     int nmzrulers;
00054 };
00055 
00056 typedef struct OpenRawFile OpenRawFile;
00057 
00058 int OpenRawFile_loadRTSize(OpenRawFile* orFile, int* nRTSize, int* scan_start, int* scan_stop);
00059 int OpenRawFile_loadGlobalRTSamplingArray(OpenRawFile* orFile, int nSize);
00060 
00061 int     OpenRawFile_loadMZSize(OpenRawFile* orFile, int *nMZSize, int* bin_start, int* bin_stop);
00062 float*  OpenRawFile_loadGlobalMZSamplingArray(OpenRawFile* orFile, int nSize);
00063 int     OpenRawFile_loadNumberOfMZRulers(OpenRawFile* orFile);
00064 int     OpenRawFile_loadMZRulers(OpenRawFile* orFile);
00065 
00066 int         OpenRawFile_doesMSArchiveExist(OpenRawFile* orFile);
00067 float       OpenRawFile_getVersionOfMSArchive(OpenRawFile* orFile);
00068 int         OpenRawFile_getTypeOfMSArchive(OpenRawFile* orFile);
00069 int         OpenRawFile_mergeMSSubArchive(OpenRawFile* orFile);
00070 
00071 void        OpenRawFile_removeMSArchiveIndexFile(OpenRawFile* orFile);
00072 void        OpenRawFile_getMSSubArchiveRanges(OpenRawFile* orFile,
00073                                               int** start_scan, int** stop_scan, int* nsubmsar);
00074 
00075 float       OpenRawFile_getVersionOfMS2Archive(OpenRawFile* orFile);
00076 int         OpenRawFile_getTypeOfMS2Archive(OpenRawFile* orFile);
00077 int         OpenRawFile_verifyInstrumentMethod(OpenRawFile* orFile);
00078 void        OpenRawFile_getRangeOfIndependentScan(OpenRawFile* orFile, double* mass_start, double* mass_stop);
00079 
00080 int OpenRawFile_isScanMS2(OpenRawFile* orFile, int scanno);
00081 
00082 int OpenRawFile_loadScanHeaderArrayFromMS2Archive_Version2(OpenRawFile* orFile, int nSize);
00083 
00084 #endif
00085 

Generated on Sat Dec 3 17:27:02 2005 for openraw by  doxygen 1.4.4