00001 #ifndef _Mg_block_h
00002 #define _Mg_block_h
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 class MgBlock: public ChanCommon
00017 {
00018 public:
00019 MgBlock();
00020
00022
00024
00025 void setKMg_A( double Gbar );
00026 double getKMg_A() const;
00027 void setKMg_B( double Ek );
00028 double getKMg_B() const;
00029 void setCMg( double CMg );
00030 double getCMg() const;
00031 void setZk( double Zk );
00032 double getZk() const;
00034
00036
00049 void vProcess( const Eref& e, ProcPtr p );
00050
00058 void vReinit( const Eref& e, ProcPtr p );
00059
00063
00064 void origChannel( const Eref& e, double Gk, double Ek );
00065
00066 static const Cinfo* initCinfo();
00067 private:
00069 double Zk_;
00071 double KMg_A_;
00073 double KMg_B_;
00075 double CMg_;
00080 double origGk_;
00081 };
00082
00083
00084 #endif // _Mg_block_h