aboutsummaryrefslogtreecommitdiff
path: root/src/core/Utils.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/Utils.cpp')
-rw-r--r--src/core/Utils.cpp27
1 files changed, 21 insertions, 6 deletions
diff --git a/src/core/Utils.cpp b/src/core/Utils.cpp
index c877e8fd1f..babf1c4b91 100644
--- a/src/core/Utils.cpp
+++ b/src/core/Utils.cpp
@@ -495,26 +495,41 @@ std::pair<int32_t, int32_t> get_quantized_activation_min_max(ActivationLayerInfo
return std::make_pair(min_activation, max_activation);
}
-std::unordered_map<const ITensor *, PaddingSize> get_padding_info(std::initializer_list<const ITensor *> tensors)
+std::unordered_map<const ITensorInfo *, PaddingSize> get_padding_info(std::initializer_list<const ITensor *> tensors)
{
- std::unordered_map<const ITensor *, PaddingSize> res;
+ std::unordered_map<const ITensorInfo *, PaddingSize> res;
for(const ITensor *tensor : tensors)
{
if(tensor)
{
- res.insert({ tensor, tensor->info()->padding() });
+ res.insert({ tensor->info(), tensor->info()->padding() });
}
}
return res;
}
-bool has_padding_changed(const std::unordered_map<const ITensor *, PaddingSize> &padding_map)
+std::unordered_map<const ITensorInfo *, PaddingSize> get_padding_info(std::initializer_list<const ITensorInfo *> infos)
{
- return std::find_if(padding_map.begin(), padding_map.end(), [](const std::pair<const ITensor *, PaddingSize> &padding_info)
+ std::unordered_map<const ITensorInfo *, PaddingSize> res;
+
+ for(const ITensorInfo *info : infos)
+ {
+ if(info)
+ {
+ res.insert({ info, info->padding() });
+ }
+ }
+
+ return res;
+}
+
+bool has_padding_changed(const std::unordered_map<const ITensorInfo *, PaddingSize> &padding_map)
+{
+ return std::find_if(padding_map.begin(), padding_map.end(), [](const std::pair<const ITensorInfo *, PaddingSize> &padding_info)
{
- return (padding_info.first->info()->padding() != padding_info.second);
+ return (padding_info.first->padding() != padding_info.second);
})
!= padding_map.end();
}