10 #ifndef _RD_SMILESWRITE_H 11 #define _RD_SMILESWRITE_H 20 namespace SmilesWrite {
35 const Bond *bondIn = 0,
bool allHsExplicit =
false);
47 bool doKekule =
false,
bool allBondsExplicit =
false);
65 bool doKekule =
false,
int rootedAtAtom = -1,
66 bool canonical =
true,
bool allBondsExplicit =
false,
67 bool allHsExplicit =
false);
93 const std::vector<int> &atomsToUse,
94 const std::vector<int> *bondsToUse = 0,
95 const std::vector<std::string> *atomSymbols = 0,
96 const std::vector<std::string> *bondSymbols = 0,
97 bool doIsomericSmiles =
false,
98 bool doKekule =
false,
int rootedAtAtom = -1,
99 bool canonical =
true,
100 bool allBondsExplicit =
false,
101 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.