コード例 #1
0
void CorrelateMain::update()
{
	if (bangLoad->getBang())
		loadData();
	
	if (bangEvaluate->getBang())
		evaluate();
	
	if (bangLoadCalibration->getBang())
	{
		calibration.load();
		bangEvaluate->enabled = true;
	}
	
	if (bangSave3DScan->getBang())
		saveScan();

	if (bangSaveMap->getBang())
		saveMap();
    
    if (bangAddToImage->getBang())
        addToImage();
    
    if (bangSaveImage->getBang())
        saveImage();
    
    if (bangClearImage->getBang())
        clearImage();
	
	ofVec3f& lbf(scanSet.lbf);
    ofVec3f& rtb(scanSet.rtb);
	
	if (rtb.x < lbf.x)
		rtb.x = lbf.x;
	if (rtb.y < lbf.y)
		rtb.y = lbf.y;
	if (rtb.z < lbf.z)
		rtb.z = lbf.z;
	
}
コード例 #2
0
ファイル: ms2scanvector.cpp プロジェクト: ywang802/Sipros3
bool MS2ScanVector::ReadFT2File()
{
    bool bReVal, flag_1stScan = true; //flag_1stScan true indicates pMS2Scan is empty
    string sline;
    istringstream input;
    MS2Scan * pMS2Scan;
    ifstream ft2_stream(sFT2Filename.c_str());
    int tmp_charge;
    double tmp_mz, tmp_intensity;
    
    bReVal = ft2_stream.is_open();
    if (bReVal)
    {
	while(!ft2_stream.eof())
	{
	    sline.clear();
//	    string tmp_sline = sline;
	    getline(ft2_stream, sline);
//	    cout << sline <<"wyf"<<endl;
	    if (sline =="")
		continue;
	    if ((sline.at(0) >= '0') && (sline.at(0) <= '9'))
	    {
		TokenVector words(sline, " \t\n\r");
		if (words.size() < 6)
		// The judgement of MS scan resolution here will be overwritten,
		// we still keep the related codes here for future possible usuage
		  
		{
		    pMS2Scan->isMS2HighRes = false;
		    pMS2Scan->viCharge.push_back(0);
		}else
		{
		    pMS2Scan->isMS2HighRes = true;
		    input.clear();
		    input.str(words[5]);
		    input>>tmp_charge;
		    input.clear();
		    pMS2Scan->viCharge.push_back(tmp_charge);
		}
		input.clear();
		input.str(words[0]);
		input>>tmp_mz;
		input.clear();
		pMS2Scan->vdMZ.push_back(tmp_mz);
		input.str(words[1]);
		input>>tmp_intensity;
		input.clear();
		pMS2Scan->vdIntensity.push_back(tmp_intensity);
	    }else if (sline.at(0) == 'S')
	    {
		if (flag_1stScan)
		    flag_1stScan = false;
		else
		    if (pMS2Scan->vdIntensity.empty())
			delete pMS2Scan;
		    else
		    {
			if (ProNovoConfig::getMassAccuracyFragmentIon() < 0.1)
				pMS2Scan->isMS2HighRes = true;
			else
				pMS2Scan->isMS2HighRes = false;		      
			saveScan(pMS2Scan);
		    }
		pMS2Scan = new MS2Scan;
		pMS2Scan->sFT2Filename = sFT2Filename;
		TokenVector words(sline, " \r\t\n");
		input.clear();
		input.str(words[1]);
		input >> pMS2Scan->iScanId;
		input.clear();
		input.str(words[3]);
		input >> pMS2Scan->dParentMZ;
		input.clear();
		pMS2Scan->isMS1HighRes = isMS1HighRes(words[3]);
		// in case no Z Line
		pMS2Scan->iParentChargeState = 0;
		pMS2Scan->dParentNeutralMass = 0;
	    }else if (sline.at(0) == 'Z')