14 std::vector<int> materialMap;
15 std::set<int> materials;
24 materialMap.push_back(passedMaterialId);
25 materials.insert(passedMaterialId);
29 if (index >= materialMap.size()) {
30 materialMap.resize(index + 1, -1);
32 materialMap[index] = materialId;
33 materials.insert(materialId);
41 if (index >= materialMap.size())
43 return materialMap[index];
48 return index < materialMap.size();
56 void reserve(
const std::size_t size) { materialMap.reserve(size); }
59 return materials.count(materialId) > 0;
std::size_t getNumberOfMaterials() const
Definition lsMaterialMap.hpp:38
std::size_t getNumberOfLayers() const
Definition lsMaterialMap.hpp:36
MaterialMap & operator=(MaterialMap &&)=default
int getMaterialId(const std::size_t index) const
Definition lsMaterialMap.hpp:40
void clear()
Definition lsMaterialMap.hpp:51
void insertNextMaterial(const int passedMaterialId)
Definition lsMaterialMap.hpp:23
MaterialMap(const MaterialMap &)=default
const std::vector< int > & getMaterialMap() const
Definition lsMaterialMap.hpp:64
bool hasMaterial(const int materialId) const
Definition lsMaterialMap.hpp:58
MaterialMap & operator=(const MaterialMap &)=default
void setMaterialId(const std::size_t index, const int materialId)
Definition lsMaterialMap.hpp:28
const std::set< int > & getMaterials() const
Definition lsMaterialMap.hpp:62
bool isValidIndex(const std::size_t index) const
Definition lsMaterialMap.hpp:47
void reserve(const std::size_t size)
Definition lsMaterialMap.hpp:56
Definition lsAdvect.hpp:36