class Enlighten::IPrecompInputSystem
└>Geo::IGeoSerialisable
└>Geo::IGeoReleasable
Handle to the InputSystem.
Functions
Name | Description |
---|---|
AddInstances(const PrecompInputInstance *, const PrecompInputInstance *) | Copy instances between [begin, end) into this object. |
ClearAllMaterialInfo() | Clears all existing material properties for this system. |
Create() | Create a new IPrecompInputSystem. |
GetBuildParameters() | Get the build parameters for this system. |
GetBuildParameters() | Get the build parameters for this system. |
GetId() | Returns the globally unique ID of this system. |
GetInstanceArray() | Access to the array of input instances. |
GetInstanceCount() | Retrieves the number of object instances in the system. |
GetMaterialInfo(Geo::GeoGuid, Geo::GeoGuid, Geo::GeoGuid, PrecompMaterialInfo &) | Retrieves the material properties that will be used for the given combination of instance, mesh and material GUID. |
GetName() | Returns the globally unique name of this system. |
Load(IGeoInputStream &, Geo::u32) | Load an instance of this class from an IGeoInputStream. |
Release() | Free this object that was created within the Enlighten libraries. |
Save(IGeoStream &, Geo::u32) | Save an instance of this class to an IGeoStream. |
SetId(Geo::GeoGuid) | Sets the globally unique ID of this system. |
SetMaterialInfo(Geo::GeoGuid, Geo::GeoGuid, Geo::GeoGuid, const PrecompMaterialInfo &) | Sets material properties for the given combination of instance, mesh and material GUIDs. |
SetName(const char *) | Sets the globally unique name of this system. |
virtual bool Enlighten::IPrecompInputSystem::AddInstances
public: bool AddInstances
(
const PrecompInputInstance * begin,
const PrecompInputInstance * end
)
Copy instances between [begin, end) into this object.
Parameters
[in] | begin | A pointer to the first element to be added |
[in] | end | A pointer to an element one past the last entity (as standard STL syntax) |
Returns
True if operation succeeded, false if there was not enough memory to satisfy request
virtual void Enlighten::IPrecompInputSystem::ClearAllMaterialInfo
public: void ClearAllMaterialInfo()
Clears all existing material properties for this system.
static IPrecompInputSystem* Enlighten::IPrecompInputSystem::Create
public: IPrecompInputSystem * Create()
Create a new IPrecompInputSystem.
virtual IPrecompBuildParameters* Enlighten::IPrecompInputSystem::GetBuildParameters
public: IPrecompBuildParameters * GetBuildParameters()
Get the build parameters for this system.
virtual const IPrecompBuildParameters* Enlighten::IPrecompInputSystem::GetBuildParameters
public: const IPrecompBuildParameters * GetBuildParameters() const
Get the build parameters for this system.
virtual Geo::GeoGuid Enlighten::IPrecompInputSystem::GetId
public: Geo::GeoGuid GetId() const
Returns the globally unique ID of this system.
virtual const PrecompInputInstance* Enlighten::IPrecompInputSystem::GetInstanceArray
public: const PrecompInputInstance * GetInstanceArray() const
Access to the array of input instances.
virtual Geo::s32 Enlighten::IPrecompInputSystem::GetInstanceCount
public: Geo::s32 GetInstanceCount() const
Retrieves the number of object instances in the system.
virtual void Enlighten::IPrecompInputSystem::GetMaterialInfo
public: void GetMaterialInfo
(
Geo::GeoGuid instanceGuid,
Geo::GeoGuid meshGuid,
Geo::GeoGuid materialGuid,
PrecompMaterialInfo & outMatInfo
) const
Retrieves the material properties that will be used for the given combination of instance, mesh and material GUID.
If a GUID parameter is passed as GeoGuid::Invalid then the resulting material info will be that for any material use which doesn't have that GUID specified. For example, passing GeoGuid::Invalid for the instanceGuid parameter will return the material used for any instances which don't have a GUID specified.
virtual const char* Enlighten::IPrecompInputSystem::GetName
public: const char * GetName() const
Returns the globally unique name of this system.
virtual bool Geo::IGeoSerialisable::Load
public: bool Load
(
IGeoInputStream & stream,
Geo::u32 section
)
Load an instance of this class from an IGeoInputStream.
The stream must be ready to read from. You can load sections of an object by passing a bitmask representing the desired sections rather than Iff::AllSectionsMask, which will load all sections. It is also safe to call this method on an object multiple times with different section arguments to load multiple parts.
virtual void Geo::IGeoReleasable::Release
public: void Release()
Free this object that was created within the Enlighten libraries.
Expect this to behave in a similar way to calling 'delete(this)'
virtual bool Geo::IGeoSerialisable::Save
public: bool Save
(
IGeoStream & stream,
Geo::u32 section
) const
Save an instance of this class to an IGeoStream.
The stream must be ready to write to. You can save sections of an object by passing a bitmask representing the desired sections rather than Iff::AllSectionsMask, which will save all sections that are available.
virtual void Enlighten::IPrecompInputSystem::SetId
public: void SetId
(
Geo::GeoGuid systemId
)
Sets the globally unique ID of this system.
virtual bool Enlighten::IPrecompInputSystem::SetMaterialInfo
public: bool SetMaterialInfo
(
Geo::GeoGuid instanceGuid,
Geo::GeoGuid meshGuid,
Geo::GeoGuid materialGuid,
const PrecompMaterialInfo & matInfo
)
Sets material properties for the given combination of instance, mesh and material GUIDs.
Passing GeoGuid::Invalid to any of the GUID parameters will result in the material properties being set for all material uses of that type. For example passing a specific instance GUID and GeoGuid::Invalid for the the mesh and material GUIDs will set all the materials uses on that instance, regardless of mesh or material. Subsequent calls to SetMaterialInfo will override (wholly or partially) material properties set by previous calls. For example, setting all materials in the entire system (by passing GeoGuid::Invalid for all three GUID params) and then setting a specific material on a specific mesh on a specific instance.
virtual void Enlighten::IPrecompInputSystem::SetName
public: void SetName
(
const char * name
)
Sets the globally unique name of this system.