13 #ifndef OGLPLUS_IMAGES_IMAGE_SPEC_1202210916_HPP
14 #define OGLPLUS_IMAGES_IMAGE_SPEC_1202210916_HPP
54 , internal_format(ifmt)
87 ): _base(w, h, 1, _conv(ifmt), ifmt,
PixelDataType(), nullptr)
95 ): _base(w, h, 1, fmt, _conv(fmt), type, nullptr)
103 ): _base(w, 1, 1, fmt, ifmt, type, nullptr)
112 ): _base(w, h, 1, fmt, ifmt, type, nullptr)
122 ): _base(w, h, d, fmt, ifmt, type, nullptr)
125 template <
typename T>
131 typename std::enable_if<
132 IsGLDataType<T>::value,
135 ): _base(w, h, 1, fmt, _conv(fmt),
GetDataType<
T>(), data)
138 template <
typename T>
144 typename std::enable_if<
145 IsGLDataType<T>::value,
152 template <
typename T>
159 typename std::enable_if<
160 IsGLDataType<T>::value,
167 template <
typename T>
175 typename std::enable_if<
176 IsGLDataType<T>::value,
191 internal_format = ifmt;
195 ImageSpec& Type(PixDataType type)
201 ImageSpec& NextDim(GLsizei dim)
216 else assert(!
"Too many dimensions specified!");
221 inline ImageSpec& operator << (ImageSpec& that, GLsizei dim)
223 return that.NextDim(dim);
226 inline ImageSpec&& operator << (ImageSpec&& that, GLsizei dim)
228 return std::move(that.NextDim(dim));
233 return that.Format(f);
238 return std::move(that.Format(f));
243 return that.Format(f);
248 return std::move(that.Format(f));
254 #endif // include guard
DataType
OpenGL data type enumeration.
Definition: data_type.hpp:34
PixelDataInternalFormat
OpenGL pixel data internal format enumeration.
Definition: pixel_data.hpp:79
PixelDataType
OpenGL pixel data type enumeration.
Definition: pixel_data.hpp:29
PixelDataFormat
OpenGL pixel data format enumeration.
Definition: pixel_data.hpp:50
Data type-related declarations.
Pixel data-related declarations.
Stores a value having one of the listed types in a common representation.
Definition: one_of.hpp:60
DataType GetDataType(void)
Returns the DataType for the specified type T.
Definition: data_type.hpp:94
Class containing data for texture image specification.
Definition: image_spec.hpp:24
PixelDataFormat Format
Alias for PixelDataFormat.
Definition: pixel_data.hpp:66
Variant helper class used mostly with enums.