23#ifndef _PROTEINLIST_DECOYGENERATOR_HPP_
24#define _PROTEINLIST_DECOYGENERATOR_HPP_
29#include <boost/cstdint.hpp>
52 virtual const std::string&
decoyPrefix()
const {
return decoyPrefix_;}
66 virtual size_t size()
const;
67 virtual size_t find(
const std::string&
id)
const;
ProteinList decoy generator for creating decoy proteins on the fly.
boost::shared_ptr< Impl > impl_
virtual size_t find(const std::string &id) const
ProteinList_DecoyGenerator & operator=(const ProteinList_DecoyGenerator &)
ProteinList_DecoyGenerator(const ProteinListPtr &original, const PredicatePtr &predicate)
ProteinList_DecoyGenerator(const ProteinList_DecoyGenerator &)
virtual ProteinPtr protein(size_t index, bool getSequence=true) const
virtual size_t size() const
boost::shared_ptr< Predicate > PredicatePtr
creates a reversed copy of every target protein with the specified decoy string prefixed to the id
virtual ProteinPtr generate(const Protein &protein) const
return a decoy protein based on an input target protein
ProteinList_DecoyGeneratorPredicate_Reversed(const std::string &decoyPrefix)
creates a randomly shuffled copy of every target protein with the specified decoy string prefixed to ...
ProteinList_DecoyGeneratorPredicate_Shuffled(const std::string &decoyPrefix, boost::uint32_t randomSeed=0u)
boost::shared_ptr< Impl > impl_
virtual ProteinPtr generate(const Protein &protein) const
return a decoy protein based on an input target protein
Inheritable pass-through implementation for wrapping a ProteinList.
boost::shared_ptr< Protein > ProteinPtr
boost::shared_ptr< ProteinList > ProteinListPtr
client-implemented generator predicate – called during construction of ProteinList_DecoyGenerator to ...
virtual const std::string & decoyPrefix() const
return the string prefixed to a protein id to indicate it is a decoy
virtual ProteinPtr generate(const Protein &protein) const =0
return a decoy protein based on an input target protein