void OfflinePrecursorIonSelection::createProteinSequenceBasedLPInclusionList(String include, String rt_model_file, String pt_model_file,
                                                                               FeatureMap & precursors)
  {
    PrecursorIonSelectionPreprocessing pisp;
    Param pisp_param = pisp.getParameters();
    pisp_param.setValue("store_peptide_sequences", "true");
    pisp.setParameters(pisp_param);
    pisp.dbPreprocessing(include, rt_model_file, pt_model_file, false);
    //  std::cout << "now learn rt probabilities"<<std::endl;
    //pisp.learnRTProbabilities(f_map,rt_model,0.5);
    //  pisp.setGaussianParameters(3,-1);
    PSLPFormulation ilp_wrapper;
    Param opis_param = param_.copy("ProteinBasedInclusion:", true);
    opis_param.remove("max_list_size");
    ilp_wrapper.setParameters(opis_param);
    ilp_wrapper.setLPSolver(solver_);
    // std::cout << "nun die inclusion liste erstellen"<<std::endl;
    // std::cout << param_.getValue("ms2_spectra_per_rt_bin") <<std::endl;
    // std::cout << param_.getValue("ProteinBasedInclusion:max_list_size") <<std::endl;
    ilp_wrapper.createAndSolveILPForInclusionListCreation(pisp, param_.getValue("ms2_spectra_per_rt_bin"),
                                                          param_.getValue("ProteinBasedInclusion:max_list_size"), precursors, true); //,960.,3840.,30.);

  }
PrecursorIonSelectionPreprocessing* ptr = nullptr;
PrecursorIonSelectionPreprocessing* nullPointer = nullptr;
START_SECTION(PrecursorIonSelectionPreprocessing())
	ptr = new PrecursorIonSelectionPreprocessing();
	TEST_NOT_EQUAL(ptr, nullPointer)
END_SECTION

START_SECTION(~PrecursorIonSelectionPreprocessing())
	delete ptr;
END_SECTION

ptr = new PrecursorIonSelectionPreprocessing();

START_SECTION(PrecursorIonSelectionPreprocessing(const PrecursorIonSelectionPreprocessing &source))
	PrecursorIonSelectionPreprocessing copy(*ptr);
	TEST_EQUAL(copy.getParameters(), ptr->getParameters())
END_SECTION

START_SECTION(PrecursorIonSelectionPreprocessing& operator=(const PrecursorIonSelectionPreprocessing &source))
  PrecursorIonSelectionPreprocessing copy;
	copy = *ptr;
	TEST_EQUAL(copy.getParameters(), ptr->getParameters())
END_SECTION

Param param;
param.setValue("precursor_mass_tolerance",0.9);
param.setValue("precursor_mass_tolerance_unit","Da");
param.setValue("missed_cleavages",0);
std::string tmp_filename;
NEW_TMP_FILE(tmp_filename);