#ifndef id6FB3FC97331449038D42AAAB4C01ABA1 #define id6FB3FC97331449038D42AAAB4C01ABA1 #include "primitivetypes.hpp" #include "components/tilestreamer.hpp" #include #include #include namespace dk { template class Viewport; template > class Tyler { public: typedef S streamer_type; typedef Vector coords; Tyler ( void ) = delete; Tyler ( const coords& parSize, streamer_type&& ); virtual ~Tyler ( void ) noexcept = default; virtual bool batch_load ( const std::vector& parLoad ) = 0; virtual bool single_load ( const T& parLoad ) = 0; size_t tiles_count ( void ) const { return m_tiles.size(); } private: const coords m_size; std::vector m_tiles; streamer_type m_streamer; }; } //namespace dk #include "implem/tyler.inl" #endif