Chemical Data Processing Library C++ API - Version 1.2.0
Classes | Public Types | Public Member Functions | List of all members
CDPL::Chem::FragmentGenerator Class Reference

FragmentGenerator. More...

#include <FragmentGenerator.hpp>

+ Inheritance diagram for CDPL::Chem::FragmentGenerator:

Classes

class  ExcludePattern
 
class  FragmentationRule
 
class  FragmentLink
 

Public Types

typedef std::shared_ptr< FragmentGeneratorSharedPointer
 
typedef std::function< bool(const MolecularGraph &)> FragmentFilterFunction
 
typedef FragmentationRuleList::const_iterator ConstFragmentationRuleIterator
 
typedef FragmentationRuleList::iterator FragmentationRuleIterator
 
typedef ExcludePatternList::const_iterator ConstExcludePatternIterator
 
typedef ExcludePatternList::iterator ExcludePatternIterator
 
typedef FragmentLinkList::const_iterator ConstFragmentLinkIterator
 

Public Member Functions

 FragmentGenerator ()
 Constructs the FragmentGenerator instance. More...
 
 FragmentGenerator (const FragmentGenerator &gen)
 
virtual ~FragmentGenerator ()
 
FragmentGeneratoroperator= (const FragmentGenerator &gen)
 
void addFragmentationRule (const MolecularGraph::SharedPointer &match_ptn, unsigned int rule_id)
 
void addFragmentationRule (const FragmentationRule &rule)
 
const FragmentationRulegetFragmentationRule (std::size_t idx) const
 
FragmentationRulegetFragmentationRule (std::size_t idx)
 
ConstFragmentationRuleIterator getFragmentationRulesBegin () const
 
ConstFragmentationRuleIterator getFragmentationRulesEnd () const
 
FragmentationRuleIterator getFragmentationRulesBegin ()
 
FragmentationRuleIterator getFragmentationRulesEnd ()
 
void removeFragmentationRule (std::size_t idx)
 
std::size_t getNumFragmentationRules () const
 
void clearFragmentationRules ()
 
void addExcludePattern (const MolecularGraph::SharedPointer &match_ptn, unsigned int rule_id)
 
void addExcludePattern (const MolecularGraph::SharedPointer &match_ptn)
 
void addExcludePattern (const ExcludePattern &excl_ptn)
 
const ExcludePatterngetExcludePattern (std::size_t idx) const
 
ExcludePatterngetExcludePattern (std::size_t idx)
 
ConstExcludePatternIterator getExcludePatternsBegin () const
 
ConstExcludePatternIterator getExcludePatternsEnd () const
 
ExcludePatternIterator getExcludePatternsBegin ()
 
ExcludePatternIterator getExcludePatternsEnd ()
 
void removeExcludePattern (std::size_t idx)
 
std::size_t getNumExcludePatterns () const
 
void clearExcludePatterns ()
 
bool splitBondsIncluded () const
 
void includeSplitBonds (bool include)
 
const FragmentFilterFunctiongetFragmentFilterFunction () const
 
void setFragmentFilterFunction (const FragmentFilterFunction &func)
 
void generate (const MolecularGraph &molgraph, FragmentList &frag_list, bool append=false)
 
std::size_t getNumFragmentLinks () const
 
const FragmentLinkgetFragmentLink (std::size_t idx) const
 
ConstFragmentLinkIterator getFragmentLinksBegin () const
 
ConstFragmentLinkIterator getFragmentLinksEnd () const
 

Detailed Description

FragmentGenerator.

Member Typedef Documentation

◆ SharedPointer

◆ FragmentFilterFunction

◆ ConstFragmentationRuleIterator

typedef FragmentationRuleList::const_iterator CDPL::Chem::FragmentGenerator::ConstFragmentationRuleIterator

◆ FragmentationRuleIterator

typedef FragmentationRuleList::iterator CDPL::Chem::FragmentGenerator::FragmentationRuleIterator

◆ ConstExcludePatternIterator

typedef ExcludePatternList::const_iterator CDPL::Chem::FragmentGenerator::ConstExcludePatternIterator

◆ ExcludePatternIterator

typedef ExcludePatternList::iterator CDPL::Chem::FragmentGenerator::ExcludePatternIterator

◆ ConstFragmentLinkIterator

typedef FragmentLinkList::const_iterator CDPL::Chem::FragmentGenerator::ConstFragmentLinkIterator

Constructor & Destructor Documentation

◆ FragmentGenerator() [1/2]

CDPL::Chem::FragmentGenerator::FragmentGenerator ( )

Constructs the FragmentGenerator instance.

◆ FragmentGenerator() [2/2]

CDPL::Chem::FragmentGenerator::FragmentGenerator ( const FragmentGenerator gen)

◆ ~FragmentGenerator()

virtual CDPL::Chem::FragmentGenerator::~FragmentGenerator ( )
inlinevirtual

Member Function Documentation

◆ operator=()

FragmentGenerator& CDPL::Chem::FragmentGenerator::operator= ( const FragmentGenerator gen)

◆ addFragmentationRule() [1/2]

void CDPL::Chem::FragmentGenerator::addFragmentationRule ( const MolecularGraph::SharedPointer match_ptn,
unsigned int  rule_id 
)

◆ addFragmentationRule() [2/2]

void CDPL::Chem::FragmentGenerator::addFragmentationRule ( const FragmentationRule rule)

◆ getFragmentationRule() [1/2]

const FragmentationRule& CDPL::Chem::FragmentGenerator::getFragmentationRule ( std::size_t  idx) const

◆ getFragmentationRule() [2/2]

FragmentationRule& CDPL::Chem::FragmentGenerator::getFragmentationRule ( std::size_t  idx)

◆ getFragmentationRulesBegin() [1/2]

ConstFragmentationRuleIterator CDPL::Chem::FragmentGenerator::getFragmentationRulesBegin ( ) const

◆ getFragmentationRulesEnd() [1/2]

ConstFragmentationRuleIterator CDPL::Chem::FragmentGenerator::getFragmentationRulesEnd ( ) const

◆ getFragmentationRulesBegin() [2/2]

FragmentationRuleIterator CDPL::Chem::FragmentGenerator::getFragmentationRulesBegin ( )

◆ getFragmentationRulesEnd() [2/2]

FragmentationRuleIterator CDPL::Chem::FragmentGenerator::getFragmentationRulesEnd ( )

◆ removeFragmentationRule()

void CDPL::Chem::FragmentGenerator::removeFragmentationRule ( std::size_t  idx)

◆ getNumFragmentationRules()

std::size_t CDPL::Chem::FragmentGenerator::getNumFragmentationRules ( ) const

◆ clearFragmentationRules()

void CDPL::Chem::FragmentGenerator::clearFragmentationRules ( )

◆ addExcludePattern() [1/3]

void CDPL::Chem::FragmentGenerator::addExcludePattern ( const MolecularGraph::SharedPointer match_ptn,
unsigned int  rule_id 
)

◆ addExcludePattern() [2/3]

void CDPL::Chem::FragmentGenerator::addExcludePattern ( const MolecularGraph::SharedPointer match_ptn)

◆ addExcludePattern() [3/3]

void CDPL::Chem::FragmentGenerator::addExcludePattern ( const ExcludePattern excl_ptn)

◆ getExcludePattern() [1/2]

const ExcludePattern& CDPL::Chem::FragmentGenerator::getExcludePattern ( std::size_t  idx) const

◆ getExcludePattern() [2/2]

ExcludePattern& CDPL::Chem::FragmentGenerator::getExcludePattern ( std::size_t  idx)

◆ getExcludePatternsBegin() [1/2]

ConstExcludePatternIterator CDPL::Chem::FragmentGenerator::getExcludePatternsBegin ( ) const

◆ getExcludePatternsEnd() [1/2]

ConstExcludePatternIterator CDPL::Chem::FragmentGenerator::getExcludePatternsEnd ( ) const

◆ getExcludePatternsBegin() [2/2]

ExcludePatternIterator CDPL::Chem::FragmentGenerator::getExcludePatternsBegin ( )

◆ getExcludePatternsEnd() [2/2]

ExcludePatternIterator CDPL::Chem::FragmentGenerator::getExcludePatternsEnd ( )

◆ removeExcludePattern()

void CDPL::Chem::FragmentGenerator::removeExcludePattern ( std::size_t  idx)

◆ getNumExcludePatterns()

std::size_t CDPL::Chem::FragmentGenerator::getNumExcludePatterns ( ) const

◆ clearExcludePatterns()

void CDPL::Chem::FragmentGenerator::clearExcludePatterns ( )

◆ splitBondsIncluded()

bool CDPL::Chem::FragmentGenerator::splitBondsIncluded ( ) const

◆ includeSplitBonds()

void CDPL::Chem::FragmentGenerator::includeSplitBonds ( bool  include)

◆ getFragmentFilterFunction()

const FragmentFilterFunction& CDPL::Chem::FragmentGenerator::getFragmentFilterFunction ( ) const

◆ setFragmentFilterFunction()

void CDPL::Chem::FragmentGenerator::setFragmentFilterFunction ( const FragmentFilterFunction func)

◆ generate()

void CDPL::Chem::FragmentGenerator::generate ( const MolecularGraph molgraph,
FragmentList frag_list,
bool  append = false 
)

◆ getNumFragmentLinks()

std::size_t CDPL::Chem::FragmentGenerator::getNumFragmentLinks ( ) const

◆ getFragmentLink()

const FragmentLink& CDPL::Chem::FragmentGenerator::getFragmentLink ( std::size_t  idx) const

◆ getFragmentLinksBegin()

ConstFragmentLinkIterator CDPL::Chem::FragmentGenerator::getFragmentLinksBegin ( ) const

◆ getFragmentLinksEnd()

ConstFragmentLinkIterator CDPL::Chem::FragmentGenerator::getFragmentLinksEnd ( ) const

The documentation for this class was generated from the following file: