00001
00002
00003
00004
00005
00006 #ifndef _RD_SMILESPARSE_H_
00007 #define _RD_SMILESPARSE_H_
00008
00009 #include <string>
00010 #include <exception>
00011
00012 namespace RDKit{
00013 class RWMol;
00014
00015 RWMol *SmilesToMol(std::string smi,int debugParse=0,bool sanitize=1);
00016 RWMol *SmartsToMol(std::string sma,int debugParse=0,bool mergeHs=false);
00017
00018 class SmilesParseException : public std::exception {
00019 public:
00020 SmilesParseException(const char *msg) : _msg(msg) {};
00021 SmilesParseException(const std::string msg) : _msg(msg) {};
00022 const char *message () const { return _msg.c_str(); };
00023 ~SmilesParseException () throw () {};
00024 private:
00025 std::string _msg;
00026 };
00027
00028 }
00029
00030 #endif