if (!buffer.empty()) {
for (auto& idx : buffer)
- layerId.insert(std::make_pair(mInterpreter->tensor(idx)->name, idx));
+ layerId[mInterpreter->tensor(idx)->name] = idx;
return;
}
- for (auto& layer: layers) {
- LOGI("Layer list [%s]", layer.first.c_str());
- for (unsigned int idx = 0; idx < mInterpreter->tensors_size(); ++idx) {
- if (mInterpreter->tensor(idx)->name == NULL)
- continue;
- if ((layer.first).compare(mInterpreter->tensor(idx)->name) == 0) {
- layerId.insert(std::make_pair(layer.first, idx));
- break;
- }
+ for (unsigned int idx = 0; idx < mInterpreter->tensors_size(); ++idx) {
+ auto tensor_name = mInterpreter->tensor(idx)->name;
+ if (!tensor_name)
+ continue;
+
+ if (layers.find(tensor_name) != layers.end()) {
+ LOGI("Layer list [%s]", tensor_name);
+ layerId[tensor_name] = idx;
}
+
+ if (layerId.size() == layers.size())
+ break;
}
}