Line data Source code
1 0 : // Distributed under the MIT License. 2 : // See LICENSE.txt for details. 3 : 4 : #pragma once 5 : 6 : #include <cstddef> 7 : #include <unordered_map> 8 : 9 : #include "DataStructures/DataBox/Tag.hpp" 10 : 11 : /// \cond 12 : namespace amr { 13 : template <size_t VolumeDim> 14 : struct Info; 15 : } // namespace amr 16 : template <size_t VolumeDim> 17 : class ElementId; 18 : /// \endcond 19 : 20 : namespace amr::Tags { 21 : /// \brief amr::Info for the neighbors of an Element. 22 : /// 23 : /// Note that the `amr::Info` is stored in the orientation of the neighbor, 24 : /// i.e., dimensions are not reoriented to the orientation of the element. 25 : template <size_t VolumeDim> 26 1 : struct NeighborInfo : db::SimpleTag { 27 0 : using type = std::unordered_map<ElementId<VolumeDim>, amr::Info<VolumeDim>>; 28 : }; 29 : 30 : } // namespace amr::Tags