75 template<
typename ClassT>
89 ClassT *
clone()
const;
93 static void *
operator new(
size_t size);
94 static void operator delete(
void *
p,
size_t size);
105 template<
typename ClassT>
112 template<
typename ClassT>
124 return ::operator
new(size);
126 return memory_.alloc();
129 template<
typename ClassT>
144 ::operator
delete(
p);
150 template <
typename ClassT>
154 memory_.reserve_additional(s);
157 template <
typename ClassT>
161 return memory_.get_instantiations() * memory_.get_el_size();
164 template <
typename ClassT>
168 return memory_.get_total() * memory_.get_el_size();
171 template <
typename ClassT>
175 return memory_.get_instantiations();
180 template <
typename ClassT>
static sli::pool memory_
Declaration of static memory object.
Definition: instance.h:102
ClassT * clone() const
Definition: instance.h:107
Instance(const Instance< ClassT > &c)
Definition: instance.h:83
Instance(const ClassT &c)
Definition: instance.h:86
static size_t memory_capacity()
Definition: instance.h:166
Instance()
Definition: instance.h:80
Instance is a template is used to provide a pool-based management for arbitrary classes.
Definition: instance.h:76
static size_t memory_used()
Definition: instance.h:159
Default types used by the NEST kernel.
pool is a specialized allocator class for many identical small objects.
Definition: allocator.h:50
static void reserve_additional(size_t)
Definition: instance.h:152
const Name p("p")
current release probability (Tsodyks2_connection)
Definition: nest_names.h:218
const Name c("c")
Specific to Izhikevich 2003.
Definition: nest_names.h:62
static size_t instantiations()
Definition: instance.h:173