Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Use const references to pass vector as parameters.
authorArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Sun, 8 Apr 2018 21:16:23 +0000 (23:16 +0200)
committerArnaud Giersch <arnaud.giersch@univ-fcomte.fr>
Sun, 8 Apr 2018 21:28:50 +0000 (23:28 +0200)
include/smpi/smpi.h
src/smpi/internals/smpi_shared.cpp

index b6271b6..e82e2bb 100644 (file)
@@ -1050,10 +1050,10 @@ SG_END_DECL()
 
 XBT_PUBLIC int smpi_is_shared(void* ptr, std::vector<std::pair<size_t, size_t>>& private_blocks, size_t* offset);
 
-std::vector<std::pair<size_t, size_t>> shift_and_frame_private_blocks(const std::vector<std::pair<size_t, size_t>> vec,
+std::vector<std::pair<size_t, size_t>> shift_and_frame_private_blocks(const std::vector<std::pair<size_t, size_t>>& vec,
                                                                       size_t offset, size_t buff_size);
-std::vector<std::pair<size_t, size_t>> merge_private_blocks(std::vector<std::pair<size_t, size_t>> src,
-                                                            std::vector<std::pair<size_t, size_t>> dst);
+std::vector<std::pair<size_t, size_t>> merge_private_blocks(const std::vector<std::pair<size_t, size_t>>& src,
+                                                            const std::vector<std::pair<size_t, size_t>>& dst);
 
 #endif
 
index cad9b47..b01de8f 100644 (file)
@@ -377,18 +377,22 @@ int smpi_is_shared(void* ptr, std::vector<std::pair<size_t, size_t>> &private_bl
   }
 }
 
-std::vector<std::pair<size_t, size_t>> shift_and_frame_private_blocks(const std::vector<std::pair<size_t, size_t>> vec, size_t offset, size_t buff_size) {
-    std::vector<std::pair<size_t, size_t>> result;
-    for (auto const& block : vec) {
-      auto new_block = std::make_pair(std::min(std::max((size_t)0, block.first - offset), buff_size),
-                                      std::min(std::max((size_t)0, block.second - offset), buff_size));
-      if (new_block.second > 0 && new_block.first < buff_size)
-        result.push_back(new_block);
-    }
-    return result;
+std::vector<std::pair<size_t, size_t>> shift_and_frame_private_blocks(const std::vector<std::pair<size_t, size_t>>& vec,
+                                                                      size_t offset, size_t buff_size)
+{
+  std::vector<std::pair<size_t, size_t>> result;
+  for (auto const& block : vec) {
+    auto new_block = std::make_pair(std::min(std::max((size_t)0, block.first - offset), buff_size),
+                                    std::min(std::max((size_t)0, block.second - offset), buff_size));
+    if (new_block.second > 0 && new_block.first < buff_size)
+      result.push_back(new_block);
+  }
+  return result;
 }
 
-std::vector<std::pair<size_t, size_t>> merge_private_blocks(std::vector<std::pair<size_t, size_t>> src, std::vector<std::pair<size_t, size_t>> dst) {
+std::vector<std::pair<size_t, size_t>> merge_private_blocks(const std::vector<std::pair<size_t, size_t>>& src,
+                                                            const std::vector<std::pair<size_t, size_t>>& dst)
+{
   std::vector<std::pair<size_t, size_t>> result;
   unsigned i_src = 0;
   unsigned i_dst = 0;