00001 /********************************************************************** 00002 internalcoord.h - Handle OBInternalCoord class, Cartesian <=> Z-matrix 00003 00004 Copyright (C) 1998-2001 by OpenEye Scientific Software, Inc. 00005 Some portions Copyright (C) 2001-2006 by Geoffrey R. Hutchison 00006 Some portions Copyright (C) 2003 by Michael Banck 00007 00008 This file is part of the Open Babel project. 00009 For more information, see <http://openbabel.sourceforge.net/> 00010 00011 This program is free software; you can redistribute it and/or modify 00012 it under the terms of the GNU General Public License as published by 00013 the Free Software Foundation version 2 of the License. 00014 00015 This program is distributed in the hope that it will be useful, 00016 but WITHOUT ANY WARRANTY; without even the implied warranty of 00017 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00018 GNU General Public License for more details. 00019 ***********************************************************************/ 00020 00021 #ifndef OB_INTERNALCOORD_H 00022 #define OB_INTERNALCOORD_H 00023 00024 #include <openbabel/babelconfig.h> 00025 00026 #ifndef EXTERN 00027 # define EXTERN extern 00028 #endif 00029 00030 namespace OpenBabel 00031 { 00032 00033 class OBAtom; 00034 00060 class OBAPI OBInternalCoord 00061 { 00062 public: 00063 //class members 00064 OBAtom *_a; 00065 OBAtom *_b; 00066 OBAtom *_c; 00067 double _dst; 00068 double _ang; 00069 double _tor; 00070 00072 OBInternalCoord(OBAtom *a= NULL, OBAtom *b= NULL, OBAtom *c= NULL, 00073 double dst = 0.0, double ang = 0.0, double tor = 0.0) : 00074 _a(a), _b(b), _c(c), _dst(dst), _ang(ang), _tor(tor) 00075 {} 00076 }; 00077 00078 } // end namespace 00079 00080 #endif // OB_INTERNALCOORD_H 00081