CoreNEURON
nrniv_decl.h
Go to the documentation of this file.
1 /*
2 # =============================================================================
3 # Copyright (c) 2016 - 2021 Blue Brain Project/EPFL
4 #
5 # See top-level LICENSE file for details.
6 # =============================================================================.
7 */
8 
9 #pragma once
10 
11 #include <vector>
12 #include <map>
14 namespace coreneuron {
15 
16 /// Mechanism type to be used from stdindex2ptr and nrn_dblpntr2nrncore (in Neuron)
17 /// Values of the mechanism types should be negative numbers to avoid any conflict with
18 /// mechanism types of Memb_list(>0) or time(0) passed from Neuron
19 enum mech_type { voltage = -1, i_membrane_ = -2 };
20 
21 extern bool cvode_active_;
22 /// Vector of maps for negative presyns
23 extern std::vector<std::map<int, PreSyn*>> neg_gid2out;
24 /// Maps for ouput and input presyns
25 extern std::map<int, PreSyn*> gid2out;
26 extern std::map<int, InputPreSyn*> gid2in;
27 
28 /// InputPreSyn.nc_index_ to + InputPreSyn.nc_cnt_ give the NetCon*
29 extern std::vector<NetCon*> netcon_in_presyn_order_;
30 /// Only for setup vector of netcon source gids and mindelay determination
31 extern std::vector<int*> nrnthreads_netcon_srcgid;
32 /// Companion to nrnthreads_netcon_srcgid when src gid is negative to allow
33 /// determination of the NrnThread of the source PreSyn.
34 extern std::vector<std::vector<int>> nrnthreads_netcon_negsrcgid_tid;
35 
36 extern void mk_mech(const char* path);
37 extern void set_globals(const char* path, bool cli_global_seed, int cli_global_seed_value);
38 extern void mk_netcvode(void);
39 extern void nrn_p_construct(void);
40 extern double* stdindex2ptr(int mtype, int index, NrnThread&);
41 extern void delete_trajectory_requests(NrnThread&);
42 extern void nrn_cleanup();
43 extern void nrn_cleanup_ion_map();
44 extern void BBS_netpar_solve(double);
45 extern void nrn_mkPatternStim(const char* filename, double tstop);
46 extern int nrn_extra_thread0_vdata;
47 extern void nrn_set_extra_thread0_vdata(void);
48 extern Point_process* nrn_artcell_instantiate(const char* mechname);
49 extern int nrnmpi_spike_compress(int nspike, bool gidcompress, int xchng);
50 extern bool nrn_use_bin_queue_;
51 
52 extern void nrn_outputevent(unsigned char, double);
53 extern void ncs2nrn_integrate(double tstop);
54 
55 extern void handle_forward_skip(double forwardskip, int prcellgid);
56 
57 extern int nrn_set_timeout(int);
58 extern void nrn_fake_fire(int gid, double spiketime, int fake_out);
59 
60 extern void netpar_tid_gid2ps(int tid, int gid, PreSyn** ps, InputPreSyn** psi);
61 extern double set_mindelay(double maxdelay);
62 
63 extern int nrn_soa_padded_size(int cnt, int layout);
64 
65 extern int interleave_permute_type;
66 extern int cellorder_nwarp;
67 
68 // Mechanism pdata index values into _actual_v and _actual_area data need to be updated.
69 enum Layout { SoA = 0, AoS = 1 };
70 } // namespace coreneuron
coreneuron::cellorder_nwarp
int cellorder_nwarp
Definition: balance.cpp:24
coreneuron::handle_forward_skip
void handle_forward_skip(double forwardskip, int prcellgid)
Definition: main1.cpp:384
coreneuron::delete_trajectory_requests
void delete_trajectory_requests(NrnThread &nt)
Definition: nrn_setup.cpp:899
coreneuron::nrn_use_bin_queue_
bool nrn_use_bin_queue_
Flag to use the bin queue.
Definition: netcvode.cpp:39
coreneuron::voltage
@ voltage
Definition: nrniv_decl.h:19
coreneuron::nrnthreads_netcon_srcgid
std::vector< int * > nrnthreads_netcon_srcgid
Only for setup vector of netcon source gids.
Definition: nrn_setup.cpp:164
coreneuron::netcon_in_presyn_order_
std::vector< NetCon * > netcon_in_presyn_order_
InputPreSyn.nc_index_ to + InputPreSyn.nc_cnt_ give the NetCon*.
Definition: nrn_setup.cpp:161
coreneuron::Layout
Layout
Definition: nrniv_decl.h:69
coreneuron::nrn_artcell_instantiate
Point_process * nrn_artcell_instantiate(const char *mechname)
Definition: patternstim.cpp:178
coreneuron::mech_type
mech_type
Mechanism type to be used from stdindex2ptr and nrn_dblpntr2nrncore (in Neuron) Values of the mechani...
Definition: nrniv_decl.h:19
coreneuron::BBS_netpar_solve
void BBS_netpar_solve(double tstop)
Definition: netpar.cpp:604
coreneuron::nrn_cleanup_ion_map
void nrn_cleanup_ion_map()
Cleanup global ion map created during mechanism registration.
Definition: nrn_setup.cpp:696
coreneuron::stdindex2ptr
double * stdindex2ptr(int mtype, int index, NrnThread &nt)
Definition: nrn_setup.cpp:636
coreneuron::cvode_active_
bool cvode_active_
Definition: netcvode.cpp:36
coreneuron::nrn_soa_padded_size
int nrn_soa_padded_size(int cnt, int layout)
calculate size after padding for specific memory layout
Definition: mem_layout_util.cpp:15
coreneuron::interleave_permute_type
int interleave_permute_type
Definition: cellorder.cpp:28
coreneuron::ncs2nrn_integrate
void ncs2nrn_integrate(double tstop)
Definition: netcvode.cpp:488
coreneuron::nrn_set_timeout
int nrn_set_timeout(int timeout)
Definition: netpar.cpp:598
coreneuron::nrn_set_extra_thread0_vdata
void nrn_set_extra_thread0_vdata()
Definition: patternstim.cpp:48
coreneuron
THIS FILE IS AUTO GENERATED DONT MODIFY IT.
Definition: corenrn_parameters.cpp:12
coreneuron::i_membrane_
@ i_membrane_
Definition: nrniv_decl.h:19
coreneuron::mk_netcvode
void mk_netcvode()
Definition: netcvode.cpp:41
coreneuron::nrnmpi_spike_compress
int nrnmpi_spike_compress(int nspike, bool gid_compress, int xchng_meth)
Definition: netpar.cpp:753
coreneuron::gid2in
std::map< int, InputPreSyn * > gid2in
Definition: nrn_setup.cpp:158
cnt
#define cnt
Definition: tqueue.hpp:44
coreneuron::nrnthreads_netcon_negsrcgid_tid
std::vector< std::vector< int > > nrnthreads_netcon_negsrcgid_tid
If a nrnthreads_netcon_srcgid is negative, need to determine the thread when in order to use the corr...
Definition: nrn_setup.cpp:168
coreneuron::set_mindelay
double set_mindelay(double maxdelay)
Definition: netpar.cpp:643
netcon.hpp
coreneuron::nrn_fake_fire
void nrn_fake_fire(int gid, double spiketime, int fake_out)
Definition: netpar.cpp:578
coreneuron::AoS
@ AoS
Definition: nrniv_decl.h:69
coreneuron::netpar_tid_gid2ps
void netpar_tid_gid2ps(int tid, int gid, PreSyn **ps, InputPreSyn **psi)
Definition: nrn_setup.cpp:225
coreneuron::nrn_p_construct
void nrn_p_construct()
Definition: netcvode.cpp:175
coreneuron::nrn_mkPatternStim
void nrn_mkPatternStim(const char *fname, double tstop)
Definition: patternstim.cpp:60
coreneuron::mk_mech
static void mk_mech()
Definition: mk_mech.cpp:68
coreneuron::nrn_cleanup
void nrn_cleanup()
Definition: nrn_setup.cpp:714
coreneuron::nrn_outputevent
void nrn_outputevent(unsigned char, double)
coreneuron::gid2out
std::map< int, PreSyn * > gid2out
Maps for ouput and input presyns.
Definition: nrn_setup.cpp:157
coreneuron::nrn_extra_thread0_vdata
int nrn_extra_thread0_vdata
Definition: patternstim.cpp:46
coreneuron::neg_gid2out
std::vector< std::map< int, PreSyn * > > neg_gid2out
Vector of maps for negative presyns.
Definition: nrn_setup.cpp:155
coreneuron::set_globals
void set_globals(const char *path, bool cli_global_seed, int cli_global_seed_value)
Definition: global_vars.cpp:43
coreneuron::SoA
@ SoA
Definition: nrniv_decl.h:69