tautomer.h
Go to the documentation of this file.
00001 /********************************************************************** 00002 tautomer.h - Tautomer support 00003 00004 Copyright (C) 2011 by Tim Vandermeersch 00005 00006 This file is part of the Open Babel project. 00007 For more information, see <http://openbabel.org/> 00008 00009 This program is free software; you can redistribute it and/or modify 00010 it under the terms of the GNU General Public License as published by 00011 the Free Software Foundation version 2 of the License. 00012 00013 This program is distributed in the hope that it will be useful, 00014 but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00016 GNU General Public License for more details. 00017 ***********************************************************************/ 00018 00019 #include <openbabel/babelconfig.h> 00020 #ifndef OBAPI 00021 #define OBAPI 00022 #endif 00023 00024 namespace OpenBabel { 00025 00026 class OBMol; 00027 00070 class OBAPI TautomerFunctor 00071 { 00072 public: 00073 virtual ~TautomerFunctor() {} 00077 virtual void operator()(OBMol *mol) = 0; 00078 }; 00079 00092 void OBAPI EnumerateTautomers(OBMol *mol, TautomerFunctor &functor); 00093 00103 void OBAPI CanonicalTautomer(OBMol *mol); 00104 00105 } 00106