node.h

00001 /****************************************************************************************
00002                                           node.h 
00003                                         ----------
00004     copyright            : (C) 2006 Jean-Luc Perret - Pierre Mahé
00005     email                : jean-luc.perret@unine.ch - pierre.mahe@ensmp.fr
00006  ***************************************************************************************/
00007 
00008 /****************************************************************************************
00009  *                                                                                      *
00010  *      This program is free software; you can redistribute it and/or                   *
00011  *      modify it under the terms of the GNU Lesser General Public                      *
00012  *      License as published by the Free Software Foundation; either                    *
00013  *      version 2.1 of the License, or (at your option) any later version.              *
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 GNU               *
00018  *      Lesser General Public License for more details.                                 *
00019  *                                                                                      *
00020  *      You should have received a copy of the GNU Lesser General Public                *
00021  *      License along with this library; if not, write to the Free Software             *
00022  *      Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA      *
00023  *                                                                                      *
00024  ****************************************************************************************/
00025 
00026 
00027 #ifndef NODE_H
00028 #define NODE_H
00029 
00030 #include <iostream>
00031 #include <datacontainer.h>
00032 
00033 
00037 class Node : public DataContainer{
00038 public:
00039 
00041 
00042 
00045         Node();
00046         
00049         Node( const DataContainer& aDataContainer );
00050         
00053         ~Node();
00054 
00056 
00058 
00059 
00062         string getLabel(){ return label; }
00063 
00066         void setLabel( string aString );
00067 
00070         void setKashimaPS(double aPs){ ps = aPs; flagHasPs = true; }
00071 
00074         double getKashimaPS( bool silentError = false );
00075         //{ return ( getFloatDescriptor(PS)->getValue( silentError ) ); }
00076 
00079         void setKashimaPQ( double aPq ){ pq = aPq; flagHasPq = true; }
00080 
00083         double getKashimaPQ( bool silentError = false );
00084 
00087         int getRPosition(){ return( rPosition ); }
00088 
00091         void setRPosition( int aR ){ rPosition = aR; }
00092 
00094 
00095 
00096 
00098 
00099 
00101         string toStringShort();
00103 
00104 
00105 
00106 // ****************************** //
00107 // **** DEPRECATED FUNCTIONS **** //
00108 // ****************************** //
00109         //void resetFlagHasPQ();
00110         //void setFlagHasPQ( bool );
00111         //bool hasPQ(){ return flagHasPq; }
00112 
00113 
00114 protected:
00115 
00118         string label;
00119 
00122         double pq;
00123 
00126         bool flagHasPq;
00127 
00130         double ps;
00131 
00134         bool flagHasPs;
00135 
00138         int rPosition;
00139 
00140 private:
00141 
00142 };
00143 
00144 #endif

Generated on Wed Nov 28 12:12:51 2007 for ChemCpp by  doxygen 1.4.6