OGRE-Next: Ogre::TextureBox Struct Reference

| OGRE-Next 3.0.0 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | List of all members
Ogre::TextureBox Struct Reference

For cubemaps, the face is in sliceStart, (see CubemapSide::CubemapSide) For cubemap arrays, the cubemaps are addressed as sliceStart * 6. More...

`#include <OgreTextureBox.h>`

## Public Member Functions
| TextureBox ()
| TextureBox (uint32 _width, uint32 _height, uint32 _depth, uint32 _numSlices, uint32 _bytesPerPixel, uint32 _bytesPerRow, size_t _bytesPerImage)
void * | at (size_t xPos, size_t yPos, size_t zPos) const
| x, y & z are in pixels.
void * | atFromOffsettedOrigin (size_t xPos, size_t yPos, size_t zPos) const
void | copyFrom (const TextureBox &src)
void | copyFrom (const void *srcData, uint32 _width, uint32 _height, uint32 _bytesPerRow)
bool | equalSize (const TextureBox &other) const
| Returns true if 'other' & 'this' have the same dimensions.
bool | fullyContains (const TextureBox &other) const
| Returns true if 'other' fits inside 'this' (fully, not partially)
ColourValue | getColourAt (size_t _x, size_t _y, size_t _z, PixelFormatGpu pixelFormat) const
| Get colour value from a certain location in the image.
PixelFormatGpu | getCompressedPixelFormat () const
uint32 | getDepthOrSlices () const
uint32 | getMaxSlice () const
uint32 | getMaxX () const
uint32 | getMaxY () const
uint32 | getMaxZ () const
size_t | getSizeBytes () const
uint32 | getZOrSlice () const
bool | isCompressed () const
bool | isSubtextureRegion () const
| Returns true if this TextureBox does not represent a contiguous region of a single slice of full texture, and is instead a 2D subregion of a larger texture.
bool | overlaps (const TextureBox &other) const
| Returns true if 'this' and 'other' are in partial or full collision.
void | setColourAt (const ColourValue &cv, size_t _x, size_t _y, size_t _z, PixelFormatGpu pixelFormat)
| Set colour value at a certain location in the image.
void | setCompressedPixelFormat (PixelFormatGpu pixelFormat)

## Public Attributes
size_t | bytesPerImage
uint32 | bytesPerPixel
| When TextureBox contains a compressed format, bytesPerPixel contains the pixel format instead.
uint32 | bytesPerRow
void * | data
| Pointer is never owned by us.
uint32 | depth
uint32 | height
uint32 | numSlices
uint32 | sliceStart
uint32 | width
uint32 | x
uint32 | y
uint32 | z

## Detailed Description

For cubemaps, the face is in sliceStart, (see CubemapSide::CubemapSide) For cubemap arrays, the cubemaps are addressed as sliceStart * 6.

## Constructor & Destructor Documentation

## ◆ TextureBox() [1/2]

Ogre::TextureBox::TextureBox | ( |  | ) |
| inline

References bytesPerImage, bytesPerPixel, bytesPerRow, data, depth, height, numSlices, sliceStart, width, x, y, and z.

Referenced by copyFrom(), copyFrom(), equalSize(), fullyContains(), and overlaps().

## ◆ TextureBox() [2/2]

Ogre::TextureBox::TextureBox | ( | uint32 | _width,
|  | uint32 | _height,
|  | uint32 | _depth,
|  | uint32 | _numSlices,
|  | uint32 | _bytesPerPixel,
|  | uint32 | _bytesPerRow,
|  | size_t | _bytesPerImage )
| inline

References bytesPerImage, bytesPerPixel, bytesPerRow, data, depth, height, numSlices, sliceStart, width, x, y, and z.

## Member Function Documentation

## ◆ at()

void * Ogre::TextureBox::at | ( | size_t | xPos,
|  | size_t | yPos,
|  | size_t | zPos ) const
| inline

x, y & z are in pixels.

Only works for non-compressed formats. It can work for compressed formats if xPos & yPos are 0.

References bytesPerImage, bytesPerPixel, bytesPerRow, data, Ogre::PixelFormatGpuUtils::getCompressedBlockHeight(), Ogre::PixelFormatGpuUtils::getCompressedBlockSize(), Ogre::PixelFormatGpuUtils::getCompressedBlockWidth(), getCompressedPixelFormat(), and isCompressed().

Referenced by atFromOffsettedOrigin(), and copyFrom().

## ◆ atFromOffsettedOrigin()

void * Ogre::TextureBox::atFromOffsettedOrigin | ( | size_t | xPos,
|  | size_t | yPos,
|  | size_t | zPos ) const
| inline

References at(), getZOrSlice(), x, and y.

## ◆ copyFrom() [1/2]

void Ogre::TextureBox::copyFrom | ( | const TextureBox & | src | ) |
| inline

References TextureBox(), at(), bytesPerImage, bytesPerRow, Ogre::PixelFormatGpuUtils::getCompressedBlockHeight(), Ogre::PixelFormatGpuUtils::getCompressedBlockSize(), Ogre::PixelFormatGpuUtils::getCompressedBlockWidth(), getCompressedPixelFormat(), getDepthOrSlices(), getZOrSlice(), height, isCompressed(), isSubtextureRegion(), width, x, and y.

Referenced by copyFrom().

## ◆ copyFrom() [2/2]

void Ogre::TextureBox::copyFrom | ( | const void * | srcData,
|  | uint32 | _width,
|  | uint32 | _height,
|  | uint32 | _bytesPerRow )
| inline

References TextureBox(), copyFrom(), and data.

## ◆ equalSize()

bool Ogre::TextureBox::equalSize | ( | const TextureBox & | other | ) | const
| inline

Returns true if 'other' & 'this' have the same dimensions.

References TextureBox(), depth, height, numSlices, and width.

## ◆ fullyContains()

bool Ogre::TextureBox::fullyContains | ( | const TextureBox & | other | ) | const
| inline

Returns true if 'other' fits inside 'this' (fully, not partially)

References TextureBox(), getMaxSlice(), getMaxX(), getMaxY(), getMaxZ(), sliceStart, x, y, and z.

## ◆ getColourAt()

ColourValue Ogre::TextureBox::getColourAt | ( | size_t | _x,
|  | size_t | _y,
|  | size_t | _z,
|  | PixelFormatGpu | pixelFormat ) const

Get colour value from a certain location in the image.

## ◆ getCompressedPixelFormat()

PixelFormatGpu Ogre::TextureBox::getCompressedPixelFormat | ( |  | ) | const
| inline

References bytesPerPixel, and Ogre::PFG_UNKNOWN.

Referenced by at(), copyFrom(), and isSubtextureRegion().

## ◆ getDepthOrSlices()

uint32 Ogre::TextureBox::getDepthOrSlices | ( |  | ) | const
| inline

References depth, and numSlices.

Referenced by copyFrom().

## ◆ getMaxSlice()

uint32 Ogre::TextureBox::getMaxSlice | ( |  | ) | const
| inline

References numSlices, and sliceStart.

Referenced by fullyContains(), and overlaps().

## ◆ getMaxX()

uint32 Ogre::TextureBox::getMaxX | ( |  | ) | const
| inline

References width, and x.

Referenced by fullyContains(), and overlaps().

## ◆ getMaxY()

uint32 Ogre::TextureBox::getMaxY | ( |  | ) | const
| inline

References height, and y.

Referenced by fullyContains(), and overlaps().

## ◆ getMaxZ()

uint32 Ogre::TextureBox::getMaxZ | ( |  | ) | const
| inline

References depth, and z.

Referenced by fullyContains(), and overlaps().

## ◆ getSizeBytes()

size_t Ogre::TextureBox::getSizeBytes | ( |  | ) | const
| inline

References bytesPerImage, depth, and numSlices.

## ◆ getZOrSlice()

uint32 Ogre::TextureBox::getZOrSlice | ( |  | ) | const
| inline

References sliceStart, and z.

Referenced by atFromOffsettedOrigin(), and copyFrom().

## ◆ isCompressed()

bool Ogre::TextureBox::isCompressed | ( |  | ) | const
| inline

References bytesPerPixel.

Referenced by at(), copyFrom(), and isSubtextureRegion().

## ◆ isSubtextureRegion()

bool Ogre::TextureBox::isSubtextureRegion | ( |  | ) | const
| inline

Returns true if this TextureBox does not represent a contiguous region of a single slice of full texture, and is instead a 2D subregion of a larger texture.

References bytesPerImage, bytesPerPixel, bytesPerRow, Ogre::PixelFormatGpuUtils::getCompressedBlockHeight(), Ogre::PixelFormatGpuUtils::getCompressedBlockSize(), Ogre::PixelFormatGpuUtils::getCompressedBlockWidth(), getCompressedPixelFormat(), height, isCompressed(), width, x, and y.

Referenced by copyFrom().

## ◆ overlaps()

bool Ogre::TextureBox::overlaps | ( | const TextureBox & | other | ) | const
| inline

Returns true if 'this' and 'other' are in partial or full collision.

References TextureBox(), getMaxSlice(), getMaxX(), getMaxY(), getMaxZ(), sliceStart, x, y, and z.

## ◆ setColourAt()

void Ogre::TextureBox::setColourAt | ( | const ColourValue & | cv,
|  | size_t | _x,
|  | size_t | _y,
|  | size_t | _z,
|  | PixelFormatGpu | pixelFormat )

Set colour value at a certain location in the image.

## ◆ setCompressedPixelFormat()

void Ogre::TextureBox::setCompressedPixelFormat | ( | PixelFormatGpu | pixelFormat | ) |
| inline

References bytesPerPixel, and Ogre::PixelFormatGpuUtils::isCompressed().

## Member Data Documentation

## ◆ bytesPerImage

size_t Ogre::TextureBox::bytesPerImage

Referenced by TextureBox(), TextureBox(), at(), copyFrom(), getSizeBytes(), and isSubtextureRegion().

## ◆ bytesPerPixel

uint32 Ogre::TextureBox::bytesPerPixel

When TextureBox contains a compressed format, bytesPerPixel contains the pixel format instead.

See getCompressedPixelFormat.

Referenced by TextureBox(), TextureBox(), at(), getCompressedPixelFormat(), isCompressed(), isSubtextureRegion(), and setCompressedPixelFormat().

## ◆ bytesPerRow

uint32 Ogre::TextureBox::bytesPerRow

Referenced by TextureBox(), TextureBox(), at(), copyFrom(), and isSubtextureRegion().

## ◆ data

void* Ogre::TextureBox::data

Pointer is never owned by us.

Do not alter where data points to (e.g. do not increment it)

Referenced by TextureBox(), TextureBox(), at(), and copyFrom().

## ◆ depth

uint32 Ogre::TextureBox::depth

Referenced by TextureBox(), TextureBox(), equalSize(), getDepthOrSlices(), getMaxZ(), and getSizeBytes().

## ◆ height

uint32 Ogre::TextureBox::height

Referenced by TextureBox(), TextureBox(), copyFrom(), equalSize(), getMaxY(), and isSubtextureRegion().

## ◆ numSlices

uint32 Ogre::TextureBox::numSlices

Referenced by TextureBox(), TextureBox(), equalSize(), getDepthOrSlices(), getMaxSlice(), and getSizeBytes().

## ◆ sliceStart

uint32 Ogre::TextureBox::sliceStart

Referenced by TextureBox(), TextureBox(), fullyContains(), getMaxSlice(), getZOrSlice(), and overlaps().

## ◆ width

uint32 Ogre::TextureBox::width

Referenced by TextureBox(), TextureBox(), copyFrom(), equalSize(), getMaxX(), and isSubtextureRegion().

## ◆ x

uint32 Ogre::TextureBox::x

Referenced by TextureBox(), TextureBox(), atFromOffsettedOrigin(), copyFrom(), fullyContains(), getMaxX(), isSubtextureRegion(), and overlaps().

## ◆ y

uint32 Ogre::TextureBox::y

Referenced by TextureBox(), TextureBox(), atFromOffsettedOrigin(), copyFrom(), fullyContains(), getMaxY(), isSubtextureRegion(), and overlaps().

## ◆ z

uint32 Ogre::TextureBox::z

Referenced by TextureBox(), TextureBox(), fullyContains(), getMaxZ(), getZOrSlice(), and overlaps().

The documentation for this struct was generated from the following file:

- OgreTextureBox.h