5 #ifndef BALL_STRUCTURE_KEKULIZER_H 6 #define BALL_STRUCTURE_KEKULIZER_H 12 #ifndef BALL_DATATYPE_HASHMAP_H 44 AtomInfo& operator = (
const AtomInfo& ai) ;
53 std::vector<Bond*> abonds;
56 std::vector<Position> partner_id;
68 Index uncharged_double;
85 void setAromaticRings(
const std::vector<std::set<Atom*> >& rings) { aromatic_rings_ = rings;}
88 void setRings(
const std::vector<std::set<Atom*> >& rings) { rings_ = rings;}
107 bool fixAromaticRings_();
108 void fixAromaticSystem_(
Position it);
111 void getMaximumValence_();
114 void calculateAromaticSystems_();
115 void collectSystems_(
Atom& atom);
116 void collectAromaticAtoms_();
117 bool hasAromaticBonds_(
Atom& atom);
119 Position calculateDistanceScores_();
146 #endif // BALL_STRUCTURE_KEKULIZER_H
void setRings(const std::vector< std::set< Atom *> > &rings)
HashMap class based on the STL map (containing serveral convenience functions)
std::vector< std::vector< AtomInfo > > solutions_
std::vector< std::set< Atom * > > aromatic_rings_
void setAromaticRings(const std::vector< std::set< Atom *> > &rings)
std::vector< std::set< Atom * > > rings_
bool useFormalCharges() const
BALL_EXPORT bool operator<(const String &s1, const String &s2)
std::vector< std::set< Atom * > > aromatic_systems_
std::set< const Atom * > all_aromatic_atoms_
HashMap< Atom *, Index > max_valence_
std::vector< Bond * > unassigned_bonds_
std::set< const Atom * > aromatic_atoms_
std::vector< AtomInfo > atom_infos_
const std::vector< Bond * > & getUnassignedBonds() const
void setUseFormalCharges(bool state)
std::set< Atom * > current_aromatic_system_
#define BALL_CREATE(name)