00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef _POOL_H
00011 #define _POOL_H
00012 #include "PoolBase.h"
00019 class Pool: public PoolBase
00020 {
00021 public:
00022 Pool();
00023 ~Pool();
00024
00026
00027
00029
00030 void vSetN( const Eref& e, double v );
00031 double vGetN( const Eref& e ) const;
00032 void vSetNinit( const Eref& e, double v );
00033 double vGetNinit( const Eref& e ) const;
00034 void vSetDiffConst( const Eref& e, double v );
00035 double vGetDiffConst( const Eref& e ) const;
00036 void vSetMotorConst( const Eref& e, double v );
00037 double vGetMotorConst( const Eref& e ) const;
00038
00039 void vSetConc( const Eref& e, double v );
00040 double vGetConc( const Eref& e ) const;
00041 void vSetConcInit( const Eref& e, double v );
00042
00043
00050 void vSetVolume( const Eref& e, double v );
00051 double vGetVolume( const Eref& e ) const;
00052
00053 void vSetSpecies( const Eref& e, SpeciesId v );
00054 SpeciesId vGetSpecies( const Eref& e ) const;
00055
00057
00058
00060
00061 void vHandleMolWt( const Eref& e, double v );
00062 void vProcess( const Eref& e, ProcPtr p );
00063 void vReinit( const Eref& e, ProcPtr p );
00064 void vReac( double A, double B );
00065
00067
00069 void increment( double val );
00070 void decrement( double val );
00071 void nIn( double val );
00072
00074 static const Cinfo* initCinfo();
00075 private:
00076 double n_;
00077 double nInit_;
00078 double diffConst_;
00079 double motorConst_;
00080 double A_;
00081 double B_;
00082
00087 unsigned int species_;
00088 };
00089
00090 #endif // _POOL_H