10 #ifndef _RD_SMILESWRITE_H 11 #define _RD_SMILESWRITE_H 20 namespace SmilesWrite {
35 bool allHsExplicit=
false);
47 bool doKekule=
false,
bool allBondsExplicit=
false);
63 bool doKekule=
false,
int rootedAtAtom=-1,
65 bool allBondsExplicit=
false,
66 bool allHsExplicit=
false);
89 const std::vector<int> &atomsToUse,
90 const std::vector<int> *bondsToUse=0,
91 const std::vector<std::string> *atomSymbols=0,
92 const std::vector<std::string> *bondSymbols=0,
93 bool doIsomericSmiles=
false,
94 bool doKekule=
false,
int rootedAtAtom=-1,
96 bool allBondsExplicit=
false,
97 bool allHsExplicit=
false);
std::string MolToSmiles(const ROMol &mol, bool doIsomericSmiles=false, bool doKekule=false, int rootedAtAtom=-1, bool canonical=true, bool allBondsExplicit=false, bool allHsExplicit=false)
returns canonical SMILES for a molecule
std::string GetBondSmiles(const Bond *bond, int atomToLeftIdx=-1, bool doKekule=false, bool allBondsExplicit=false)
returns the SMILES for a bond
ROMol is a molecule class that is intended to have a fixed topology.
std::string GetAtomSmiles(const Atom *atom, bool doKekule=false, const Bond *bondIn=0, bool allHsExplicit=false)
returns the SMILES for an atom
Includes a bunch of functionality for handling Atom and Bond queries.
bool inOrganicSubset(int atomicNumber)
returns true if the atom number is in the SMILES organic subset
class for representing a bond
std::string MolFragmentToSmiles(const ROMol &mol, const std::vector< int > &atomsToUse, const std::vector< int > *bondsToUse=0, const std::vector< std::string > *atomSymbols=0, const std::vector< std::string > *bondSymbols=0, bool doIsomericSmiles=false, bool doKekule=false, int rootedAtAtom=-1, bool canonical=true, bool allBondsExplicit=false, bool allHsExplicit=false)
returns canonical SMILES for part of a molecule
The class for representing atoms.