This is the documentation for Enlighten.

module Utilities

Defines file formats for saving run-time data structures to file and provides helper classes to drive the run-time radiosity system.

The code for Enlighten Utilities is included in the SDK distribution so that you can:

  1. Modify the way in which EnlightenPrecompute saves data to file.

  2. See how to drive the radiosity run-time on different platforms and different threading models.

Functions

Name Description
CopyAlbedoBufferBuffer(const Enlighten::InputWorkspace *, const Enlighten::AlbedoBuffer *)

Copy an InputLightingBuffer object.

CopyDynamicMaterialWorkspaceBuffer(const Enlighten::InputWorkspace *, const Enlighten::DynamicMaterialWorkspace *)

Copy an DynamicMaterialWorkspace object.

CopyEmissiveBuffer(const Enlighten::InputWorkspace *, const Enlighten::EmissiveBuffer *)

Copy an InputLightingBuffer object.

CopyIncidentLightingBuffer(const Enlighten::InputWorkspace *, const Enlighten::IncidentLightingBuffer *)

Copy an IncidentLightingBuffer object.

CopyInputLightingBuffer(const Enlighten::InputWorkspace *, const Enlighten::InputLightingBuffer *)

Copy an InputLightingBuffer object.

CopyRadCubeMapCore(const Enlighten::RadCubeMapCore *, Enlighten::RadCubeMapCore *)

Copies a RadCubeMapCore.

CopyRadSystemCore(const Enlighten::RadSystemCore *, Enlighten::RadSystemCore *)

Copies a RadSystemCore.

DeleteAlbedoBuffer(Enlighten::AlbedoBuffer *&)

Free an AlbedoBuffer object, and all the memory it owns.

DeleteClusterAlbedoWorkspaceMaterialData(Enlighten::ClusterAlbedoWorkspaceMaterialData *&)

Free an ClusterAlbedoWorkspaceMaterialData object, and all the memory (RadDataBlocks) it owns.

DeleteDynamicMaterialWorkspace(Enlighten::DynamicMaterialWorkspace *&)

Free an DynamicMaterialWorkspace object, and all the memory it owns.

DeleteEmissiveBuffer(Enlighten::EmissiveBuffer *&)

Free an EmissiveBuffer object, and all the memory it owns.

DeleteIncidentLightingBuffer(Enlighten::IncidentLightingBuffer *&)

Free an IncidentLightingBuffer object, and all the memory it owns.

DeleteInputLightingBuffer(Enlighten::InputLightingBuffer *&)

Free an InputLightingBuffer object, and all the memory it owns.

DeleteInputWorkspace(Enlighten::InputWorkspace *&)

Free an InputWorkspace object, and all the memory (RadDataBlocks) it owns.

DeletePrecomputedVisibilityData(Enlighten::PrecomputedVisibilityData *&)

Free a PrecomputedVisibilityData object, and all the memory (RadDataBlocks) it owns.

DeleteRadCubeMapCore(Enlighten::RadCubeMapCore *&)

Free a RadCubeMapCore object, and all the memory (RadDataBlocks) it owns.

DeleteRadProbeSetCore(Enlighten::RadProbeSetCore *&)

Free a RadProbeSetCore object, and all the memory (RadDataBlocks) it owns.

DeleteRadSystemCore(Enlighten::RadSystemCore *&)

Free a RadSystemCore object, and all the memory (RadDataBlocks) it owns.

DeleteTransparencyBuffer(Enlighten::TransparencyBuffer *&)

Free a TransparencyBuffer object, and all the memory it owns.

FreeDataBlockContents(RadDataBlock *)

Free a RadDataBlock object, and all the memory it owns.

GetSolverSuffix(eSolverType)

Defines a platform specific extension for some files, such as the InputWorkspace, that differ in content between platforms.

ReadAlbedoBuffer(Geo::IGeoInputStream &)

Read an AlbedoBuffer from a stream.

ReadAlbedoBufferInPlace(char *, size_t)

These utilities perform in-place fixup of the various enlighten data structures.

ReadClusterAlbedoWorkspaceMaterialData(Geo::IGeoInputStream &, Geo::u32)

Read an ClusterAlbedoWorkspaceMaterialData from a stream.

ReadClusterAlbedoWorkspaceMaterialDataFromFile(const char *, Geo::u32)

Read an ClusterAlbedoWorkspaceMaterialData from file.

ReadClusterAlbedoWorkspaceMaterialDataInPlace(char *, size_t)

These utilities perform in-place fixup of the various enlighten data structures.

ReadDataBlock(RadDataBlock *, Geo::IGeoInputStream &)

Read a RadDataBlock from a Geo::IGeoInputStream. Will return an object that should be released with FreeDataBlockContents().

ReadDataBlockInPlace(RadDataBlock &, char *&)

These utilities perform in-place fixup of the various enlighten data structures.

ReadDynamicMaterialWorkspace(Geo::IGeoInputStream &)

Read an DynamicMaterialWorkspace from a stream.

ReadDynamicMaterialWorkspaceInPlace(char *, size_t)

These utilities perform in-place fixup of the various enlighten data structures.

ReadEmissiveBuffer(Geo::IGeoInputStream &)

Read an EmissiveBuffer from a stream.

ReadEmissiveBufferInPlace(char *, size_t)

These utilities perform in-place fixup of the various enlighten data structures.

ReadIncidentLightingBuffer(Geo::IGeoInputStream &)

Read an IncidentLightingBuffer from a stream.

ReadIncidentLightingBufferInPlace(char *, size_t)

These utilities perform in-place fixup of the various enlighten data structures.

ReadInputLightingBuffer(Geo::IGeoInputStream &)

Read an InputLightingBuffer from a stream.

ReadInputLightingBufferInPlace(char *, size_t)

These utilities perform in-place fixup of the various enlighten data structures.

ReadInputWorkspace(Geo::IGeoInputStream &, Geo::u32)

Read an InputWorkspace from a stream.

ReadInputWorkspaceFromFile(const char *, Geo::u32)

Read an InputWorkspace from file.

ReadInputWorkspaceInPlace(char *, size_t)

These utilities perform in-place fixup of the various enlighten data structures.

ReadOptionalDataBlock(RadDataBlock *, Geo::IGeoInputStream &, Geo::u32, Geo::u32)

Read or skip a RadDataBlock in a Geo::IGeoInputStream, depending on the sections requested and the id of the block.

ReadPrecomputedVisibilityData(Geo::IGeoInputStream &)

Read a PrecomputedVisibilityData struct from a stream.

ReadPrecomputedVisibilityDataFromFile(const char *)

Read a PrecomputedVisibilityData struct from a file.

ReadPrecomputedVisibilityDataInPlace(char *, size_t)

These utilities perform in-place fixup of the various enlighten data structures.

ReadProbeTaskOutput(Enlighten::RadProbeTask *, Geo::IGeoInputStream &)

Read the RadProbeTask results data from a file/stream.

ReadProbeTaskOutputFromFile(Enlighten::RadProbeTask *, const char *)

Read the RadProbeTask results data from a file/stream.

ReadRadCubeMapCore(Geo::IGeoInputStream &)

Read a RadCubeMapCore from a stream.

ReadRadCubeMapCoreFromFile(const char *)

Read a RadCubeMapCore from file.

ReadRadCubeMapCoreInPlace(char *, size_t)

These utilities perform in-place fixup of the various enlighten data structures.

ReadRadProbeSetCore(Geo::IGeoInputStream &, Geo::u32)

Read run-time probeset data from a file.

ReadRadProbeSetCoreFromFile(const char *, Geo::u32)

Read run-time probe set data from a file.

ReadRadProbeSetCoreInPlace(char *, size_t)

These utilities perform in-place fixup of the various enlighten data structures.

ReadRadSystemCore(Geo::IGeoInputStream &, Geo::u32)

Read a RadSystemCore from a stream.

ReadRadSystemCoreFromFile(const char *, Geo::u32)

Read a RadSystemCore from file.

ReadRadSystemCoreInPlace(char *, size_t)

These utilities perform in-place fixup of the various enlighten data structures.

ReadRadTaskOutput(Geo::s32 &, Geo::s32 &, eOutputFormat &, eOutputFormatByteOrder &, void *, void *, void *, Geo::IGeoInputStream &)

Read the RadIrradianceTask results data from a file/stream.

ReadRadTaskOutputFromFile(Geo::s32 &, Geo::s32 &, eOutputFormat &, eOutputFormatByteOrder &, void *, void *, void *, const char *)

Read the RadIrradianceTask results data from a file.

ReadTransparencyBufferInPlace(char *, size_t)

These utilities perform in-place fixup of the various enlighten data structures.

SkipDataBlock(Geo::IGeoInputStream &)

Skip a RadDataBlock in a Geo::IGeoStream. Will advance the stream past a RadDataBlock without reading the contents.

WriteAlbedoBuffer(const Enlighten::AlbedoBuffer *, Geo::IGeoStream &)

Write an AlbedoBuffer to a stream.

WriteAlbedoBufferForInPlace(const AlbedoBuffer *, Geo::IGeoStream &, Geo::EConvertEndianMode)

These utilities perform in-place fixup of the various enlighten data structures.

WriteClusterAlbedoWorkspaceMaterialData(const Enlighten::ClusterAlbedoWorkspaceMaterialData *, Geo::IGeoStream &)

Write an ClusterAlbedoWorkspaceMaterialData to a stream, ready to be loaded on the target platform.

WriteClusterAlbedoWorkspaceMaterialDataForInPlace(const ClusterAlbedoWorkspaceMaterialData *, Geo::IGeoStream &, Geo::EConvertEndianMode)

These utilities perform in-place fixup of the various enlighten data structures.

WriteClusterAlbedoWorkspaceMaterialDataToFile(const Enlighten::ClusterAlbedoWorkspaceMaterialData *, const char *)

Write an ClusterAlbedoWorkspaceMaterialData to file, ready to be loaded on the target platform.

WriteDataBlock(const RadDataBlock &, Geo::IGeoStream &)

Write a RadDataBlock to a Geo::IGeoStream.

WriteDataBlockForInPlace(const RadDataBlock &, char *&)

These utilities perform in-place fixup of the various enlighten data structures.

WriteDynamicMaterialWorkspace(const Enlighten::DynamicMaterialWorkspace *, Geo::IGeoStream &)

Write an DynamicMaterialWorkspace to a stream.

WriteDynamicMaterialWorkspaceForInPlace(const DynamicMaterialWorkspace *, Geo::IGeoStream &, Geo::EConvertEndianMode)

These utilities perform in-place fixup of the various enlighten data structures.

WriteEmissiveBuffer(const Enlighten::EmissiveBuffer *, Geo::IGeoStream &)

Write an EmissiveBuffer to a stream.

WriteEmissiveBufferForInPlace(const EmissiveBuffer *, Geo::IGeoStream &, Geo::EConvertEndianMode)

These utilities perform in-place fixup of the various enlighten data structures.

WriteIncidentLightingBuffer(const Enlighten::IncidentLightingBuffer *, Geo::IGeoStream &)

Write an IncidentLightingBuffer to a stream.

WriteIncidentLightingBufferForInPlace(const IncidentLightingBuffer *, Geo::IGeoStream &, Geo::EConvertEndianMode)

These utilities perform in-place fixup of the various enlighten data structures.

WriteInputLightingBuffer(const Enlighten::InputLightingBuffer *, Geo::IGeoStream &)

Write an InputLightingBuffer to a stream.

WriteInputLightingBufferForInPlace(const InputLightingBuffer *, Geo::IGeoStream &, Geo::EConvertEndianMode)

These utilities perform in-place fixup of the various enlighten data structures.

WriteInputLightingBufferToFile(const Enlighten::InputLightingBuffer *, const char *)

Write an InputLightingBuffer to file.

WriteInputWorkspace(const Enlighten::InputWorkspace *, Geo::IGeoStream &)

Write an InputWorkspace to a stream, ready to be loaded on the target platform.

WriteInputWorkspaceForInPlace(const InputWorkspace *, Geo::IGeoStream &, Geo::EConvertEndianMode)

These utilities perform in-place fixup of the various enlighten data structures.

WriteInputWorkspaceToFile(const Enlighten::InputWorkspace *, const char *)

Write an InputWorkspace to file, ready to be loaded on the target platform.

WritePrecomputedVisibilityData(const Enlighten::PrecomputedVisibilityData *, Geo::IGeoStream &)

Write a PrecomputedVisibilityData structure to a stream.

WritePrecomputedVisibilityDataForInPlace(const PrecomputedVisibilityData *, Geo::IGeoStream &, Geo::EConvertEndianMode)

These utilities perform in-place fixup of the various enlighten data structures.

WritePrecomputedVisibilityDataToFile(const Enlighten::PrecomputedVisibilityData *, const char *)

Write a PrecomputedVisibilityData structure to a file.

WriteProbeTaskOutput(const Enlighten::RadProbeTask *, Geo::IGeoStream &)

Write the RadProbeTask results data to a file/stream.

WriteProbeTaskOutputToFile(const Enlighten::RadProbeTask *, const char *)

Write the RadProbeTask results data to a file/stream.

WriteRadCubeMapCore(const Enlighten::RadCubeMapCore *, Geo::IGeoStream &)

Write a RadCubeMapCore to a stream, ready to be loaded on the target platform.

WriteRadCubeMapCoreForInPlace(const RadCubeMapCore *, Geo::IGeoStream &, Geo::EConvertEndianMode)

These utilities perform in-place fixup of the various enlighten data structures.

WriteRadCubeMapCoreToFile(const Enlighten::RadCubeMapCore *, const char *)

Write a RadCubeMapCore to file, ready to be loaded on the target platform.

WriteRadIrradianceTaskOutput(const RadIrradianceTask *, Geo::IGeoStream &)

Write the RadIrradianceTask results data to a file/stream.

WriteRadIrradianceTaskOutputToFile(const RadIrradianceTask *, const char *)

Write the RadIrradianceTask results data to a file/stream.

WriteRadProbeSetCore(const Enlighten::RadProbeSetCore *, Geo::IGeoStream &)

Write run-time probeset data to a stream, ready to be loaded on the target platform.

WriteRadProbeSetCoreForInPlace(const RadProbeSetCore *, Geo::IGeoStream &, Geo::EConvertEndianMode)

These utilities perform in-place fixup of the various enlighten data structures.

WriteRadProbeSetCoreToFile(const Enlighten::RadProbeSetCore *, const char *)

Write run-time probeset data to file, ready to be loaded on the target platform.

WriteRadSystemCore(const Enlighten::RadSystemCore *, Geo::IGeoStream &)

Write a RadSystemCore to a stream, ready to be loaded on the target platform.

WriteRadSystemCoreForInPlace(const RadSystemCore *, Geo::IGeoStream &, Geo::EConvertEndianMode)

These utilities perform in-place fixup of the various enlighten data structures.

WriteRadSystemCoreToFile(const Enlighten::RadSystemCore *, const char *)

Write a RadSystemCore to file, ready to be loaded on the target platform.

WriteTransparencyBufferForInPlace(const TransparencyBuffer *, Geo::IGeoStream &, Geo::EConvertEndianMode)

These utilities perform in-place fixup of the various enlighten data structures.


Enlighten::AlbedoBuffer *GEO_CALL Enlighten::CopyAlbedoBufferBuffer


public: Enlighten::AlbedoBuffer *GEO_CALL CopyAlbedoBufferBuffer
(
    const Enlighten::InputWorkspace * inputWorkspace,
    const Enlighten::AlbedoBuffer * sourceAlbedoBuffer
)


Copy an InputLightingBuffer object.

Parameters
[in] inputWorkspace

- The Inputworkspace to use to create the input lighting buffer.

[in] sourceAlbedoBuffer

- The AlbedoBuffer to copy from.


Enlighten::DynamicMaterialWorkspace *GEO_CALL Enlighten::CopyDynamicMaterialWorkspaceBuffer


public: Enlighten::DynamicMaterialWorkspace *GEO_CALL CopyDynamicMaterialWorkspaceBuffer
(
    const Enlighten::InputWorkspace * inputWorkspace,
    const Enlighten::DynamicMaterialWorkspace * materialWorkspace
)


Copy an DynamicMaterialWorkspace object.

Parameters
[in] inputWorkspace

- The Inputworkspace to use to create the input lighting buffer.

[in] materialWorkspace

- The DynamicMaterialWorkspace to copy from.


Enlighten::EmissiveBuffer *GEO_CALL Enlighten::CopyEmissiveBuffer


public: Enlighten::EmissiveBuffer *GEO_CALL CopyEmissiveBuffer
(
    const Enlighten::InputWorkspace * inputWorkspace,
    const Enlighten::EmissiveBuffer * sourceEmissiveBuffer
)


Copy an InputLightingBuffer object.

Parameters
[in] inputWorkspace

- The InputWorkspace to use to create the input lighting buffer.

[in] sourceEmissiveBuffer

- The EmissiveBuffer to copy from.


Enlighten::IncidentLightingBuffer *GEO_CALL Enlighten::CopyIncidentLightingBuffer


public: Enlighten::IncidentLightingBuffer *GEO_CALL CopyIncidentLightingBuffer
(
    const Enlighten::InputWorkspace * inputWorkspace,
    const Enlighten::IncidentLightingBuffer * sourceIncidentLightingBuffer
)


Copy an IncidentLightingBuffer object.

Parameters
[in] inputWorkspace

- The Inputworkspace to use to create the input lighting buffer.

[in] sourceIncidentLightingBuffer

- TheIncidentLightingBuffer to copy from.


Enlighten::InputLightingBuffer *GEO_CALL Enlighten::CopyInputLightingBuffer


public: Enlighten::InputLightingBuffer *GEO_CALL CopyInputLightingBuffer
(
    const Enlighten::InputWorkspace * inputWorkspace,
    const Enlighten::InputLightingBuffer * sourceInputLightingBuffer
)


Copy an InputLightingBuffer object.

Parameters
[in] inputWorkspace

- The Inputworkspace to use to create the input lighting buffer.

[in] sourceInputLightingBuffer

- The InputLightingBuffer to copy from.


void GEO_CALL Enlighten::CopyRadCubeMapCore


public: void GEO_CALL CopyRadCubeMapCore
(
    const Enlighten::RadCubeMapCore * from,
    Enlighten::RadCubeMapCore * to
)


Copies a RadCubeMapCore.

Parameters
[in] from

- The core to copy from.

[in] to

- The core to copy to.


void GEO_CALL Enlighten::CopyRadSystemCore


public: void GEO_CALL CopyRadSystemCore
(
    const Enlighten::RadSystemCore * from,
    Enlighten::RadSystemCore * to
)


Copies a RadSystemCore.

Parameters
[in] from

- The core to copy from.

[in] to

- The core to copy to.


void GEO_CALL Enlighten::DeleteAlbedoBuffer


public: void GEO_CALL DeleteAlbedoBuffer
(
    Enlighten::AlbedoBuffer *& albedoBuffer
)


Free an AlbedoBuffer object, and all the memory it owns.

Parameters
[in] albedoBuffer

- The AlbedoBuffer to free.


void GEO_CALL Enlighten::DeleteClusterAlbedoWorkspaceMaterialData


public: void GEO_CALL DeleteClusterAlbedoWorkspaceMaterialData
(
    Enlighten::ClusterAlbedoWorkspaceMaterialData *& materialData
)


Free an ClusterAlbedoWorkspaceMaterialData object, and all the memory (RadDataBlocks) it owns.

This is intended to be used to delete objects created with one of the ReadCluster* functions.

Parameters
[in] materialData

- The ClusterAlbedoWorkspaceMaterialData to free.


void GEO_CALL Enlighten::DeleteDynamicMaterialWorkspace


public: void GEO_CALL DeleteDynamicMaterialWorkspace
(
    Enlighten::DynamicMaterialWorkspace *& materialWorkspace
)


Free an DynamicMaterialWorkspace object, and all the memory it owns.

Parameters
[in] materialWorkspace

- The DynamicMaterialWorkspace to free.


void GEO_CALL Enlighten::DeleteEmissiveBuffer


public: void GEO_CALL DeleteEmissiveBuffer
(
    Enlighten::EmissiveBuffer *& emissiveBuffer
)


Free an EmissiveBuffer object, and all the memory it owns.

Parameters
[in] emissiveBuffer

- The EmissiveBuffer to free.


void GEO_CALL Enlighten::DeleteIncidentLightingBuffer


public: void GEO_CALL DeleteIncidentLightingBuffer
(
    Enlighten::IncidentLightingBuffer *& incidentLightingBuffer
)


Free an IncidentLightingBuffer object, and all the memory it owns.

Parameters
[in] incidentLightingBuffer

- The IncidentLightingBuffer to free.


void GEO_CALL Enlighten::DeleteInputLightingBuffer


public: void GEO_CALL DeleteInputLightingBuffer
(
    Enlighten::InputLightingBuffer *& inputLightingBuffer
)


Free an InputLightingBuffer object, and all the memory it owns.

Parameters
[in] inputLightingBuffer

- The InputLightingBuffer to free.


void GEO_CALL Enlighten::DeleteInputWorkspace


public: void GEO_CALL DeleteInputWorkspace
(
    Enlighten::InputWorkspace *& inputWorkspace
)


Free an InputWorkspace object, and all the memory (RadDataBlocks) it owns.

Parameters
[in] inputWorkspace

- The InputWorkspace to free.


void GEO_CALL Enlighten::DeletePrecomputedVisibilityData


public: void GEO_CALL DeletePrecomputedVisibilityData
(
    Enlighten::PrecomputedVisibilityData *& visibilityData
)


Free a PrecomputedVisibilityData object, and all the memory (RadDataBlocks) it owns.

Parameters
[in] visibilityData

- The PrecomputedVisibilityData to free.


void GEO_CALL Enlighten::DeleteRadCubeMapCore


public: void GEO_CALL DeleteRadCubeMapCore
(
    Enlighten::RadCubeMapCore *& cubeMapCore
)


Free a RadCubeMapCore object, and all the memory (RadDataBlocks) it owns.

Parameters
[in] cubeMapCore

- The RadCubeMapCore to free.


void GEO_CALL Enlighten::DeleteRadProbeSetCore


public: void GEO_CALL DeleteRadProbeSetCore
(
    Enlighten::RadProbeSetCore *& probeSet
)


Free a RadProbeSetCore object, and all the memory (RadDataBlocks) it owns.

Parameters
[in] probeSet

- The RadProbeSetCore to free.


void GEO_CALL Enlighten::DeleteRadSystemCore


public: void GEO_CALL DeleteRadSystemCore
(
    Enlighten::RadSystemCore *& system
)


Free a RadSystemCore object, and all the memory (RadDataBlocks) it owns.

Parameters
[in] system

- The RadSystemCore to free.


void GEO_CALL Enlighten::DeleteTransparencyBuffer


public: void GEO_CALL DeleteTransparencyBuffer
(
    Enlighten::TransparencyBuffer *& transparencyBuffer
)


Free a TransparencyBuffer object, and all the memory it owns.

Parameters
[in] transparencyBuffer

- The TransparencyBuffer to free.


void GEO_CALL Enlighten::FreeDataBlockContents


public: void GEO_CALL FreeDataBlockContents
(
    RadDataBlock * block
)


Free a RadDataBlock object, and all the memory it owns.


const char* Enlighten::GetSolverSuffix


public: const char * GetSolverSuffix
(
    eSolverType solverType
)


Defines a platform specific extension for some files, such as the InputWorkspace, that differ in content between platforms.


Enlighten::AlbedoBuffer *GEO_CALL Enlighten::ReadAlbedoBuffer


public: Enlighten::AlbedoBuffer *GEO_CALL ReadAlbedoBuffer
(
    Geo::IGeoInputStream & stream
)


Read an AlbedoBuffer from a stream.

Parameters
[in] stream

- The Geo::IGeoStream to read.


Enlighten::AlbedoBuffer *GEO_CALL Enlighten::ReadAlbedoBufferInPlace


public: AlbedoBuffer *GEO_CALL ReadAlbedoBufferInPlace
(
    char * data,
    size_t size
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


Enlighten::ClusterAlbedoWorkspaceMaterialData *GEO_CALL Enlighten::ReadClusterAlbedoWorkspaceMaterialData


public: Enlighten::ClusterAlbedoWorkspaceMaterialData *GEO_CALL ReadClusterAlbedoWorkspaceMaterialData
(
    Geo::IGeoInputStream & stream,
    Geo::u32 sections
)


Read an ClusterAlbedoWorkspaceMaterialData from a stream.

Parameters
[in] stream

- The Geo::IGeoStream to read.

[in] sections

- Which of the optional data blocks to allocate and read. Pass 0 to load no optional data, or Enlighten::Iff::ClusterAlbedoWorkspaceMaterialGuidsSection to load the optional material guids data

Returns

Non-null if successful - remember to delete the pointer using DeleteClusterAlbedoWorkspaceMaterialData.


Enlighten::ClusterAlbedoWorkspaceMaterialData *GEO_CALL Enlighten::ReadClusterAlbedoWorkspaceMaterialDataFromFile


public: Enlighten::ClusterAlbedoWorkspaceMaterialData *GEO_CALL ReadClusterAlbedoWorkspaceMaterialDataFromFile
(
    const char * filename,
    Geo::u32 sections
)


Read an ClusterAlbedoWorkspaceMaterialData from file.

Parameters
[in] filename

- The name of the file to read.

[in] sections

- Which of the optional data blocks to allocate and read. Pass 0 to load no optional data, or Enlighten::Iff::ClusterAlbedoWorkspaceMaterialGuidsSection to load the optional material guids data

Returns

Non-null if successful - remember to delete the pointer using DeleteClusterAlbedoWorkspaceMaterialData.


ClusterAlbedoWorkspaceMaterialData *GEO_CALL Enlighten::ReadClusterAlbedoWorkspaceMaterialDataInPlace


public: ClusterAlbedoWorkspaceMaterialData *GEO_CALL ReadClusterAlbedoWorkspaceMaterialDataInPlace
(
    char * data,
    size_t size
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


void GEO_CALL Enlighten::ReadDataBlock


public: void GEO_CALL ReadDataBlock
(
    RadDataBlock * block,
    Geo::IGeoInputStream & stream
)


Read a RadDataBlock from a Geo::IGeoInputStream. Will return an object that should be released with FreeDataBlockContents().

Always returns a relocatable data block.


void Enlighten::ReadDataBlockInPlace


public: void ReadDataBlockInPlace
(
    RadDataBlock & block,
    char *& ptr
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


Enlighten::DynamicMaterialWorkspace *GEO_CALL Enlighten::ReadDynamicMaterialWorkspace


public: Enlighten::DynamicMaterialWorkspace *GEO_CALL ReadDynamicMaterialWorkspace
(
    Geo::IGeoInputStream & stream
)


Read an DynamicMaterialWorkspace from a stream.

Parameters
[in] stream

- The Geo::IGeoStream to read.


Enlighten::DynamicMaterialWorkspace *GEO_CALL Enlighten::ReadDynamicMaterialWorkspaceInPlace


public: DynamicMaterialWorkspace *GEO_CALL ReadDynamicMaterialWorkspaceInPlace
(
    char * data,
    size_t size
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


Enlighten::EmissiveBuffer *GEO_CALL Enlighten::ReadEmissiveBuffer


public: Enlighten::EmissiveBuffer *GEO_CALL ReadEmissiveBuffer
(
    Geo::IGeoInputStream & stream
)


Read an EmissiveBuffer from a stream.

Parameters
[in] stream

- The Geo::IGeoStream to read.


Enlighten::EmissiveBuffer *GEO_CALL Enlighten::ReadEmissiveBufferInPlace


public: EmissiveBuffer *GEO_CALL ReadEmissiveBufferInPlace
(
    char * data,
    size_t size
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


Enlighten::IncidentLightingBuffer *GEO_CALL Enlighten::ReadIncidentLightingBuffer


public: Enlighten::IncidentLightingBuffer *GEO_CALL ReadIncidentLightingBuffer
(
    Geo::IGeoInputStream & stream
)


Read an IncidentLightingBuffer from a stream.

Parameters
[in] stream

- The Geo::IGeoStream to read.


Enlighten::IncidentLightingBuffer *GEO_CALL Enlighten::ReadIncidentLightingBufferInPlace


public: IncidentLightingBuffer *GEO_CALL ReadIncidentLightingBufferInPlace
(
    char * data,
    size_t size
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


Enlighten::InputLightingBuffer *GEO_CALL Enlighten::ReadInputLightingBuffer


public: Enlighten::InputLightingBuffer *GEO_CALL ReadInputLightingBuffer
(
    Geo::IGeoInputStream & stream
)


Read an InputLightingBuffer from a stream.

Parameters
[in] stream

- The Geo::IGeoStream to read.


Enlighten::InputLightingBuffer *GEO_CALL Enlighten::ReadInputLightingBufferInPlace


public: InputLightingBuffer *GEO_CALL ReadInputLightingBufferInPlace
(
    char * data,
    size_t size
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


Enlighten::InputWorkspace *GEO_CALL Enlighten::ReadInputWorkspace


public: Enlighten::InputWorkspace *GEO_CALL ReadInputWorkspace
(
    Geo::IGeoInputStream & stream,
    Geo::u32 sections
)


Read an InputWorkspace from a stream.

Parameters
[in] stream

- The Geo::IGeoStream to read.

[in] sections

- Which of the optional data blocks to allocate and read. Pass 0 to load no optional data, or Enlighten::Iff::DynamicInputWorkspaceDataSection to load the optional dynamic data and/or Enlighten::Iff::ProjectedPointsInputWorkspaceDataSection to load the optional duster projection data and/or Enlighten::Iff::HighQualityBounceCoordinateDataSection to load the optional high quality bounce data

Returns

Non-null if successful - you must delete the pointer using DeleteInputWorkspace.


Enlighten::InputWorkspace *GEO_CALL Enlighten::ReadInputWorkspaceFromFile


public: Enlighten::InputWorkspace *GEO_CALL ReadInputWorkspaceFromFile
(
    const char * filename,
    Geo::u32 sections
)


Read an InputWorkspace from file.

Parameters
[in] filename

- The name of the file to read.

[in] sections

- Which of the optional data blocks to allocate and read. Pass 0 to load no optional data, or Enlighten::Iff::DynamicInputWorkspaceDataSection to load the optional dynamic data and/or Enlighten::Iff::ProjectedPointsInputWorkspaceDataSection to load the optional duster projection data and/or Enlighten::Iff::HighQualityBounceCoordinateDataSection to load the optional high quality bounce data


InputWorkspace *GEO_CALL Enlighten::ReadInputWorkspaceInPlace


public: InputWorkspace *GEO_CALL ReadInputWorkspaceInPlace
(
    char * data,
    size_t size
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


void GEO_CALL Enlighten::ReadOptionalDataBlock


public: void GEO_CALL ReadOptionalDataBlock
(
    RadDataBlock * dataBlock,
    Geo::IGeoInputStream & stream,
    Geo::u32 sections,
    Geo::u32 optionalBlock
)


Read or skip a RadDataBlock in a Geo::IGeoInputStream, depending on the sections requested and the id of the block.


Enlighten::PrecomputedVisibilityData *GEO_CALL Enlighten::ReadPrecomputedVisibilityData


public: Enlighten::PrecomputedVisibilityData *GEO_CALL ReadPrecomputedVisibilityData
(
    Geo::IGeoInputStream & stream
)


Read a PrecomputedVisibilityData struct from a stream.

Parameters
[in] stream

- The Geo::IGeoStream to read


Enlighten::PrecomputedVisibilityData *GEO_CALL Enlighten::ReadPrecomputedVisibilityDataFromFile


public: Enlighten::PrecomputedVisibilityData *GEO_CALL ReadPrecomputedVisibilityDataFromFile
(
    const char * filename
)


Read a PrecomputedVisibilityData struct from a file.

Parameters
[in] filename

- The name of the file to read


PrecomputedVisibilityData *GEO_CALL Enlighten::ReadPrecomputedVisibilityDataInPlace


public: PrecomputedVisibilityData *GEO_CALL ReadPrecomputedVisibilityDataInPlace
(
    char * data,
    size_t size
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::ReadProbeTaskOutput


public: bool GEO_CALL ReadProbeTaskOutput
(
    Enlighten::RadProbeTask * probeTask,
    Geo::IGeoInputStream & stream
)


Read the RadProbeTask results data from a file/stream.

Note

The caller takes ownership of the loaded data, which includes deleting m_NumIndexesToSolve, m_OutputPointers and m_OutputPointers[0] (which is the main block of floats)


bool GEO_CALL Enlighten::ReadProbeTaskOutputFromFile


public: bool GEO_CALL ReadProbeTaskOutputFromFile
(
    Enlighten::RadProbeTask * probeTask,
    const char * filename
)


Read the RadProbeTask results data from a file/stream.

Note

The caller takes ownership of the loaded data, which includes deleting m_NumIndexesToSolve, m_OutputPointers and m_OutputPointers[0] (which is the main block of floats)


Enlighten::RadCubeMapCore *GEO_CALL Enlighten::ReadRadCubeMapCore


public: Enlighten::RadCubeMapCore *GEO_CALL ReadRadCubeMapCore
(
    Geo::IGeoInputStream & stream
)


Read a RadCubeMapCore from a stream.

The data is written in little-endian format, so the loading code must handle this.

Parameters
[in] stream

- The Geo::IGeoStream to read.

Returns

Non-null if successful - you must delete the pointer using DeleteRadCubeMapCore.

Note

the RadDataBlock contained within the returned RadCubeMapCore is always relocatable after load.


Enlighten::RadCubeMapCore *GEO_CALL Enlighten::ReadRadCubeMapCoreFromFile


public: Enlighten::RadCubeMapCore *GEO_CALL ReadRadCubeMapCoreFromFile
(
    const char * filename
)


Read a RadCubeMapCore from file.

The files are written in target-endian format, so the same loading code works for all platforms.

Parameters
[in] filename

- The name of the file to read.

Returns

Non-null if successful - you must delete the pointer using DeleteRadCubeMapCore.

Note

the RadDataBlock contained within the returned RadCubeMapCore is always relocatable after load.


RadCubeMapCore *GEO_CALL Enlighten::ReadRadCubeMapCoreInPlace


public: RadCubeMapCore *GEO_CALL ReadRadCubeMapCoreInPlace
(
    char * data,
    size_t size
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


RadProbeSetCore *GEO_CALL Enlighten::ReadRadProbeSetCore


public: Enlighten::RadProbeSetCore *GEO_CALL ReadRadProbeSetCore
(
    Geo::IGeoInputStream & stream,
    Geo::u32 sections
)


Read run-time probeset data from a file.

The files are written in target-endian format, so the same loading code works for all platforms.

Parameters
[in] stream

- The Geo::IGeoStream to read

[in] sections

- Pass 0 to load no optional data or any combination of the following: Enlighten::Iff::ProbeSetPrecompSection Enlighten::Iff::EntireProbeSetPrecompSection Enlighten::Iff::ProbeSetInterpolationDataSection Enlighten::Iff::ProbeSetVisibilityDataSection Enlighten::Iff::ProbeSetDebugDataSection

Returns

Non-null if successful - you must delete the pointer using DeleteRadProbeSetCore.

Note

the returned RadDataBlock is always relocatable.


RadProbeSetCore *GEO_CALL Enlighten::ReadRadProbeSetCoreFromFile


public: Enlighten::RadProbeSetCore *GEO_CALL ReadRadProbeSetCoreFromFile
(
    const char * filename,
    Geo::u32 sections
)


Read run-time probe set data from a file.

The files are written in target-endian format, so the same loading code works for all platforms. Note this doesn't do any endian swapping. It assumes you are reading/writing the file on the same platform.

Parameters
[in] filename

- The name of the file to read

[in] sections

- Pass 0 to load no optional data or any combination of the following: Enlighten::Iff::ProbeSetPrecompSection Enlighten::Iff::EntireProbeSetPrecompSection Enlighten::Iff::ProbeSetInterpolationDataSection Enlighten::Iff::ProbeSetVisibilityDataSection Enlighten::Iff::ProbeSetDebugDataSection

Returns

Non-null if successful - you must delete the pointer using DeleteRadProbeSetCore.

Note

the returned RadDataBlock is always relocatable.


RadProbeSetCore *GEO_CALL Enlighten::ReadRadProbeSetCoreInPlace


public: RadProbeSetCore *GEO_CALL ReadRadProbeSetCoreInPlace
(
    char * data,
    size_t size
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


RadSystemCore *GEO_CALL Enlighten::ReadRadSystemCore


public: Enlighten::RadSystemCore *GEO_CALL ReadRadSystemCore
(
    Geo::IGeoInputStream & stream,
    Geo::u32 sections
)


Read a RadSystemCore from a stream.

The data is written in little-endian format, so the loading code must handle this.

Parameters
[in] stream

- The Geo::IGeoInputStream to read.

[in] sections

- Which of the optional data blocks to allocate and read. Pass 0 to load no optional data, or a combination of Enlighten::Iff::ProjectionDataSection and/or Enlighten::Iff::DynamicRadiosityDataSection

Returns

Non-null if successful - you must delete the pointer using DeleteRadSystemCore.

Note

the RadDataBlock contained within the returned RadSystemCore is always relocatable after load.


RadSystemCore *GEO_CALL Enlighten::ReadRadSystemCoreFromFile


public: Enlighten::RadSystemCore *GEO_CALL ReadRadSystemCoreFromFile
(
    const char * filename,
    Geo::u32 sections
)


Read a RadSystemCore from file.

The files are written in target-endian format, so the same loading code works for all platforms.

Parameters
[in] filename

- The name of the file to read.

[in] sections

- Which of the optional data blocks to allocate and read. Pass 0 to load no optional data, or a combination of Enlighten::Iff::ProjectionDataSection and/or Enlighten::Iff::DynamicRadiosityDataSection

Returns

Non-null if successful - you must delete the pointer using DeleteRadSystemCore.

Note

the RadDataBlock contained within the returned RadSystemCore is always relocatable after load.


RadSystemCore *GEO_CALL Enlighten::ReadRadSystemCoreInPlace


public: RadSystemCore *GEO_CALL ReadRadSystemCoreInPlace
(
    char * data,
    size_t Size
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::ReadRadTaskOutput


public: bool GEO_CALL ReadRadTaskOutput
(
    Geo::s32 & outputWidth,
    Geo::s32 & outputHeight,
    eOutputFormat & outputFormat,
    eOutputFormatByteOrder & outputFormatByteOrder,
    void * irradianceOutput64,
    void * irradianceOutput32,
    void * directionalOutput,
    Geo::IGeoInputStream & stream
)


Read the RadIrradianceTask results data from a file/stream.

Note

If the output width or height are set to zero, then only the header of the file is read, and the width, height outputFormat and outputFormatByteOrder are filled in. The function then returns true. If the output size is non-zero, the function assumes that the various output pointers are large enough to hold the incoming data. In general, users should not have to call these functions in their integration.

Parameters
[out] outputWidth

- The width of the output texture

[out] outputHeight

- The height of the output texture

[out] outputFormat

- The format of the output texture

[out] outputFormatByteOrder

- The byte order of the LRB irradiance/directional output texture

[in] irradianceOutput64

- pointer large enough to hold 64-bit-per-pixel output data (e.g. FP16). Pass NULL if not required

[in] irradianceOutput32

- pointer large enough to hold 32-bit-per-pixel output data (e.g. LRB). Pass NULL if not required

[in] directionalOutput

- pointer large enough to hold directional output data. Pass NULL if not required

[in] stream

- The file stream from which to read the rad task data from


bool GEO_CALL Enlighten::ReadRadTaskOutputFromFile


public: bool GEO_CALL ReadRadTaskOutputFromFile
(
    Geo::s32 & outputWidth,
    Geo::s32 & outputHeight,
    eOutputFormat & outputFormat,
    eOutputFormatByteOrder & outputFormatByteOrder,
    void * irradianceOutput64,
    void * irradianceOutput32,
    void * directionalOutput,
    const char * filename
)


Read the RadIrradianceTask results data from a file.

Please see ReadRadTaskOutput for details.

Parameters
[out] outputWidth

- The width of the output texture

[out] outputHeight

- The height of the output texture

[out] outputFormat

- The format of the output texture

[out] outputFormatByteOrder

- The byte order of the LRB irradiance/directional output texture

[in] irradianceOutput64

- pointer large enough to hold 64-bit-per-pixel output data (e.g. FP16). Pass NULL if not required

[in] irradianceOutput32

- pointer large enough to hold 32-bit-per-pixel output data (e.g. LRB). Pass NULL if not required

[in] directionalOutput

- pointer large enough to hold directional output data. Pass NULL if not required

[in] filename

- The name of the rad task output file to read data from


Enlighten::TransparencyBuffer *GEO_CALL Enlighten::ReadTransparencyBufferInPlace


public: TransparencyBuffer *GEO_CALL ReadTransparencyBufferInPlace
(
    char * data,
    size_t size
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


void GEO_CALL Enlighten::SkipDataBlock


public: void GEO_CALL SkipDataBlock
(
    Geo::IGeoInputStream & stream
)


Skip a RadDataBlock in a Geo::IGeoStream. Will advance the stream past a RadDataBlock without reading the contents.


bool GEO_CALL Enlighten::WriteAlbedoBuffer


public: bool GEO_CALL WriteAlbedoBuffer
(
    const Enlighten::AlbedoBuffer * albedoBuffer,
    Geo::IGeoStream & stream
)


Write an AlbedoBuffer to a stream.

Parameters
[in] albedoBuffer

- The AlbedoBuffer to write.

[in] stream

- The Geo::IGeoStream to write.


bool GEO_CALL Enlighten::WriteAlbedoBufferForInPlace


public: bool GEO_CALL WriteAlbedoBufferForInPlace
(
    const AlbedoBuffer * albedoBuffer,
    Geo::IGeoStream & stream,
    Geo::EConvertEndianMode endianMode
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::WriteClusterAlbedoWorkspaceMaterialData


public: bool GEO_CALL WriteClusterAlbedoWorkspaceMaterialData
(
    const Enlighten::ClusterAlbedoWorkspaceMaterialData * materialData,
    Geo::IGeoStream & stream
)


Write an ClusterAlbedoWorkspaceMaterialData to a stream, ready to be loaded on the target platform.

Parameters
[in] materialData

- The ClusterAlbedoWorkspaceMaterialData to write.

[in] stream

- The Geo::IGeoStream to write to.


bool GEO_CALL Enlighten::WriteClusterAlbedoWorkspaceMaterialDataForInPlace


public: bool GEO_CALL WriteClusterAlbedoWorkspaceMaterialDataForInPlace
(
    const ClusterAlbedoWorkspaceMaterialData * materialData,
    Geo::IGeoStream & stream,
    Geo::EConvertEndianMode endianMode
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::WriteClusterAlbedoWorkspaceMaterialDataToFile


public: bool GEO_CALL WriteClusterAlbedoWorkspaceMaterialDataToFile
(
    const Enlighten::ClusterAlbedoWorkspaceMaterialData * materialData,
    const char * filename
)


Write an ClusterAlbedoWorkspaceMaterialData to file, ready to be loaded on the target platform.

Parameters
[in] materialData

- The ClusterAlbedoWorkspaceMaterialData to write.

[in] filename

- The name of the file to write.


bool GEO_CALL Enlighten::WriteDataBlock


public: bool GEO_CALL WriteDataBlock
(
    const RadDataBlock & data,
    Geo::IGeoStream & stream
)


Write a RadDataBlock to a Geo::IGeoStream.


void * Enlighten::WriteDataBlockForInPlace


public: void * WriteDataBlockForInPlace
(
    const RadDataBlock & block,
    char *& ptr
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::WriteDynamicMaterialWorkspace


public: bool GEO_CALL WriteDynamicMaterialWorkspace
(
    const Enlighten::DynamicMaterialWorkspace * materialWorkspace,
    Geo::IGeoStream & stream
)


Write an DynamicMaterialWorkspace to a stream.

Parameters
[in] materialWorkspace

- The DynamicMaterialWorkspace to write.

[in] stream

- The Geo::IGeoStream to write.


bool GEO_CALL Enlighten::WriteDynamicMaterialWorkspaceForInPlace


public: bool GEO_CALL WriteDynamicMaterialWorkspaceForInPlace
(
    const DynamicMaterialWorkspace * workspace,
    Geo::IGeoStream & stream,
    Geo::EConvertEndianMode endianMode
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::WriteEmissiveBuffer


public: bool GEO_CALL WriteEmissiveBuffer
(
    const Enlighten::EmissiveBuffer * emissiveBuffer,
    Geo::IGeoStream & stream
)


Write an EmissiveBuffer to a stream.

Parameters
[in] emissiveBuffer

- The EmissiveBuffer to write.

[in] stream

- The Geo::IGeoStream to write.


bool GEO_CALL Enlighten::WriteEmissiveBufferForInPlace


public: bool GEO_CALL WriteEmissiveBufferForInPlace
(
    const EmissiveBuffer * emissiveBuffer,
    Geo::IGeoStream & stream,
    Geo::EConvertEndianMode endianMode
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::WriteIncidentLightingBuffer


public: bool GEO_CALL WriteIncidentLightingBuffer
(
    const Enlighten::IncidentLightingBuffer * incidentLightingBuffer,
    Geo::IGeoStream & stream
)


Write an IncidentLightingBuffer to a stream.

Parameters
[in] incidentLightingBuffer

- The IncidentLightingBuffer to write.

[in] stream

- The Geo::IGeoStream to write.


bool GEO_CALL Enlighten::WriteIncidentLightingBufferForInPlace


public: bool GEO_CALL WriteIncidentLightingBufferForInPlace
(
    const IncidentLightingBuffer * incidentLightingBuffer,
    Geo::IGeoStream & stream,
    Geo::EConvertEndianMode endianMode
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::WriteInputLightingBuffer


public: bool GEO_CALL WriteInputLightingBuffer
(
    const Enlighten::InputLightingBuffer * inputLightingBuffer,
    Geo::IGeoStream & stream
)


Write an InputLightingBuffer to a stream.

Parameters
[in] inputLightingBuffer

- The InputLightingBuffer to write.

[in] stream

- The Geo::IGeoStream to write.


bool GEO_CALL Enlighten::WriteInputLightingBufferForInPlace


public: bool GEO_CALL WriteInputLightingBufferForInPlace
(
    const InputLightingBuffer * inputLightingBuffer,
    Geo::IGeoStream & stream,
    Geo::EConvertEndianMode endianMode
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::WriteInputLightingBufferToFile


public: bool GEO_CALL WriteInputLightingBufferToFile
(
    const Enlighten::InputLightingBuffer * inputLightingBuffer,
    const char * filename
)


Write an InputLightingBuffer to file.

Parameters
[in] inputLightingBuffer

- The InputLightingBuffer to write.

[in] filename

- The name of the file to write.


bool GEO_CALL Enlighten::WriteInputWorkspace


public: bool GEO_CALL WriteInputWorkspace
(
    const Enlighten::InputWorkspace * inputWorkspace,
    Geo::IGeoStream & stream
)


Write an InputWorkspace to a stream, ready to be loaded on the target platform.

Parameters
[in] inputWorkspace

- The InputWorkspace to write.

[in] stream

- The Geo::IGeoStream to write to.


bool GEO_CALL Enlighten::WriteInputWorkspaceForInPlace


public: bool GEO_CALL WriteInputWorkspaceForInPlace
(
    const InputWorkspace * inputWorkspace,
    Geo::IGeoStream & stream,
    Geo::EConvertEndianMode endianMode
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::WriteInputWorkspaceToFile


public: bool GEO_CALL WriteInputWorkspaceToFile
(
    const Enlighten::InputWorkspace * inputWorkspace,
    const char * filename
)


Write an InputWorkspace to file, ready to be loaded on the target platform.

Parameters
[in] inputWorkspace

- The InputWorkspace to write.

[in] filename

- The name of the file to write.


bool GEO_CALL Enlighten::WritePrecomputedVisibilityData


public: bool GEO_CALL WritePrecomputedVisibilityData
(
    const Enlighten::PrecomputedVisibilityData * visibilityData,
    Geo::IGeoStream & stream
)


Write a PrecomputedVisibilityData structure to a stream.

Parameters
[in] visibilityData

- The PrecomputedVisibilityData structure data to write.

[in] stream

- The Geo::IGeoStream to write.


bool GEO_CALL Enlighten::WritePrecomputedVisibilityDataForInPlace


public: bool GEO_CALL WritePrecomputedVisibilityDataForInPlace
(
    const PrecomputedVisibilityData * visibilityData,
    Geo::IGeoStream & stream,
    Geo::EConvertEndianMode endianMode
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::WritePrecomputedVisibilityDataToFile


public: bool GEO_CALL WritePrecomputedVisibilityDataToFile
(
    const Enlighten::PrecomputedVisibilityData * visibilityData,
    const char * filename
)


Write a PrecomputedVisibilityData structure to a file.

Parameters
[in] visibilityData

- The PrecomputedVisibilityData structure data to write.

[in] filename

- The name of the file to write.


bool GEO_CALL Enlighten::WriteProbeTaskOutput


public: bool GEO_CALL WriteProbeTaskOutput
(
    const Enlighten::RadProbeTask * probeTask,
    Geo::IGeoStream & stream
)


Write the RadProbeTask results data to a file/stream.


bool GEO_CALL Enlighten::WriteProbeTaskOutputToFile


public: bool GEO_CALL WriteProbeTaskOutputToFile
(
    const Enlighten::RadProbeTask * probeTask,
    const char * filename
)


Write the RadProbeTask results data to a file/stream.


bool GEO_CALL Enlighten::WriteRadCubeMapCore


public: bool GEO_CALL WriteRadCubeMapCore
(
    const Enlighten::RadCubeMapCore * cubeMapCore,
    Geo::IGeoStream & stream
)


Write a RadCubeMapCore to a stream, ready to be loaded on the target platform.

Parameters
[in] cubeMapCore

- The RadCubeMapCore to write.

[in] stream

- The Geo::IGeoStream to write to.

Note

the RadDataBlock contained in the RadCubeMapCore must be relocatable for this function to succeed.


bool GEO_CALL Enlighten::WriteRadCubeMapCoreForInPlace


public: bool GEO_CALL WriteRadCubeMapCoreForInPlace
(
    const RadCubeMapCore * cubeMap,
    Geo::IGeoStream & stream,
    Geo::EConvertEndianMode endianMode
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::WriteRadCubeMapCoreToFile


public: bool GEO_CALL WriteRadCubeMapCoreToFile
(
    const Enlighten::RadCubeMapCore * cubeMapCore,
    const char * filename
)


Write a RadCubeMapCore to file, ready to be loaded on the target platform.

Parameters
[in] cubeMapCore

- The RadCubeMapCore to write.

[in] filename

- The name of the file to write.

Note

the RadDataBlock contained in the RadCubeMapCore must be relocatable for this function to succeed.


bool Enlighten::WriteRadIrradianceTaskOutput


public: bool WriteRadIrradianceTaskOutput
(
    const RadIrradianceTask * task,
    Geo::IGeoStream & stream
)


Write the RadIrradianceTask results data to a file/stream.


bool Enlighten::WriteRadIrradianceTaskOutputToFile


public: bool WriteRadIrradianceTaskOutputToFile
(
    const RadIrradianceTask * task,
    const char * filename
)


Write the RadIrradianceTask results data to a file/stream.


bool GEO_CALL Enlighten::WriteRadProbeSetCore


public: bool GEO_CALL WriteRadProbeSetCore
(
    const Enlighten::RadProbeSetCore * probeSet,
    Geo::IGeoStream & stream
)


Write run-time probeset data to a stream, ready to be loaded on the target platform.

Parameters
[in] probeSet

- The probe set data to write.

[in] stream

- The Geo::IGeoStream to write.

Note

the RadDataBlock must be relocatable for this function to succeed.


bool GEO_CALL Enlighten::WriteRadProbeSetCoreForInPlace


public: bool GEO_CALL WriteRadProbeSetCoreForInPlace
(
    const RadProbeSetCore * probeSet,
    Geo::IGeoStream & stream,
    Geo::EConvertEndianMode endianMode
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::WriteRadProbeSetCoreToFile


public: bool GEO_CALL WriteRadProbeSetCoreToFile
(
    const Enlighten::RadProbeSetCore * probeSet,
    const char * filename
)


Write run-time probeset data to file, ready to be loaded on the target platform.

The data is written in little-endian format, so the loading code must handle this.

Parameters
[in] probeSet

- The probe set data to write.

[in] filename

- The name of the file to write.

Note

the RadDataBlock must be relocatable for this function to succeed.


bool GEO_CALL Enlighten::WriteRadSystemCore


public: bool GEO_CALL WriteRadSystemCore
(
    const Enlighten::RadSystemCore * system,
    Geo::IGeoStream & stream
)


Write a RadSystemCore to a stream, ready to be loaded on the target platform.

Parameters
[in] system

- The RadSystemCore to write.

[in] stream

- The Geo::IGeoStream to write to.

Note

the RadDataBlock contained in the RadSystemCore must be relocatable for this function to succeed.


bool GEO_CALL Enlighten::WriteRadSystemCoreForInPlace


public: bool GEO_CALL WriteRadSystemCoreForInPlace
(
    const RadSystemCore * system,
    Geo::IGeoStream & stream,
    Geo::EConvertEndianMode endianMode
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.


bool GEO_CALL Enlighten::WriteRadSystemCoreToFile


public: bool GEO_CALL WriteRadSystemCoreToFile
(
    const Enlighten::RadSystemCore * system,
    const char * filename
)


Write a RadSystemCore to file, ready to be loaded on the target platform.

Parameters
[in] system

- The RadSystemCore to write.

[in] filename

- The name of the file to write.

Note

the RadDataBlock contained in the RadSystemCore must be relocatable for this function to succeed.


bool GEO_CALL Enlighten::WriteTransparencyBufferForInPlace


public: bool GEO_CALL WriteTransparencyBufferForInPlace
(
    const TransparencyBuffer * transparencyBuffer,
    Geo::IGeoStream & stream,
    Geo::EConvertEndianMode endianMode
)


These utilities perform in-place fixup of the various enlighten data structures.

Make sure any buffers passed to Read*InPlace functions are 16 byte aligned.