16 #ifndef SURGSIM_DATASTRUCTURES_DATAGROUPCOPIER_H 17 #define SURGSIM_DATASTRUCTURES_DATAGROUPCOPIER_H 21 #include <unordered_map> 27 namespace DataStructures
57 std::shared_ptr<const IndexDirectory> target)
const;
73 #endif // SURGSIM_DATASTRUCTURES_DATAGROUPCOPIER_H Definition: DriveElementFromInputBehavior.cpp:27
DataGroupCopyMap m_map
The map from source to target.
Definition: DataGroupCopier.h:66
std::array< NamedDataCopyMap, 8 > DataGroupCopyMap
The type used for copying values between two DataGroups that cannot assign to each other...
Definition: DataGroupCopier.h:30
const DataGroup & m_source
The source DataGroup.
Definition: DataGroupCopier.h:60
DataGroupCopier(const DataGroup &source, DataGroup &target)
Construct a copier.
Definition: DataGroupCopier.cpp:28
void findMap()
Find the entries (by name) from the source to target DataGroups.
Definition: DataGroupCopier.cpp:47
std::unordered_map< int, int > NamedDataCopyMap
The type used for copying values between two NamedData objects that cannot assign to each other...
Definition: NamedData.h:32
void copy()
Copies the NamedData entries with the same names. Resets entries in the target that are reset in the ...
Definition: DataGroupCopier.cpp:35
A simple bidirectional mapping between names (strings) and distinct consecutive non-negative indices...
Definition: IndexDirectory.h:32
A collection of NamedData objects.
Definition: DataGroup.h:66
A class that assists in copying from one DataGroup to another, when assignment is not possible...
Definition: DataGroupCopier.h:37
DataGroup & m_target
The target DataGroup.
Definition: DataGroupCopier.h:63