template<typename>
class Enlighten::GenericColourBuffer
Generic class to store an array of values for a given system.
The type of values stored is determined by the 'C' template parameter. Unlike the IncidentLightingBuffer and InputLightingBuffer, this class does not support run-time selection of format precision. This class requires that the 'C' type define an ExpandedType. This allows having a compressed format that expands to a v128 or possibly just a single float. The compressed format is expanded on read and compressed on write although that logic belongs in the 'C' object.
Classes
Name | Description |
---|---|
Enlighten::GenericColourBuffer::ConstIterator | Const Iterator. |
Enlighten::GenericColourBuffer::Iterator |
Typedefs
Name | Description |
---|---|
C ColourType | Colour type. |
ConstIterator< ColourType > ConstIteratorType | Const Iterator type. |
Iterator< ColourType > IteratorType | Iterator type. |
Variables
Name | Description |
---|---|
Geo::u32 m_NumValues | Number of clusters. |
Geo::GeoGuid m_ObjectId | Id of the system/cube map that these lighting values apply to. |
Geo::u32 m_Padding[2] | Unused padding. Explicitly declared so can be zero-initialised. |
Geo::s32 m_PayloadOffset | Byte offset from beginning of the header to the colour data. |
Functions
Name | Description |
---|---|
Begin() | Return a const iterator at the beginning of this buffer. |
Begin() | Return an iterator at the beginning of this buffer. |
ByteSwapMembers() | Endian swap the members of the header. |
ByteSwapPayload(Geo::EConvertEndianMode) | Endian swap the buffer contents. |
CalculateBufferSize(Geo::s32) | Returns the size of the buffer in bytes. |
Clear() | Reset the contents of this buffer to zero/black. |
ConvertEndian(Geo::EConvertEndianMode) | Endian swap the buffer. |
Copy(const GenericColourBuffer< ColourType > &) | Copy values from another buffer. |
Create(Geo::GeoGuid, Geo::s32, void *) | Creates a buffer in memory. |
Create(void *, const GenericColourBuffer &) | Creates a copy in memory. |
End() | Return a const iterator at the end of this buffer. |
End() | Return an iterator at the end of this buffer. |
GenericColourBuffer(Geo::GeoGuid, Geo::s32, Geo::s32) | Main constructor. |
GenericColourBuffer(const GenericColourBuffer &) | Copy constructor. |
GetNumValues() | Returns the number of values in this buffer. |
GetSize() | Returns the size of this buffer in bytes. |
GetSystemId() | Returns the guid of the system that this buffer correlates to. |
Anchor | ||||
---|---|---|---|---|
|
ConstIteratorType Enlighten::GenericColourBuffer< C >::Begin
...
public: ConstIteratorType Begin() const
...
Return a const iterator at the beginning of this buffer.
Anchor | ||||
---|---|---|---|---|
|
IteratorType Enlighten::GenericColourBuffer< C >::Begin
...
public: IteratorType Begin()
...
Return an iterator at the beginning of this buffer.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::GenericColourBuffer< ColourType >::ByteSwapMembers
...
protected: void ByteSwapMembers()
...
Endian swap the members of the header.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::GenericColourBuffer< ColourType >::ByteSwapPayload
...
protected: void ByteSwapPayload
(
Geo::EConvertEndianMode mode
)
...
Endian swap the buffer contents.
Anchor | ||||
---|---|---|---|---|
|
Geo::u32 Enlighten::GenericColourBuffer< ColourType >::CalculateBufferSize
...
public: Geo::u32 CalculateBufferSize
(
Geo::s32 numValues
)
...
Returns the size of the buffer in bytes.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::GenericColourBuffer< ColourType >::Clear
...
public: void Clear()
...
Reset the contents of this buffer to zero/black.
Anchor | ||||
---|---|---|---|---|
|
void Enlighten::GenericColourBuffer< ColourType >::ConvertEndian
...
public: void ConvertEndian
(
Geo::EConvertEndianMode mode
)
...
Endian swap the buffer.
Anchor | ||||
---|---|---|---|---|
|
bool Enlighten::GenericColourBuffer< ColourType >::Copy
...
public: bool Copy
(
const GenericColourBuffer< ColourType > & source
)
...
Copy values from another buffer.
Anchor | ||||
---|---|---|---|---|
|
GenericColourBuffer< ColourType > * Enlighten::GenericColourBuffer< ColourType >::Create
...
public: GenericColourBuffer * Create
(
Geo::GeoGuid objectId,
Geo::s32 numValues,
void * memory
)
...
Creates a buffer in memory.
Anchor | ||||
---|---|---|---|---|
|
GenericColourBuffer< ColourType > * Enlighten::GenericColourBuffer< ColourType >::Create
...
public: GenericColourBuffer * Create
(
void * memory,
const GenericColourBuffer & source
)
...
Creates a copy in memory.
Anchor | ||||
---|---|---|---|---|
|
ConstIteratorType Enlighten::GenericColourBuffer< C >::End
...
public: ConstIteratorType End() const
...
Return a const iterator at the end of this buffer.
Anchor | ||||
---|---|---|---|---|
|
IteratorType Enlighten::GenericColourBuffer< C >::End
...
public: IteratorType End()
...
Return an iterator at the end of this buffer.
Anchor | ||||
---|---|---|---|---|
|
Enlighten::GenericColourBuffer< ColourType >::GenericColourBuffer
...
protected: GenericColourBuffer
(
Geo::GeoGuid objectId,
Geo::s32 numValues,
Geo::s32 payloadOffset
)
...
Main constructor.
Anchor | ||||
---|---|---|---|---|
|
Enlighten::GenericColourBuffer< ColourType >::GenericColourBuffer
...
protected: GenericColourBuffer
(
const GenericColourBuffer & source
)
...
Copy constructor.
Anchor | ||||
---|---|---|---|---|
|
Geo::u32 Enlighten::GenericColourBuffer< C >::GetNumValues
...
public: Geo::u32 GetNumValues() const
...
Returns the number of values in this buffer.
Anchor | ||||
---|---|---|---|---|
|
size_t Enlighten::GenericColourBuffer< C >::GetSize
...
public: size_t GetSize() const
...
Returns the size of this buffer in bytes.
Anchor | ||||
---|---|---|---|---|
|
Geo::GeoGuid Enlighten::GenericColourBuffer< C >::GetSystemId
...
public: Geo::GeoGuid GetSystemId() const
...
Returns the guid of the system that this buffer correlates to.