Skip to content

Commit b277a26

Browse files
authored
Update for '1uc/refactor-internal-signature' (#2)
1 parent 01cd8b6 commit b277a26

File tree

2 files changed

+37
-33
lines changed

2 files changed

+37
-33
lines changed

func_proc/neuron/func_proc.cpp

Lines changed: 25 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -121,10 +121,10 @@ namespace neuron {
121121
hoc_retpushx(1.);
122122
}
123123
/* Mechanism procedures and functions */
124-
inline double x_plus_a_test_func_proc(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a);
125-
inline int set_x_42_test_func_proc(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt);
126-
inline int set_x_a_test_func_proc(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a);
127-
inline int set_a_x_test_func_proc(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt);
124+
inline double x_plus_a_test_func_proc(_nrn_mechanism_cache_range* _ml, test_func_proc_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a);
125+
inline int set_x_42_test_func_proc(_nrn_mechanism_cache_range* _ml, test_func_proc_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt);
126+
inline int set_x_a_test_func_proc(_nrn_mechanism_cache_range* _ml, test_func_proc_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a);
127+
inline int set_a_x_test_func_proc(_nrn_mechanism_cache_range* _ml, test_func_proc_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt);
128128

129129

130130
/** connect global (scalar) variables to hoc -- */
@@ -180,8 +180,9 @@ namespace neuron {
180180
_ppvar = _local_prop ? _nrn_mechanism_access_dparam(_local_prop) : nullptr;
181181
_thread = _extcall_thread.data();
182182
_nt = nrn_threads;
183+
auto inst = make_instance_test_func_proc(_ml_real);
183184
_r = 1.;
184-
set_x_42_test_func_proc(_ml, id, _ppvar, _thread, _nt);
185+
set_x_42_test_func_proc(_ml, inst, id, _ppvar, _thread, _nt);
185186
hoc_retpushx(_r);
186187
}
187188
static double _npy_set_x_42(Prop* _prop) {
@@ -195,8 +196,9 @@ namespace neuron {
195196
_ppvar = _nrn_mechanism_access_dparam(_prop);
196197
_thread = _extcall_thread.data();
197198
_nt = nrn_threads;
199+
auto inst = make_instance_test_func_proc(_ml_real);
198200
_r = 1.;
199-
set_x_42_test_func_proc(_ml, id, _ppvar, _thread, _nt);
201+
set_x_42_test_func_proc(_ml, inst, id, _ppvar, _thread, _nt);
200202
return(_r);
201203
}
202204
static void _hoc_set_x_a(void) {
@@ -214,8 +216,9 @@ namespace neuron {
214216
_ppvar = _local_prop ? _nrn_mechanism_access_dparam(_local_prop) : nullptr;
215217
_thread = _extcall_thread.data();
216218
_nt = nrn_threads;
219+
auto inst = make_instance_test_func_proc(_ml_real);
217220
_r = 1.;
218-
set_x_a_test_func_proc(_ml, id, _ppvar, _thread, _nt, *getarg(1));
221+
set_x_a_test_func_proc(_ml, inst, id, _ppvar, _thread, _nt, *getarg(1));
219222
hoc_retpushx(_r);
220223
}
221224
static double _npy_set_x_a(Prop* _prop) {
@@ -229,8 +232,9 @@ namespace neuron {
229232
_ppvar = _nrn_mechanism_access_dparam(_prop);
230233
_thread = _extcall_thread.data();
231234
_nt = nrn_threads;
235+
auto inst = make_instance_test_func_proc(_ml_real);
232236
_r = 1.;
233-
set_x_a_test_func_proc(_ml, id, _ppvar, _thread, _nt, *getarg(1));
237+
set_x_a_test_func_proc(_ml, inst, id, _ppvar, _thread, _nt, *getarg(1));
234238
return(_r);
235239
}
236240
static void _hoc_set_a_x(void) {
@@ -248,8 +252,9 @@ namespace neuron {
248252
_ppvar = _local_prop ? _nrn_mechanism_access_dparam(_local_prop) : nullptr;
249253
_thread = _extcall_thread.data();
250254
_nt = nrn_threads;
255+
auto inst = make_instance_test_func_proc(_ml_real);
251256
_r = 1.;
252-
set_a_x_test_func_proc(_ml, id, _ppvar, _thread, _nt);
257+
set_a_x_test_func_proc(_ml, inst, id, _ppvar, _thread, _nt);
253258
hoc_retpushx(_r);
254259
}
255260
static double _npy_set_a_x(Prop* _prop) {
@@ -263,8 +268,9 @@ namespace neuron {
263268
_ppvar = _nrn_mechanism_access_dparam(_prop);
264269
_thread = _extcall_thread.data();
265270
_nt = nrn_threads;
271+
auto inst = make_instance_test_func_proc(_ml_real);
266272
_r = 1.;
267-
set_a_x_test_func_proc(_ml, id, _ppvar, _thread, _nt);
273+
set_a_x_test_func_proc(_ml, inst, id, _ppvar, _thread, _nt);
268274
return(_r);
269275
}
270276
static void _hoc_x_plus_a(void) {
@@ -282,7 +288,8 @@ namespace neuron {
282288
_ppvar = _local_prop ? _nrn_mechanism_access_dparam(_local_prop) : nullptr;
283289
_thread = _extcall_thread.data();
284290
_nt = nrn_threads;
285-
_r = x_plus_a_test_func_proc(_ml, id, _ppvar, _thread, _nt, *getarg(1));
291+
auto inst = make_instance_test_func_proc(_ml_real);
292+
_r = x_plus_a_test_func_proc(_ml, inst, id, _ppvar, _thread, _nt, *getarg(1));
286293
hoc_retpushx(_r);
287294
}
288295
static double _npy_x_plus_a(Prop* _prop) {
@@ -296,38 +303,35 @@ namespace neuron {
296303
_ppvar = _nrn_mechanism_access_dparam(_prop);
297304
_thread = _extcall_thread.data();
298305
_nt = nrn_threads;
299-
_r = x_plus_a_test_func_proc(_ml, id, _ppvar, _thread, _nt, *getarg(1));
306+
auto inst = make_instance_test_func_proc(_ml_real);
307+
_r = x_plus_a_test_func_proc(_ml, inst, id, _ppvar, _thread, _nt, *getarg(1));
300308
return(_r);
301309
}
302310

303311

304-
inline int set_x_42_test_func_proc(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt) {
305-
auto inst = make_instance_test_func_proc(*_ml);
312+
inline int set_x_42_test_func_proc(_nrn_mechanism_cache_range* _ml, test_func_proc_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt) {
306313
int ret_set_x_42 = 0;
307-
set_x_a_test_func_proc(_ml, id, _ppvar, _thread, _nt, 42.0);
314+
set_x_a_test_func_proc(_ml, inst, id, _ppvar, _thread, _nt, 42.0);
308315
return ret_set_x_42;
309316
}
310317

311318

312-
inline int set_x_a_test_func_proc(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a) {
313-
auto inst = make_instance_test_func_proc(*_ml);
319+
inline int set_x_a_test_func_proc(_nrn_mechanism_cache_range* _ml, test_func_proc_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a) {
314320
int ret_set_x_a = 0;
315321
inst.x[id] = a;
316322
return ret_set_x_a;
317323
}
318324

319325

320-
inline int set_a_x_test_func_proc(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt) {
321-
auto inst = make_instance_test_func_proc(*_ml);
326+
inline int set_a_x_test_func_proc(_nrn_mechanism_cache_range* _ml, test_func_proc_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt) {
322327
int ret_set_a_x = 0;
323328
double a;
324329
a = inst.x[id];
325330
return ret_set_a_x;
326331
}
327332

328333

329-
inline double x_plus_a_test_func_proc(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a) {
330-
auto inst = make_instance_test_func_proc(*_ml);
334+
inline double x_plus_a_test_func_proc(_nrn_mechanism_cache_range* _ml, test_func_proc_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a) {
331335
double ret_x_plus_a = 0.0;
332336
ret_x_plus_a = inst.x[id] + a;
333337
return ret_x_plus_a;

func_proc_pnt/neuron/func_proc_pnt.cpp

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -143,9 +143,9 @@ namespace neuron {
143143
_setdata(_prop);
144144
}
145145
/* Mechanism procedures and functions */
146-
inline double x_plus_a_test_func_proc_pnt(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a);
147-
inline int set_x_42_test_func_proc_pnt(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt);
148-
inline int set_x_a_test_func_proc_pnt(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a);
146+
inline double x_plus_a_test_func_proc_pnt(_nrn_mechanism_cache_range* _ml, test_func_proc_pnt_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a);
147+
inline int set_x_42_test_func_proc_pnt(_nrn_mechanism_cache_range* _ml, test_func_proc_pnt_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt);
148+
inline int set_x_a_test_func_proc_pnt(_nrn_mechanism_cache_range* _ml, test_func_proc_pnt_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a);
149149

150150

151151
/** connect global (scalar) variables to hoc -- */
@@ -195,8 +195,9 @@ namespace neuron {
195195
_ppvar = _nrn_mechanism_access_dparam(_p);
196196
_thread = _extcall_thread.data();
197197
_nt = static_cast<NrnThread*>(_pnt->_vnt);
198+
auto inst = make_instance_test_func_proc_pnt(_ml_real);
198199
_r = 1.;
199-
set_x_42_test_func_proc_pnt(_ml, id, _ppvar, _thread, _nt);
200+
set_x_42_test_func_proc_pnt(_ml, inst, id, _ppvar, _thread, _nt);
200201
return(_r);
201202
}
202203
static double _hoc_set_x_a(void* _vptr) {
@@ -215,8 +216,9 @@ namespace neuron {
215216
_ppvar = _nrn_mechanism_access_dparam(_p);
216217
_thread = _extcall_thread.data();
217218
_nt = static_cast<NrnThread*>(_pnt->_vnt);
219+
auto inst = make_instance_test_func_proc_pnt(_ml_real);
218220
_r = 1.;
219-
set_x_a_test_func_proc_pnt(_ml, id, _ppvar, _thread, _nt, *getarg(1));
221+
set_x_a_test_func_proc_pnt(_ml, inst, id, _ppvar, _thread, _nt, *getarg(1));
220222
return(_r);
221223
}
222224
static double _hoc_x_plus_a(void* _vptr) {
@@ -235,29 +237,27 @@ namespace neuron {
235237
_ppvar = _nrn_mechanism_access_dparam(_p);
236238
_thread = _extcall_thread.data();
237239
_nt = static_cast<NrnThread*>(_pnt->_vnt);
238-
_r = x_plus_a_test_func_proc_pnt(_ml, id, _ppvar, _thread, _nt, *getarg(1));
240+
auto inst = make_instance_test_func_proc_pnt(_ml_real);
241+
_r = x_plus_a_test_func_proc_pnt(_ml, inst, id, _ppvar, _thread, _nt, *getarg(1));
239242
return(_r);
240243
}
241244

242245

243-
inline int set_x_42_test_func_proc_pnt(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt) {
244-
auto inst = make_instance_test_func_proc_pnt(*_ml);
246+
inline int set_x_42_test_func_proc_pnt(_nrn_mechanism_cache_range* _ml, test_func_proc_pnt_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt) {
245247
int ret_set_x_42 = 0;
246248
inst.x[id] = 42.0;
247249
return ret_set_x_42;
248250
}
249251

250252

251-
inline int set_x_a_test_func_proc_pnt(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a) {
252-
auto inst = make_instance_test_func_proc_pnt(*_ml);
253+
inline int set_x_a_test_func_proc_pnt(_nrn_mechanism_cache_range* _ml, test_func_proc_pnt_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a) {
253254
int ret_set_x_a = 0;
254255
inst.x[id] = a;
255256
return ret_set_x_a;
256257
}
257258

258259

259-
inline double x_plus_a_test_func_proc_pnt(_nrn_mechanism_cache_range* _ml, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a) {
260-
auto inst = make_instance_test_func_proc_pnt(*_ml);
260+
inline double x_plus_a_test_func_proc_pnt(_nrn_mechanism_cache_range* _ml, test_func_proc_pnt_Instance& inst, size_t id, Datum* _ppvar, Datum* _thread, NrnThread* _nt, double a) {
261261
double ret_x_plus_a = 0.0;
262262
ret_x_plus_a = inst.x[id] + a;
263263
return ret_x_plus_a;

0 commit comments

Comments
 (0)