13#ifndef CD_TILEIMPLEM_H
14#define CD_TILEIMPLEM_H
21#include <CD_NamespaceHeader.H>
38template <
class T,
size_t DIM>
41 for (
auto& index : m_indices) {
51template <
class T,
size_t DIM>
55template <
class T,
size_t DIM>
59 return m_indices[a_dir];
62template <
class T,
size_t DIM>
66 return m_indices[a_dir];
69template <
class T,
size_t DIM>
70inline std::array<T, DIM>&
76template <
class T,
size_t DIM>
77inline const std::array<T, DIM>&
83template <
class T,
size_t DIM>
90 const auto& myIndices = std::tuple_cat(m_indices);
91 const auto& otherIndices = std::tuple_cat(a_otherTile.getIndices());
93 return std::tie(myIndices) < std::tie(otherIndices);
96template <
class T,
size_t DIM>
102 const auto& myIndices = std::tuple_cat(m_indices);
103 const auto& otherIndices = std::tuple_cat(a_otherTile.getIndices());
105 return std::tie(myIndices) > std::tie(otherIndices);
108template <
class T,
size_t DIM>
115 const auto& myIndices = std::tuple_cat(m_indices);
116 const auto& otherIndices = std::tuple_cat(a_otherTile.getIndices());
118 return std::tie(myIndices) == std::tie(otherIndices);
121#include <CD_NamespaceFooter.H>
Simple class for representing a tile in arbitrary-dimensional space.
Class for representing a tile (used in, e.g., TiledMeshRefine)
Definition CD_Tile.H:27
constexpr bool operator>(const TileI &a_otherTile) const noexcept
Comparison operator. Uses lexicographical comparison.
Definition CD_TileImplem.H:98
TileI() noexcept
Default constructor. Sets m_indices = 0.
Definition CD_TileImplem.H:39
constexpr bool operator<(const TileI &a_otherTile) const noexcept
Comparison operator. Uses lexicographical comparison.
Definition CD_TileImplem.H:85
virtual ~TileI() noexcept
Destructor.
Definition CD_TileImplem.H:52
constexpr bool operator==(const TileI &a_otherTile) const noexcept
Comparison operator. Uses lexicographical comparison.
Definition CD_TileImplem.H:110
T & operator[](const size_t a_dir) noexcept
Get the index in specified coordinate direction.
Definition CD_TileImplem.H:57
std::array< T, DIM > & getIndices() noexcept
Get the indices.
Definition CD_TileImplem.H:71