diff options
author | HampusM <hampus@hampusmat.com> | 2022-03-06 13:16:05 +0100 |
---|---|---|
committer | HampusM <hampus@hampusmat.com> | 2022-06-13 17:56:54 +0200 |
commit | 0e40bc7ce8c3b3be083002f88c3317d65f6570ad (patch) | |
tree | 2fcc470a0f1ce1d51ff26c53c8a9a890b3f31b3b /src/interfaces/bounds.hpp | |
parent | f4d812a5b9131e65bb55db7211dc68fc453792df (diff) |
refactor: make vector2 & bounds data classes
Diffstat (limited to 'src/interfaces/bounds.hpp')
-rw-r--r-- | src/interfaces/bounds.hpp | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/src/interfaces/bounds.hpp b/src/interfaces/bounds.hpp deleted file mode 100644 index b431874..0000000 --- a/src/interfaces/bounds.hpp +++ /dev/null @@ -1,41 +0,0 @@ -#pragma once - -#include "interfaces/vector2.hpp" - -#include <memory> - -enum CoordsValidation -{ - VALID, - X_HIGH, - Y_HIGH -}; - -class IBounds -{ -public: - virtual ~IBounds() = default; - - [[nodiscard]] virtual unsigned int width() const = 0; - - virtual void width(unsigned int width) = 0; - - [[nodiscard]] virtual unsigned int height() const = 0; - - virtual void height(unsigned int height) = 0; - - [[nodiscard]] virtual CoordsValidation - validate_coords(const IVector2 &coords) const = 0; - - virtual const IBounds &operator*=(const IBounds &bounds) = 0; - virtual const IBounds &operator+=(const IBounds &bounds) = 0; - virtual const IBounds &operator-=(const IBounds &bounds) = 0; -}; - -struct IBoundsOptions -{ - unsigned int width; - unsigned int height; -}; - -using IBoundsFactory = std::shared_ptr<IBounds> (*)(const IBoundsOptions &options); |