class Geo::GeoV128Texture
A really simple texture where all elements are float vectors.
Functions
Name | Description |
---|---|
~GeoRefCount() | Virtual destructor required to make sure that the concrete class destructor gets called. |
AddRef() | Increments the reference count and return new value. |
ClearToValue(v128) | Clear all pixels in this texture to the given value. |
CopyUnscaled(GeoV128Texture *, GeoV128Texture *, GeoRect, GeoRect) | Copy a block from one texture to a different texture. |
CopyUnscaledFromBuffer(v128 *, u32, GeoV128Texture *, GeoRect, GeoRect) | Copies from a buffer of V128s with given pitch, rather than a texture. |
CopyUnscaledWithDestinationMask(GeoV128Texture *, GeoV128Texture *, GeoRect, GeoRect, GeoV128Texture *) | Copy a block from one texture to a different texture, with a mask specified in the destination texture space. |
CopyUnscaledWithSourceMask(GeoV128Texture *, GeoV128Texture *, GeoRect, GeoRect, GeoV128Texture *) | Copy a block from one texture to a different texture, with a mask specified in the source texture space. |
Create(s32, s32) | Create gives you back an uninitialised (values undefined!) texture of the appropriate size with a ref count of 1. |
DeserialiseFrom(FILE *) | Serialise in and out. |
Downsample(GeoV128Texture *) | Dest is half the size of source. Takes the average of the four values. |
DrawRect(s32, s32, s32, s32, v128) | For debugging purposes. |
Exists(s32, s32) | Return true if [x,y] is contained with the image. |
GeoRefCount() | Default constructor. The reference count is initially zero. |
GetHeight() | Return the height of this image. |
GetPixels() | Return a raw pointer to the start of the pixel array. |
GetPixels() | Return a const raw pointer to the start of the pixel array. |
GetWidth() | Return the width of this image. |
IsValid() | Checks if this texture has valid data. |
MaskedIn(s32, s32) | Return true if (x, y) is in bounds for this texture, and the value of the x component is positive. |
MultiplyBy(v128) | Multiply all pixels in this texture by the given value. |
OutputToPFM(const char *) | Output for debugging purposes. |
Release() | Decrements the reference count, deleting the object if it reaches zero. |
Sample(s32, s32) | Return the Sample at position [x,y]. |
SerialiseTo(FILE *) | Serialise in and out. |
SetSample(s32, s32, v128) | For debugging purposes. |
Variables
Name | Description |
---|---|
s32 m_RefCount | The reference count, once it reaches zero the object deletes itself. |
Anchor | ||||
---|---|---|---|---|
|
virtual Geo::GeoRefCount::~GeoRefCount
...
public: virtual ~GeoRefCount()
...
Virtual destructor required to make sure that the concrete class destructor gets called.
Anchor | ||||
---|---|---|---|---|
|
s32 Geo::GeoRefCount::AddRef
...
public: s32 AddRef()
...
Increments the reference count and return new value.
Returns
New value of reference count.
Anchor | ||||
---|---|---|---|---|
|
void Geo::GeoV128Texture::ClearToValue
...
public: void ClearToValue
(
v128 v
)
...
Clear all pixels in this texture to the given value.
Anchor | ||||
---|---|---|---|---|
|
static bool Geo::GeoV128Texture::CopyUnscaled
...
public: bool CopyUnscaled
(
GeoV128Texture * source,
GeoV128Texture * target,
GeoRect sourceBB,
GeoRect targetBB
)
...
Copy a block from one texture to a different texture.
It expects a one to one correspondence between the pixels in each bounding box - no scaling is applied and it will return false if this isn't met. All parameters must be valid.
Anchor | ||||
---|---|---|---|---|
|
static bool Geo::GeoV128Texture::CopyUnscaledFromBuffer
...
public: bool CopyUnscaledFromBuffer
(
v128 * source,
u32 sourcePitch,
GeoV128Texture * target,
GeoRect sourceBB,
GeoRect targetBB
)
...
Copies from a buffer of V128s with given pitch, rather than a texture.
Otherwise the same as CopyUnscaled
Anchor | ||||
---|---|---|---|---|
|
static bool Geo::GeoV128Texture::CopyUnscaledWithDestinationMask
...
public: bool CopyUnscaledWithDestinationMask
(
GeoV128Texture * source,
GeoV128Texture * target,
GeoRect sourceBB,
GeoRect targetBB,
GeoV128Texture * mask
)
...
Copy a block from one texture to a different texture, with a mask specified in the destination texture space.
Same as CopyUnscaled but only copies where the mask is non-zero in the X co-ord.
Anchor | ||||
---|---|---|---|---|
|
static bool Geo::GeoV128Texture::CopyUnscaledWithSourceMask
...
public: bool CopyUnscaledWithSourceMask
(
GeoV128Texture * source,
GeoV128Texture * target,
GeoRect sourceBB,
GeoRect targetBB,
GeoV128Texture * mask
)
...
Copy a block from one texture to a different texture, with a mask specified in the source texture space.
Same as CopyUnscaled but only copies where the mask is non-zero in the X co-ord.
Anchor | ||||
---|---|---|---|---|
|
static GeoV128Texture* Geo::GeoV128Texture::Create
...
public: GeoV128Texture * Create
(
s32 w,
s32 h
)
...
Create gives you back an uninitialised (values undefined!) texture of the appropriate size with a ref count of 1.
So no need to AddRef it immediately.
Anchor | ||||
---|---|---|---|---|
|
void Geo::GeoV128Texture::DeserialiseFrom
...
public: void DeserialiseFrom
(
FILE * fp
)
...
Serialise in and out.
Anchor | ||||
---|---|---|---|---|
|
void Geo::GeoV128Texture::Downsample
...
public: void Downsample
(
GeoV128Texture * dest
) const
...
Dest is half the size of source. Takes the average of the four values.
Anchor | ||||
---|---|---|---|---|
|
void Geo::GeoV128Texture::DrawRect
...
public: void DrawRect
(
s32 x,
s32 y,
s32 w,
s32 h,
v128 value
)
...
For debugging purposes.
Anchor | ||||
---|---|---|---|---|
|
bool Geo::GeoV128Texture::Exists
...
public: bool Exists
(
s32 x,
s32 y
) const
...
Return true if [x,y] is contained with the image.
Anchor | ||||
---|---|---|---|---|
|
Geo::GeoRefCount::GeoRefCount
...
public: GeoRefCount()
...
Default constructor. The reference count is initially zero.
Anchor | ||||
---|---|---|---|---|
|
s32 Geo::GeoV128Texture::GetHeight
...
public: s32 GetHeight() const
...
Return the height of this image.
Anchor | ||||
---|---|---|---|---|
|
v128* Geo::GeoV128Texture::GetPixels
...
public: v128 * GetPixels()
...
Return a raw pointer to the start of the pixel array.
Anchor | ||||
---|---|---|---|---|
|
const v128* Geo::GeoV128Texture::GetPixels
...
public: const v128 * GetPixels() const
...
Return a const raw pointer to the start of the pixel array.
Anchor | ||||
---|---|---|---|---|
|
s32 Geo::GeoV128Texture::GetWidth
...
public: s32 GetWidth() const
...
Return the width of this image.
Anchor | ||||
---|---|---|---|---|
|
bool Geo::GeoV128Texture::IsValid
...
public: bool IsValid() const
...
Checks if this texture has valid data.
Anchor | ||||
---|---|---|---|---|
|
bool Geo::GeoV128Texture::MaskedIn
...
public: bool MaskedIn
(
s32 x,
s32 y
) const
...
Return true if (x, y) is in bounds for this texture, and the value of the x component is positive.
Anchor | ||||
---|---|---|---|---|
|
void Geo::GeoV128Texture::MultiplyBy
...
public: void MultiplyBy
(
v128 multiplicand
)
...
Multiply all pixels in this texture by the given value.
Anchor | ||||
---|---|---|---|---|
|
bool Geo::GeoV128Texture::OutputToPFM
...
public: bool OutputToPFM
(
const char * filename
) const
...
Output for debugging purposes.
Anchor | ||||
---|---|---|---|---|
|
s32 Geo::GeoRefCount::Release
...
public: s32 Release()
...
Decrements the reference count, deleting the object if it reaches zero.
Returns
Returns reference count after decrement. 0 if deleted.
Anchor | ||||
---|---|---|---|---|
|
v128 Geo::GeoV128Texture::Sample
...
public: v128 Sample
(
s32 x,
s32 y
) const
...
Return the Sample at position [x,y].
Anchor | ||||
---|---|---|---|---|
|
bool Geo::GeoV128Texture::SerialiseTo
...
public: bool SerialiseTo
(
FILE * fp
) const
...
Serialise in and out.
Anchor | ||||
---|---|---|---|---|
|
void Geo::GeoV128Texture::SetSample
...
public: void SetSample
(
s32 x,
s32 y,
v128 value
)
...
For debugging purposes.