Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

chemistry.h

Go to the documentation of this file.
00001 // -*- C -*-
00002 
00003 /* 
00004  * Gnome Chemisty Utils
00005  * chemistry.h 
00006  *
00007  * Copyright (C) 2003-2004
00008  *
00009  * Developed by Jean Bréfort <jean.brefort@ac-dijon.fr>
00010  *
00011  * This library is free software; you can redistribute it and/or
00012  * modify it under the terms of the GNU Lesser General Public
00013  * License as published by the Free Software Foundation; either
00014  * version 2.1 of the License, or (at your option) any later version.
00015  *
00016  * This library is distributed in the hope that it will be useful,
00017  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00018  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00019  * Lesser General Public License for more details.
00020  *
00021  * You should have received a copy of the GNU Lesser General Public
00022  * License along with this library; if not, write to the 
00023  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
00024  * Boston, MA  02111-1307, USA.
00025  */
00026 
00027 
00042 #ifndef GCU_CHEMISTRY_H
00043 #define GCU_CHEMISTRY_H
00044 
00045 #include <glib.h>
00046 
00056 G_BEGIN_DECLS
00066 enum gcu_spin_state
00067 {
00068         GCU_N_A_SPIN,
00069         GCU_LOW_SPIN,
00070         GCU_HIGH_SPIN
00071 };
00072 
00085 enum gcu_radius_type
00086 {
00087         GCU_RADIUS_UNKNOWN,
00088         GCU_ATOMIC,
00089         GCU_IONIC,
00090         GCU_METALLIC,
00091         GCU_COVALENT,
00092         GCU_VAN_DER_WAALS
00093 };
00094 
00098 typedef struct
00099 {
00101         unsigned char Z;
00103         enum gcu_radius_type type;
00105         double value;
00107         char charge;
00109         char* scale;
00111         char cn;        //coordination number: -1: unspecified
00113         enum gcu_spin_state spin;
00114 } GcuAtomicRadius;
00115 
00119 typedef struct
00120 {
00122         unsigned char Z;
00124         double value;
00126         char* scale;
00127 } GcuElectronegativity;
00128 
00129 
00137 const gdouble* gcu_element_get_default_color(gint Z);
00143 const gchar* gcu_element_get_symbol(gint Z);
00149 const gchar* gcu_element_get_name(gint Z);
00155 gint gcu_element_get_Z(gchar* symbol);
00174 gboolean gcu_element_get_radius(GcuAtomicRadius* radius);
00188 gboolean gcu_element_get_electronegativity(GcuElectronegativity* en);
00196 const GcuAtomicRadius** gcu_element_get_radii(gint Z);
00204 const GcuElectronegativity** gcu_element_get_electronegativities(gint Z);
00205 
00206 G_END_DECLS
00207 
00208 #endif //GCU_CHEMISTRY_H

Generated on Fri Jan 30 11:36:54 2004 for The Gnome Chemistry Utils by doxygen 1.3.3