69 fn = ml->
pdata + (instance * sz + fnslot);
72 fn = ml->
pdata + (fnslot * padded_cnt + instance);
85 std::map<int, int> type_to_slot;
93 if (type_to_slot.empty()) {
102 size_t n_perm_indices = 0;
103 for (
const auto& kv: type_to_slot) {
104 int mtype = kv.first;
105 int fnslot = kv.second;
115 size_t n_weight_perm = 0;
119 auto search = type_to_slot.find(mtype);
120 if (search != type_to_slot.end()) {
143 size_t i_perm_indices = 0;
145 for (
const auto& kv: type_to_slot) {
146 int mtype = kv.first;
147 int fnslot = kv.second;
164 auto search = type_to_slot.find(mtype);
165 if (search != type_to_slot.end()) {
176 for (
const auto& kv: type_to_slot) {
177 int mtype = kv.first;
178 int fnslot = kv.second;
182 *fn = int(i_perm_indices);
auto & get_prop_dparam_size()
auto & get_mech_data_layout()
union coreneuron::NetCon::@0 u
THIS FILE IS AUTO GENERATED DONT MODIFY IT.
void setup_fornetcon_info(NrnThread &nt)
If FOR_NETCON in use, setup NrnThread fornetcon related info.
int * nrn_fornetcon_type_
int * nrn_fornetcon_index_
static int * fornetcon_slot(const int mtype, const int instance, const int fnslot, const NrnThread &nt)
If FOR_NETCON in use, setup NrnThread fornetcon related info.
int nrn_soa_padded_size(int cnt, int layout)
calculate size after padding for specific memory layout
size_t * _fornetcon_weight_perm
size_t * _fornetcon_perm_indices
std::size_t _fornetcon_perm_indices_size
std::size_t _fornetcon_weight_perm_size