/**************************************************************************	Cmprtmnt.h												JJS 8/26/95			part of CONICAL, the Computational Neuroscience Class Library		A Compartment is an isopotential volume, to which other compartments	may be attached through Links.  A Compartment may also have a number	of Channels.  The current flow from these objects is balanced against	the current flow through the Compartment membrane, to produce a new	Compartment potential (voltage) in the Step method.	Requires:		VSource		-- base class		VSink		-- base class		Stepper		-- base class		Link.h		-- header file for the Link class**************************************************************************/#ifndef COMPARTMENT_H#define COMPARTMENT_H#include "VSource.h"#include "VSink.h"#include "Stepper.h"// declare the Compartment classclass Compartment : public VSource, public VSink, public Stepper{  public:		Compartment( void );			// constructor		virtual void Step( const real dt );		// update V[]	virtual real GetV( void )				// get current voltage	{ return V[itsMaster->GetCurIdx()]; }		// public variables: feel free to read or set these between steps!		real Gm;		// membrane conductance (siemens)	real EGm;		// reversal potential times Gm (volt seimens, or amps)	real negC;		// negative of the membrane capacitance (farads)	real Gi;		// internal (axial) conductance (siemens)};#endif
