NEST main@caf0ae8
 
Loading...
Searching...
No Matches
growth_curve_factory.h
Go to the documentation of this file.
1/*
2 * growth_curve_factory.h
3 *
4 * This file is part of NEST.
5 *
6 * Copyright (C) 2004 The NEST Initiative
7 *
8 * NEST is free software: you can redistribute it and/or modify
9 * it under the terms of the GNU General Public License as published by
10 * the Free Software Foundation, either version 2 of the License, or
11 * (at your option) any later version.
12 *
13 * NEST is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public License
19 * along with NEST. If not, see <http://www.gnu.org/licenses/>.
20 *
21 */
22
23#ifndef GROWTH_CURVE_FACTORY_H
24#define GROWTH_CURVE_FACTORY_H
25
26// Includes from nestkernel:
27#include "growth_curve.h"
28
29namespace nest
30{
31
32class GrowthCurveGaussian;
33class GrowthCurveLinear;
34class GrowthCurveSigmoid;
35
44{
45public:
47 {
48 }
49 virtual GrowthCurve* create() const = 0;
50};
51
56template < typename GrowthCurveType >
58{
59
60public:
62 create() const override
63 {
64 return new GrowthCurveType();
65 }
66};
67
68} // namespace nest
69
70#endif
Generic factory class for GrowthCurve objects.
Definition growth_curve_factory.h:44
virtual GrowthCurve * create() const =0
virtual ~GenericGrowthCurveFactory()
Definition growth_curve_factory.h:46
Factory class for generating objects of type GrowthCurve.
Definition growth_curve_factory.h:58
GrowthCurve * create() const override
Definition growth_curve_factory.h:62
Defines the way the number of synaptic elements changes through time according to the calcium concent...
Definition growth_curve.h:50
Namespace for the NEST simulation kernel.
Definition beta_normalization_factor.h:33