Go to the documentation of this file.
4 #ifndef BALL_MOLMEC_AMBER_GAFFCESPARSER_H
5 #define BALL_MOLMEC_AMBER_GAFFCESPARSER_H
7 #ifndef BALL_KERNEL_ATOM_H
11 #ifndef BALL_DATATYPE_STRING_H
110 bool hasBond_(
Atom* atom,
Atom* predecessor,
int bond_type,
int feature_number);
CESelementPredicate(GAFFCESParser *parser)
void initElementSymbols()
void setElementName(String name)
void initStringToWildcard()
~CESwildcardsConnectionPredicate()
CESwildcardsPredicate(GAFFCESParser *parser)
APSTerm(APSType new_type, int new_feature_number)
~CESelementConnectionPredicate()
void setNumberOfPartners(Size number)
bool hasBond_(Atom *atom, Atom *predecessor, int bond_type, int feature_number)
std::set< String > element_symbols_
CESwildcards getWildcards()
void setWildcards(String new_wildcard)
void addNewOR(APSMatcher::APSType aps, int feature_number)
void endChildPredicates()
bool parse(const String &cesstring)
CESPredicate * current_root_predicate
void addTruePredicate() const
bool operator()(Atom &atom, Atom &predecessor)
void startChildPredicates()
APSMatcher::APSType current_aps_type
CESPredicate(GAFFCESParser *parser)
Size getNumberOfPartners()
int isNRingAtom(Size size, Atom &atom)
void setWildcards(String new_wildcard)
bool match(Atom &atom) const
bool isNonRingAtom(Atom &atom)
Size getNumberOfPartners()
bool GAFFCESatomMatcher(Atom &atom, const String &cesstring)
bool alreadySeenThisAtom(Atom *atom)
TruePredicate root
The root atom has no CESPredicate to test, so it's considered always true.
bool matchWildcards(Atom &atom)
const std::set< String > & getElementSymbols()
Size read(char *buf, Size max_size)
CESPredicate * current_predicate
std::vector< CESPredicate * > children
bool matchWildcards(Atom &atom)
void addCESelementPredicate(String name)
bool checkGAFFProperties(Atom &atom, Atom &predecessor, APSTerm aps)
virtual bool operator()(Atom &atom)
std::map< String, CESwildcards > getStringToWildcard()
void addCESelementConnectionPredicate(Size partners, String name)
void addCESwildcardsPredicate(String wildcard)
std::vector< std::vector< APSTerm > > aps_terms
CESelementConnectionPredicate(GAFFCESParser *parser)
GAFFCESParser * current_parser
void addCESwildcardsConnectionPredicate(String wildcard, Size partners)
std::map< String, CESwildcards > stringToWildcard_
CESwildcardsConnectionPredicate(GAFFCESParser *parser)
void setElementName(String name)
CESwildcards getWildcards()
bool isRingAtom(Atom &atom)
virtual bool match(Atom &)
TruePredicate(GAFFCESParser *parser)
void setNumberOfPartners(Size number)
CESPredicate * root_predicate