40 #include "../type.hpp"
41 #include "../format.hpp"
44 #include <glm/gtc/round.hpp>
45 #include <glm/gtx/component_wise.hpp>
46 #include <glm/gtx/integer.hpp>
47 #include <glm/gtx/bit.hpp>
48 #include <glm/gtx/raw_data.hpp>
49 #include <glm/gtx/wrap.hpp>
51 static_assert(GLM_VERSION >= 97,
"GLI requires at least GLM 0.9.7");
58 typedef dim3_t dim_type;
59 typedef size_t size_type;
60 typedef gli::format format_type;
61 typedef glm::byte data_type;
68 dim_type
const & Dimensions,
74 size_type size()
const;
75 size_type layers()
const;
76 size_type levels()
const;
77 size_type faces()
const;
79 size_type block_size()
const;
80 dim_type block_count(size_type Level)
const;
81 dim_type dimensions(size_type Level)
const;
89 size_type Level)
const;
92 size_type Level)
const;
94 size_type BaseLevel, size_type MaxLevel)
const;
96 size_type BaseFace, size_type MaxFace,
97 size_type BaseLevel, size_type MaxLevel)
const;
100 size_type
const Layers;
101 size_type
const Faces;
102 size_type
const Levels;
103 size_type
const BlockSize;
104 dim_type
const BlockCount;
105 dim_type
const Dimensions;
106 std::vector<data_type> Data;
157 #include "storage.inl"