Nebula
Loading...
Searching...
No Matches
image.h
Go to the documentation of this file.
1#pragma once
2//------------------------------------------------------------------------------
11//------------------------------------------------------------------------------
12#include "ids/id.h"
13#include "ids/idallocator.h"
14#include "pixelformat.h"
15#include "io/uri.h"
16namespace CoreGraphics
17{
18
20
21
27
34
42
51
53ImageId CreateImage(const ImageCreateInfoFile& info);
55ImageId CreateImage(const ImageCreateInfoData& info);
59void DestroyImage(const ImageId id);
60
65
67
69const ubyte* ImageGetBuffer(const ImageId id);
71const SizeT ImageGetPixelStride(const ImageId id);
73const SizeT ImageGetChannelStride(const ImageId id);
75void ImageConvertPrimitive(const ImageId id, const ImageChannelPrimitive primitive, bool denormalize);
76
78bool ImageSaveToFile(const ImageId id, const ImageContainer container, const IO::URI& path);
79
82
98
99typedef Ids::IdAllocator<
100 ImageLoadInfo
103
104} // namespace CoreGraphics
Pixel format enumeration.
Definition pixelformat.h:22
Code
enums
Definition pixelformat.h:26
An URI object can split a Uniform Resource Identifier string into its components or build a string fr...
Definition uri.h:67
An ID allocator associates an id with a slice in an N number of arrays.
Definition idallocator.h:39
#define ID_24_8_TYPE(x)
Definition id.h:132
Acceleration structures are used to enable ray tracing on the GPU by dividing the scene into a BVH.
Definition accelerationstructure.h:24
ImageDimensions ImageGetDimensions(const ImageId id)
get image dimensions
Definition image.cc:198
const ubyte * ImageGetBuffer(const ImageId id)
Get pointer to buffer.
Definition image.cc:208
ImageId CreateImage(const ImageCreateInfoFile &info)
create image from file path
Definition image.cc:68
const SizeT ImageGetPixelStride(const ImageId id)
Get pixel stride in bytes.
Definition image.cc:218
Ids::IdAllocator< ImageLoadInfo > ImageAllocator
Definition image.h:101
void DestroyImage(const ImageId id)
destroy image
Definition image.cc:188
ImageAllocator imageAllocator
Definition image.cc:63
ImageChannelPrimitive ImageGetChannelPrimitive(const ImageId id)
get channel primitive
Definition image.cc:421
ImageChannelPrimitive
Definition image.h:44
@ Bit16UInt
Definition image.h:46
@ Bit32UInt
Definition image.h:48
@ Bit8UInt
Definition image.h:45
@ Bit32Float
Definition image.h:49
@ Bit16Float
Definition image.h:47
void ImageConvertPrimitive(const ImageId id, const ImageChannelPrimitive primitive, bool denormalize)
Convert image primitive.
Definition image.cc:288
bool ImageSaveToFile(const ImageId id, const ImageContainer container, const IO::URI &path)
Save image to file.
Definition image.cc:385
const SizeT ImageGetChannelStride(const ImageId id)
Get channel stride in bytes.
Definition image.cc:229
ImageContainer
Definition image.h:36
@ JPEG
Definition image.h:38
@ HDR
Definition image.h:40
@ TGA
Definition image.h:39
@ PNG
Definition image.h:37
PipelineStage
Definition config.h:192
CoreGraphics::PixelFormat format
Definition image.h:30
SizeT width
Definition image.h:31
void * data
Definition image.h:32
SizeT depth
Definition image.h:31
SizeT height
Definition image.h:31
IO::URI path
Definition image.h:24
bool convertTo32Bit
Definition image.h:25
Definition image.h:62
SizeT width
Definition image.h:63
SizeT height
Definition image.h:63
Definition image.h:19
Definition image.h:84
uint8_t blueOffset
Definition image.h:88
SizeT width
Definition image.h:85
union CoreGraphics::ImageLoadInfo::ImageData data
SizeT channels
Definition image.h:85
uint8_t alphaOffset
Definition image.h:88
PixelFormat::Code format
Definition image.h:87
ImageChannelPrimitive primitive
Definition image.h:86
SizeT height
Definition image.h:85
uint8_t redOffset
Definition image.h:88
uint8_t greenOffset
Definition image.h:88
texture type
Definition texture.h:25
unsigned char ubyte
Definition types.h:36
int SizeT
Definition types.h:42
unsigned short * stbiData16
Definition image.h:93
float * stbiDataFloat
Definition image.h:95
unsigned char * stbiData8
Definition image.h:92
unsigned int * stbiData32
Definition image.h:94