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.
| Name | Description | 
|---|---|
| Enlighten::GenericColourBuffer::ConstIterator | Const Iterator.  | 
| Enlighten::GenericColourBuffer::Iterator | 
| Name | Description | 
|---|---|
| C ColourType | Colour type.  | 
| ConstIterator< ColourType > ConstIteratorType | Const Iterator type.  | 
| Iterator< ColourType > IteratorType | Iterator type.  | 
| 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.  | 
| 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.  | 
public: ConstIteratorType Begin() const
Return a const iterator at the beginning of this buffer.
public: IteratorType Begin()
Return an iterator at the beginning of this buffer.
protected: void ByteSwapMembers()
Endian swap the members of the header.
protected: void ByteSwapPayload
(
    Geo::EConvertEndianMode mode
)
Endian swap the buffer contents.
public: Geo::u32 CalculateBufferSize
(
    Geo::s32 numValues
)
Returns the size of the buffer in bytes.
public: void Clear()
Reset the contents of this buffer to zero/black.
public: void ConvertEndian
(
    Geo::EConvertEndianMode mode
)
Endian swap the buffer.
public: bool Copy
(
    const GenericColourBuffer< ColourType > & source
)
Copy values from another buffer.
public: GenericColourBuffer * Create
(
    Geo::GeoGuid objectId,
    Geo::s32 numValues,
    void * memory
)
Creates a buffer in memory.
public: GenericColourBuffer * Create
(
    void * memory,
    const GenericColourBuffer & source
)
Creates a copy in memory.
public: ConstIteratorType End() const
Return a const iterator at the end of this buffer.
public: IteratorType End()
Return an iterator at the end of this buffer.
protected: GenericColourBuffer
(
    Geo::GeoGuid objectId,
    Geo::s32 numValues,
    Geo::s32 payloadOffset
)
Main constructor.
protected: GenericColourBuffer
(
    const GenericColourBuffer & source
)
Copy constructor.
public: Geo::u32 GetNumValues() const
Returns the number of values in this buffer.
public: size_t GetSize() const
Returns the size of this buffer in bytes.
public: Geo::GeoGuid GetSystemId() const
Returns the guid of the system that this buffer correlates to.