This is the documentation for Enlighten.

class Enlighten GenericColourBuffer

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

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.


ConstIteratorType Enlighten::GenericColourBuffer< C >::Begin


public: ConstIteratorType Begin() const


Return a const iterator at the beginning of this buffer.


IteratorType Enlighten::GenericColourBuffer< C >::Begin


public: IteratorType Begin()


Return an iterator at the beginning of this buffer.


void Enlighten::GenericColourBuffer< ColourType >::ByteSwapMembers


protected: void ByteSwapMembers()


Endian swap the members of the header.


void Enlighten::GenericColourBuffer< ColourType >::ByteSwapPayload


protected: void ByteSwapPayload
(
    Geo::EConvertEndianMode mode
)


Endian swap the buffer contents.


Geo::u32 Enlighten::GenericColourBuffer< ColourType >::CalculateBufferSize


public: Geo::u32 CalculateBufferSize
(
    Geo::s32 numValues
)


Returns the size of the buffer in bytes.


void Enlighten::GenericColourBuffer< ColourType >::Clear


public: void Clear()


Reset the contents of this buffer to zero/black.


void Enlighten::GenericColourBuffer< ColourType >::ConvertEndian


public: void ConvertEndian
(
    Geo::EConvertEndianMode mode
)


Endian swap the buffer.


bool Enlighten::GenericColourBuffer< ColourType >::Copy


public: bool Copy
(
    const GenericColourBuffer< ColourType > & source
)


Copy values from another buffer.


GenericColourBuffer< ColourType > * Enlighten::GenericColourBuffer< ColourType >::Create


public: GenericColourBuffer * Create
(
    Geo::GeoGuid objectId,
    Geo::s32 numValues,
    void * memory
)


Creates a buffer in memory.


GenericColourBuffer< ColourType > * Enlighten::GenericColourBuffer< ColourType >::Create


public: GenericColourBuffer * Create
(
    void * memory,
    const GenericColourBuffer & source
)


Creates a copy in memory.


ConstIteratorType Enlighten::GenericColourBuffer< C >::End


public: ConstIteratorType End() const


Return a const iterator at the end of this buffer.


IteratorType Enlighten::GenericColourBuffer< C >::End


public: IteratorType End()


Return an iterator at the end of this buffer.


Enlighten::GenericColourBuffer< ColourType >::GenericColourBuffer


protected: GenericColourBuffer
(
    Geo::GeoGuid objectId,
    Geo::s32 numValues,
    Geo::s32 payloadOffset
)


Main constructor.


Enlighten::GenericColourBuffer< ColourType >::GenericColourBuffer


protected: GenericColourBuffer
(
    const GenericColourBuffer & source
)


Copy constructor.


Geo::u32 Enlighten::GenericColourBuffer< C >::GetNumValues


public: Geo::u32 GetNumValues() const


Returns the number of values in this buffer.


size_t Enlighten::GenericColourBuffer< C >::GetSize


public: size_t GetSize() const


Returns the size of this buffer in bytes.


Geo::GeoGuid Enlighten::GenericColourBuffer< C >::GetSystemId


public: Geo::GeoGuid GetSystemId() const


Returns the guid of the system that this buffer correlates to.