29 #ifndef CDPL_CONFGEN_TORSIONCATEGORY_HPP
30 #define CDPL_CONFGEN_TORSIONCATEGORY_HPP
35 #include <boost/ptr_container/ptr_vector.hpp>
51 typedef boost::ptr_vector<TorsionCategory> CategoryList;
52 typedef boost::ptr_vector<TorsionRule> RuleList;
133 void checkCategoryIndex(std::size_t idx,
bool it)
const;
135 void checkRuleIndex(std::size_t idx,
bool it)
const;
138 std::string matchPatternStr;
140 unsigned int bondAtom1Type;
141 unsigned int bondAtom2Type;
143 CategoryList categories;
Definition of the preprocessor macro CDPL_CONFGEN_API.
#define CDPL_CONFGEN_API
Tells the compiler/linker which classes, functions and variables are part of the library API.
Definition of the class CDPL::Chem::MolecularGraph.
Definition of the class CDPL::ConfGen::TorsionRule.
std::shared_ptr< MolecularGraph > SharedPointer
A reference-counted smart pointer [SHPTR] for dynamically allocated MolecularGraph instances.
Definition: MolecularGraph.hpp:58
Definition: TorsionCategory.hpp:49
TorsionCategory & addCategory()
void removeCategory(const CategoryIterator &it)
RuleIterator getRulesBegin()
void setBondAtom1Type(unsigned int type)
ConstCategoryIterator getCategoriesBegin() const
const Chem::MolecularGraph::SharedPointer & getMatchPattern() const
void removeRule(std::size_t idx)
unsigned int getBondAtom1Type() const
std::size_t getNumCategories(bool recursive=false) const
const std::string & getName() const
TorsionCategory & addCategory(const TorsionCategory &cat)
const std::string & getMatchPatternString() const
void removeCategory(std::size_t idx)
const TorsionRule & getRule(std::size_t idx) const
RuleList::const_iterator ConstRuleIterator
Definition: TorsionCategory.hpp:58
unsigned int getBondAtom2Type() const
virtual ~TorsionCategory()
Definition: TorsionCategory.hpp:62
ConstRuleIterator getRulesBegin() const
CategoryIterator getCategoriesBegin()
ConstRuleIterator getRulesEnd() const
void setMatchPatternString(const std::string &ptn_str)
void removeRule(const RuleIterator &it)
CategoryList::iterator CategoryIterator
Definition: TorsionCategory.hpp:55
void setMatchPattern(const Chem::MolecularGraph::SharedPointer &ptn)
const TorsionCategory & getCategory(std::size_t idx) const
TorsionRule & addRule(const TorsionRule &rule)
void setBondAtom2Type(unsigned int type)
TorsionCategory & getCategory(std::size_t idx)
TorsionRule & getRule(std::size_t idx)
CategoryIterator getCategoriesEnd()
std::size_t getNumRules(bool recursive=false) const
RuleList::iterator RuleIterator
Definition: TorsionCategory.hpp:57
ConstCategoryIterator getCategoriesEnd() const
RuleIterator getRulesEnd()
void setName(const std::string &name)
void swap(TorsionCategory &cat)
CategoryList::const_iterator ConstCategoryIterator
Definition: TorsionCategory.hpp:56
Definition: TorsionRule.hpp:47
The namespace of the Chemical Data Processing Library.