diff options
author | HampusM <hampus@hampusmat.com> | 2022-06-08 16:47:48 +0200 |
---|---|---|
committer | HampusM <hampus@hampusmat.com> | 2022-06-13 17:57:01 +0200 |
commit | 7e84d664079d9c407bdf94861825bb05ccf1b0f7 (patch) | |
tree | 6c0caeb168379a4978b2bc074133f3942276af47 /src/engine/matrix_iterator.hpp | |
parent | 45e3ae285c63d91dcac426cffdd9d9648e48399b (diff) |
refactor: move matrix iterator to engine graphics folder
Diffstat (limited to 'src/engine/matrix_iterator.hpp')
-rw-r--r-- | src/engine/matrix_iterator.hpp | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/src/engine/matrix_iterator.hpp b/src/engine/matrix_iterator.hpp deleted file mode 100644 index 70a59bf..0000000 --- a/src/engine/matrix_iterator.hpp +++ /dev/null @@ -1,65 +0,0 @@ -#pragma once - -#include <gsl/pointers> - -template <typename Element> -class MatrixRowIterator -{ -public: - using ColumnPtr = gsl::owner<Element *>; - - explicit MatrixRowIterator(ColumnPtr column_ptr) noexcept; - - auto operator++() noexcept -> MatrixRowIterator &; - auto operator++(int) noexcept -> MatrixRowIterator; - - auto operator*() const noexcept -> Element &; - - auto operator==(const MatrixRowIterator &rhs) const noexcept -> bool; - auto operator!=(const MatrixRowIterator &rhs) const noexcept -> bool; - -private: - ColumnPtr _column_ptr; -}; - -template <typename Element> -class MatrixRow -{ -public: - using RowPtr = gsl::owner<Element *>; - - explicit MatrixRow(RowPtr row_ptr, const uint32_t &column_cnt) noexcept; - - [[nodiscard]] auto begin() const noexcept -> MatrixRowIterator<Element>; - - [[nodiscard]] auto end() const noexcept -> MatrixRowIterator<Element>; - -private: - RowPtr _row_ptr; - - const uint32_t &_column_cnt; -}; - -template <typename Element> -class MatrixIterator -{ -public: - using RowPtr = gsl::owner<Element **>; - - explicit MatrixIterator(RowPtr row_ptr, const uint32_t &column_cnt) noexcept; - - auto operator++() noexcept -> MatrixIterator &; - auto operator++(int) noexcept -> MatrixIterator; - - auto operator*() const noexcept -> MatrixRow<Element>; - - auto operator==(const MatrixIterator &rhs) const noexcept -> bool; - auto operator!=(const MatrixIterator &rhs) const noexcept -> bool; - -private: - RowPtr _row_ptr; - - const uint32_t &_column_cnt; -}; - -#include "matrix_iterator_impl.hpp" |