7 #ifndef BALL_KERNEL_STANDARDPREDICATES_H
8 #define BALL_KERNEL_STANDARDPREDICATES_H
10 #ifndef BALL_DATATYPE_STRINGHASHMAP_H
14 #ifndef BALL_DATATYPE_HASHSET_H
18 #ifndef BALL_KERNEL_BOND_H
22 #ifndef BALL_KERNEL_EXPRESSION_H
26 #ifndef BALL_STRUCTURE_SMARTSMATCHER_H
30 #ifndef BALL_QSAR_AROMATICITYPROCESSOR_H
34 #ifndef BALL_QSAR_RINGPERCEPTIONPROCESSOR_H
64 virtual bool operator () (
const Atom& atom)
const;
81 virtual bool operator () (
const Atom& atom)
const;
98 virtual bool operator () (
const Atom& atom)
const;
115 virtual bool operator () (
const Atom& atom)
const;
131 virtual bool operator () (
const Atom& atom)
const;
147 virtual bool operator () (
const Atom& atom)
const;
164 virtual bool operator () (
const Atom& atom)
const;
181 virtual bool operator () (
const Atom& atom)
const;
198 virtual bool operator () (
const Atom& atom)
const;
215 virtual bool operator () (
const Atom& atom)
const;
232 virtual bool operator () (
const Atom& atom)
const;
253 virtual bool operator () (
const Atom& atom)
const;
269 virtual bool operator () (
const Atom& atom)
const;
286 virtual bool operator () (
const Atom& atom)
const;
301 virtual bool operator () (
const Atom& atom)
const;
317 virtual bool operator () (
const Atom& atom)
const;
342 virtual bool operator () (
const Atom& atom)
const;
367 virtual bool operator () (
const Atom& atom)
const;
388 virtual bool operator () (
const Atom& atom)
const;
406 virtual bool operator () (
const Atom& atom)
const;
425 virtual bool operator () (
const Atom& atom)
const;
449 virtual bool operator () (
const Atom& atom)
const;
452 bool testPredicate_(
const Atom& atom)
const;
492 BONDTYPE__UNINITIALISED = 0,
494 BONDTYPE__SINGLE = 2,
495 BONDTYPE__DOUBLE = 3,
496 BONDTYPE__TRIPLE = 4,
497 BONDTYPE__QUADRUPLE = 5,
498 BONDTYPE__AROMATIC = 6
518 virtual void destroy();
522 void setParent(
CTPNode* parent);
534 void removeChild(
CTPNode* child);
538 ::std::list<CTPNode*>& getChildren();
550 Size getNumberOfChildren()
const;
554 void setBondType(
Size type);
558 void setBondType(
char type);
562 Size getBondType()
const;
566 char getBondTypeChar()
const;
574 void setSymbol(
const String& symbol);
582 void unsetFinished();
586 bool isFinished()
const;
598 bool isLinked()
const;
602 void linkWith(
CTPNode* partner);
642 :
public binary_function<const CTPNode*, const CTPNode*, bool>
647 if ((a != 0) && (b != 0))
660 Log.
error() <<
"greater_: got NULL pointers" << std::endl;
674 ConnectedToPredicate(const ConnectedToPredicate& predicate);
676 virtual ~ConnectedToPredicate();
678 virtual
void clear();
684 virtual
bool operator () (const
Atom& atom) const;
688 void dump(const CTPNode* current) const;
690 virtual
void setArgument(const
String& argument);
707 CTPNode* createNewNode_(CTPNode* node);
714 void cleanUpNodes_(std::vector<CTPNode*>& all_nodes);
718 CTPNode* parse_(const
String& input);
720 bool bondOrderMatch_(const
Bond& bond, const CTPNode& node) const;
722 bool find_(const
Atom& atom, const CTPNode* current,
739 virtual bool operator () (
const Atom& atom)
const;
754 virtual bool operator () (
const Atom& atom)
const;
770 virtual bool operator () (
const Atom& atom)
const;
790 virtual bool operator () (
const Atom& atom)
const;
812 virtual bool operator () (
const Atom& atom)
const;
828 virtual bool operator () (
const Atom& atom)
const;
853 bool operator () (
const Atom& atom);
857 bool dfs(
const Atom& atom,
const Size limit);
863 void setRingSize(
Size n);
871 const std::vector<const Atom*>& getRingAtoms()
const;
919 virtual bool operator () (
const Atom& atom)
const;
935 #endif // BALL_KERNEL_STANDARDPREDICATES_H