class
#include <Spore/App/IPropManager.h>
IPropManager A manager that stores all the property lists in the game, used for most configurations.
Contents
Property lists (.prop
files) are simple instances of the class PropertyList that contains properties. This is used for configuring most objects and things in the game.
A property manager can also contain definitions for properties, which are stored in the Properties.txt
and AppProperties.txt
files.
Derived classes
- class cPropManager
- The implementation of IPropManager; this should only be used for extending and detouring.
Public static functions
- static auto Get() -> IPropManager*
- Returns the object that is the currently active property manager.
Public functions
- auto AddRef() -> int pure virtual
- auto Release() -> int pure virtual
- void SetDevMode(bool value) pure virtual
- auto Initialize() -> bool pure virtual
- void PreloadPropertyLists() pure virtual
- auto Dispose() -> bool pure virtual
- auto GetIDFromName(const char* propertyName, uint32_t& result) -> bool pure virtual
- Gets the ID that corresponds to the given property name.
- auto GetNameFromID(uint32_t propertyID) -> const char* pure virtual
- Gets the name that is mapped to the given propertyID.
- auto GetPropertyGroupIDFromName(const char* name, uint32_t& result) -> bool pure virtual
- auto GetNameFromPropertyGroupID(uint32_t propertyGroupID) -> const char* pure virtual
- Gets the name assigned to the given property group ID.
- auto HasPropertyList(uint32_t instanceID, uint32_t groupID) -> bool pure virtual
- Tells whether a PropertyList with the given instanceID and groupID is contained in this manager.
- auto GetPropertyList(uint32_t instanceID, uint32_t groupID, PropertyListPtr& pDst) -> bool pure virtual
- Gets the PropertyList stored in the given group and with the given instanceID.
- auto GetGlobalPropertyList(uint32_t instanceID, PropertyListPtr& pDst) -> bool pure virtual
- Gets the PropertyList stored in the global (0x00000000) folder and with the given instanceID.
- void AddPropertyList(PropertyList* pList, uint32_t instanceID, uint32_t groupID) pure virtual
- Adds this property list with the given instance and group ID, or replaces the existing one.
- void RemovePropertyList(PropertyList* pList) pure virtual
- void RemovePropertyLists(int count, const ResourceKey* keys) pure virtual
- void RemovePropertyLists2(uint32_t groupID, int count, uint32_t* instanceIDs) pure virtual
- auto AreAnyPropertyListsReferenced(int count, const ResourceKey* keys) -> bool pure virtual
- auto GetPropertyListIDs(uint32_t groupID, eastl::vector<uint32_t>& result) -> bool pure virtual
- Gets the instance IDs of all the PropertyList objects contained in the specified group.
- auto func4Ch(int arg_0, int arg_4) -> void* pure virtual
- auto GetPropertyDefinition(uint32_t propertyID) -> const Property* pure virtual
- Gets the property definition of the property with the given ID.
- auto GetPropertyGroupsCount() -> size_t pure virtual
- Gets the number of property groups contained in this manager.
- auto GetPropertyGroupIDAt(size_t index, uint32_t& dst) -> bool pure virtual
- Gets the ID of the property group at the given index.
Function documentation
bool App:: IPropManager:: GetIDFromName(const char* propertyName,
uint32_t& result) pure virtual
Gets the ID that corresponds to the given property name.
Parameters | |
---|---|
propertyName | The name of the property. |
result out | The uint32_t that will receive the ID. |
Returns | Whether the name was found or not. |
This function will only work for those names that are mapped in this manager.
const char* App:: IPropManager:: GetNameFromID(uint32_t propertyID) pure virtual
Gets the name that is mapped to the given propertyID.
Parameters | |
---|---|
propertyID | The ID of the property. |
Returns | The name of the property, or nullptr if it is not mapped. |
This function will only work for those names that are mapped in this manager.
const char* App:: IPropManager:: GetNameFromPropertyGroupID(uint32_t propertyGroupID) pure virtual
Gets the name assigned to the given property group ID.
Parameters | |
---|---|
propertyGroupID | The ID of the property group. |
Returns | The name of the group, or nullptr if it is not mapped. |
This function will only work if that group is mapped in this manager.
bool App:: IPropManager:: HasPropertyList(uint32_t instanceID,
uint32_t groupID) pure virtual
Tells whether a PropertyList with the given instanceID and groupID is contained in this manager.
Parameters | |
---|---|
instanceID | The instance ID of the list. |
groupID | The group ID of the list. |
Returns | True if the list exists, false otherwise. |
bool App:: IPropManager:: GetPropertyList(uint32_t instanceID,
uint32_t groupID,
PropertyListPtr& pDst) pure virtual
Gets the PropertyList stored in the given group and with the given instanceID.
Parameters | |
---|---|
instanceID | The instance ID of the list. |
groupID | The group ID of the list. |
pDst | A PropertyListPtr that will receive the list. It must not be initialized or contain nullptr; the previous pointer won't be released. |
Returns | Whether the list was found or not. |
bool App:: IPropManager:: GetGlobalPropertyList(uint32_t instanceID,
PropertyListPtr& pDst) pure virtual
Gets the PropertyList stored in the global (0x00000000) folder and with the given instanceID.
Parameters | |
---|---|
instanceID | The instance ID of the list. |
pDst | An PropertyListPtr that will receive the list. It must not be initialized or contain nullptr; the previous pointer won't be released. |
Returns | Whether the list was found or not. |
void App:: IPropManager:: AddPropertyList(PropertyList* pList,
uint32_t instanceID,
uint32_t groupID) pure virtual
Adds this property list with the given instance and group ID, or replaces the existing one.
Parameters | |
---|---|
pList | The new PropertyList. |
instanceID | The instance ID of the property list. |
groupID | The group ID of the property list. |
bool App:: IPropManager:: GetPropertyListIDs(uint32_t groupID,
eastl::vector<uint32_t>& result) pure virtual
Gets the instance IDs of all the PropertyList objects contained in the specified group.
Parameters | |
---|---|
groupID | The ID of the group where the lists are (i.e. the folder) |
result out | A uint32_t vector that will receive the instance IDs. |
const Property* App:: IPropManager:: GetPropertyDefinition(uint32_t propertyID) pure virtual
Gets the property definition of the property with the given ID.
Parameters | |
---|---|
propertyID | The ID of the property. |
Returns | The Property that contains the type and default value, or nullptr if there is no definition for that property. |
The definition is a Property object that contains the type and default value of the property. Definitions are stored in the Properties.txt, AppProperties.txt, etc files.
bool App:: IPropManager:: GetPropertyGroupIDAt(size_t index,
uint32_t& dst) pure virtual
Gets the ID of the property group at the given index.
Parameters | |
---|---|
index | The index of the group inside this manager. |
dst out | The uint32_t that will receive the ID. |
Returns | Whether the index was valid or not. |