#pragma once #include #include "Matrix4x4.hpp" namespace TSE { class TransformationStack { private: std::vector stack; public: /// @brief generates an empty transformation stack, based on an identity matrix TransformationStack(); /// @brief gets the current value of the stack /// @return the current value const Matrix4x4& Top() const; /// @brief pusches a new value on to the stack /// @param matrix the value to be pusched void Push(const Matrix4x4& matrix); /// @brief pops the last value off the stack void Pop(); }; } // namespace TSE