/**************************************************************************

	AlphaSyn.h													JJS 9/13/95
	
		part of CONICAL, the Computational Neuroscience Class Library
	
	This file implements a classic "alpha function" synapse.  When the
	voltage in the presynaptic compartment (i.e., the VSource) exceeds
	a threshold Vthresh, the alpha function is initiated.  A fixed
	conductance change ensues, following a double exponential specified
	by tau1 and tau2.  The function cannot be started again until
	refractTime has passed.

	Requires:
		Synapse			-- base class
		
**************************************************************************/

#ifndef ALPHASYN_H
#define ALPHASYN_H

#include "Synapse.h"

class AlphaSyn : public Synapse
{
  public:

	AlphaSyn( VSink *pTo, VSource *pComp, real pMaxG=0.1 )		// constructor
	: Synapse( pTo, pComp, pMaxG ), tau1(0), tau2(0) {}
	
	virtual void Step( const real dt );		// update G

	// public variables (function parameters)
	
	real tau1, tau2;	// time constants
};

#endif
