aboutsummaryrefslogtreecommitdiff
path: root/Source/Particles/ParticleCreation/SmartCopy.H
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Particles/ParticleCreation/SmartCopy.H')
-rw-r--r--Source/Particles/ParticleCreation/SmartCopy.H21
1 files changed, 21 insertions, 0 deletions
diff --git a/Source/Particles/ParticleCreation/SmartCopy.H b/Source/Particles/ParticleCreation/SmartCopy.H
new file mode 100644
index 000000000..dffe5a773
--- /dev/null
+++ b/Source/Particles/ParticleCreation/SmartCopy.H
@@ -0,0 +1,21 @@
+#ifndef SMART_COPY_H_
+#define SMART_COPY_H_
+
+#include <map>
+#include <string>
+#include <vector>
+
+using NameMap = std::map<std::string, int>;
+
+struct SmartCopyTag
+{
+ std::vector<std::string> common_names;
+ std::vector<int> src_comps;
+ std::vector<int> dst_comps;
+
+ int size () const noexcept { return common_names.size(); }
+};
+
+SmartCopyTag getSmartCopyTag (const NameMap& src, const NameMap& dst);
+
+#endif