7#include "pipeline_image_page.hpp"
9#include "../aarect.hpp"
10#include "../numeric_array.hpp"
11#include "../aarect.hpp"
18template<
typename T>
class pixel_map;
22namespace tt::pipeline_image {
31 enum class State { Uninitialized, Drawing, Uploaded };
57 Image(Image &&other)
noexcept;
58 Image &operator=(Image &&other)
noexcept;
61 Image(Image
const &other) =
delete;
62 Image &operator=(Image
const &other) =
delete;
85 void calculateVertexPositions(
matrix3 transform,
aarect clippingRectangle);
87 void placePageVertices(
vspan<vertex> &vertices,
int const index,
aarect clippingRectangle)
const;
A 2D canvas of pixels.
Definition pixel_map.hpp:99
Definition pipeline_image_device_shared.hpp:24
This is a image that is uploaded into the texture atlas.
Definition pipeline_image_image.hpp:30
i32x4 extent
The size of the image in pixels.
Definition pipeline_image_image.hpp:39
i32x4 pageExtent
This size of the image in pages.
Definition pipeline_image_image.hpp:44
iaarect indexToRect(int const pageIndex) const noexcept
Find the image coordinates of a page in the image.
void upload(pixel_map< sfloat_rgba16 > const &image) noexcept
Upload image to atlas.
void placeVertices(vspan< vertex > &vertices, matrix3 transform, aarect clippingRectangle)
A 4D vector.
Definition ivec.hpp:38