Spore ModAPI  2.4.0
API for creating C++ mods for Spore
Namespaces | Classes | Typedefs | Enumerations | Functions
App Namespace Reference

This namespace contains basic utilities that allow to properly interact with the app. More...

Namespaces

 SPPropertyIDs
 This namespace only contains property IDs to be used in the AppProperties module.
 

Classes

class  Camera
 
class  cCameraManager
 The implementation of ICameraManager; this should only be used for extending and detouring. More...
 
class  cCheatManager
 The implementation of ICheatManager; this should only be used for extending and detouring. More...
 
class  cGameModeManager
 The implementation of IGameModeManager; this should only be used for extending and detouring. More...
 
class  cMessageManager
 The implementation of IMessageManager; this should only be used for extending and detouring. More...
 
class  cPropManager
 The implementation of IPropManager; this should only be used for extending and detouring. More...
 
class  cViewer
 
class  DefaultCamera
 Defines a default implementation of ICamera. More...
 
class  DefaultGameMode
 A class that provides default implementation for all the methods in a IGameMode. More...
 
class  DefaultMessageListener
 A class that inherits from App::IMessageListener and defines an implementation for the AddRef() and Release() metods. More...
 
class  DirectPropertyList
 A special kind of PropertyList that allows to have fast-access bool/int/float properties, apart from normal properties. More...
 
class  ICamera
 This class represents a camera in the game, capable of setting the view transformations used for rendering and receiving input events. More...
 
class  ICameraManager
 This manager handles the cameras in the game. More...
 
class  ICheatManager
 This manager is used to control the available cheats in the game, and the cheat console. More...
 
class  IClassManager
 
class  IGameMode
 An interface that represents a mode in the game, that can receive mouse/keyboard input and update every frame. More...
 
class  IGameModeManager
 A manager that takes care of game modes; check IGameMode for more information. More...
 
class  IGameModeObject
 Same as App::IGameMode, but this one includes a Cast method similar to the one in the Object class. More...
 
class  IMessageListener
 An interface that can receive messages sent through the app. More...
 
class  IMessageManager
 This manager defines a messaging system, that allows communication between different parts of the code. More...
 
class  IPropManager
 A manager that stores all the property lists in the game, used for most configurations. More...
 
class  ISPClassFactory
 
class  IStateManager
 
class  IUnmanagedMessageListener
 Same as App::IMessageListener, but this one does not use ref-counting. More...
 
class  IUpdatable
 
class  LambdaMessageListener
 An implementation of IMessageListener using lambda functions. More...
 
struct  MessageListenerData
 
class  OnModeExitMessage
 
class  Property
 Property is a class used to represent a property belonging to a PROP file. More...
 
class  PropertyList
 PropertyList: A class that contains multiple properties. More...
 
class  ScenarioMode
 
class  ScheduledTaskListener
 A message listener that, listening to Update messages, executes the given task after a certain time has passed and (optionally) repetaing it periodically. More...
 
class  StandardMessage
 
class  UpdateMessageListener
 A message listener used for Update script methods. More...
 

Typedefs

typedef ICamera *(* CameraFactoryFunction_t) (PropertyList *pPropList)
 Camera types need a static function that creates the correct camera instance. More...
 
typedef OnModeExitMessage OnModeEnterMessage
 
typedef eastl::function< void()> VoidFunction_T
 The type of function used in Update or schedule scripts. More...
 
template<class T >
using VoidMethod_T = void(T::*)()
 The type of member method used in Update or schedule scripts. More...
 

Enumerations

enum  { kMsgAddRef = 1, kMsgRelease = 2, kMsgOnModeExit = 0x212D3E7, kMsgOnModeEnter = 0x22D1ADC }
 
enum  { kMsgAppInitialized = 0x49790B2, kMsgAppUpdate = 0x1EE100A }
 
enum  PropertyType : uint16_t {
  PropertyType::kNone = 0, PropertyType::kBool = 1, PropertyType::kInt32 = 9, PropertyType::kUInt32 = 0x0a,
  PropertyType::kFloat = 0x0d, PropertyType::kString8 = 0x12, PropertyType::kString16 = 0x13, PropertyType::kKey = 0x20,
  PropertyType::kText = 0x22, PropertyType::kVector2 = 0x30, PropertyType::kVector3 = 0x31, PropertyType::kColorRGB = 0x32,
  PropertyType::kVector4 = 0x33, PropertyType::kColorRGBA = 0x34, PropertyType::kTransform = 0x38, PropertyType::kBBox = 0x39,
  PropertyType::kChar = 0x0002, PropertyType::kWChar = 0x0003, PropertyType::kInt8 = 0x0005, PropertyType::kUInt8 = 0x0006,
  PropertyType::kInt16 = 0x0007, PropertyType::kUInt16 = 0x0008, PropertyType::kInt64 = 0x000B, PropertyType::kUInt64 = 0x000C,
  PropertyType::kDouble = 0x000E, PropertyType::kPtr = 0x000F, PropertyType::kVoid = 0x0010, PropertyType::kIUnknownRC = 0x0011,
  PropertyType::kFlags = 0x0021, PropertyType::kMatrix2 = 0x0035, PropertyType::kMatrix3 = 0x0036, PropertyType::kMatrix4 = 0x0037
}
 

Functions

namespace Addresses (cCameraManager)
 
namespace Addresses (cCheatManager)
 
namespace Addresses (cGameModeManager)
 
namespace Addresses (cMessageManager)
 
namespace Addresses (cPropManager)
 
namespace Addresses (cViewer)
 
namespace Addresses (DirectPropertyList)
 
ArgScript::FormatParserGetConsoleStream ()
 An utility method that returns the active console stream, and that can be used to print strings to the console. More...
 
ICheatManagerCheatManager ()
 Returns the active cheat manager. More...
 
template<typename... Args>
void ConsolePrintF (const char *str, Args... args)
 
IClassManagerClassManager ()
 
namespace Addresses (IClassManager)
 
IGameModeManagerGameModeManager ()
 Returns the active cheat manager. More...
 
ICameraManagerCameraManager ()
 
cViewerGetViewer ()
 
namespace Addresses (IGameModeManager)
 
IMessageManagerMessageManager ()
 Returns the active message manager. More...
 
intrusive_ptr< UpdateMessageListenerAddUpdateFunction (const VoidFunction_T &function)
 Adds an "Update" function that is called once every game frame. More...
 
intrusive_ptr< UpdateMessageListenerAddUpdateFunction (IUpdatable *updatable)
 Adds a class with an Update method that is called once every game frame. More...
 
intrusive_ptr< ScheduledTaskListenerScheduleTask (const VoidFunction_T &function, float scheduleTime)
 Executes a function after a certain time (measured in seconds) has passed from ths call. More...
 
template<class T >
intrusive_ptr< ScheduledTaskListenerScheduleTask (T *object, VoidMethod_T< T > method, float scheduleTime)
 Executes a class method after a certain time (measured in seconds) has passed from ths call. More...
 
intrusive_ptr< ScheduledTaskListenerScheduleRepeatedTask (const VoidFunction_T &function, float scheduleTime, float repeatRate)
 Executes a function after a certain time (measured in seconds) has passed from this call, and then keeps repeating it after a certain period (defined by the repeatRate parameter) parameter. More...
 
template<class T >
intrusive_ptr< ScheduledTaskListenerScheduleRepeatedTask (T *object, VoidMethod_T< T > method, float scheduleTime, float repeatRate)
 Executes a function after a certain time (measured in seconds) has passed from this call, and then keeps repeating it after a certain period (defined by the repeatRate parameter) parameter. More...
 
bool RemoveUpdateFunction (intrusive_ptr< UpdateMessageListener > &updateListener)
 
bool RemoveScheduledTask (intrusive_ptr< ScheduledTaskListener > &taskListener)
 
namespace Addresses (IMessageManager)
 
IPropManagerPropManager ()
 Returns the object that is the currently active property manager. More...
 
namespace Addresses (IPropManager)
 
IStateManagerStateManager ()
 
namespace Addresses (IStateManager)
 
namespace Addresses (Property)
 
 auto_METHOD_VOID (Property, Clear, Args(bool arg_0), Args(arg_0))
 
 auto_METHOD_ (Property, int32_t *, GetValueInt32)
 
 auto_METHOD_ (Property, float *, GetValueFloat)
 
 auto_METHOD_ (Property, bool *, GetValueBool)
 
 auto_METHOD_ (Property, uint32_t *, GetValueUInt32)
 
 auto_METHOD_ (Property, Vector2 *, GetValueVector2)
 
 auto_METHOD_ (Property, Vector3 *, GetValueVector3)
 
 auto_METHOD_ (Property, Vector4 *, GetValueVector4)
 
 auto_METHOD_ (Property, ColorRGB *, GetValueColorRGB)
 
 auto_METHOD_ (Property, ColorRGBA *, GetValueColorRGBA)
 
 auto_METHOD_ (Property, ResourceKey *, GetValueKey)
 
 auto_METHOD_ (Property, Transform *, GetValueTransform)
 
 auto_METHOD_ (Property, LocalizedString *, GetValueText)
 
 auto_METHOD_ (Property, BoundingBox *, GetValueBBox)
 
 auto_METHOD_ (Property, eastl::string8 *, GetValueString8)
 
 auto_METHOD_ (Property, eastl::string16 *, GetValueString16)
 
 auto_METHOD_ (Property, char *, GetValueChar)
 
 auto_METHOD_ (Property, wchar_t *, GetValueWChar)
 
 auto_METHOD_ (Property, int8_t *, GetValueInt8)
 
 auto_METHOD_ (Property, uint8_t *, GetValueUInt8)
 
 auto_METHOD_ (Property, int16_t *, GetValueInt16)
 
 auto_METHOD_ (Property, uint16_t *, GetValueUInt16)
 
 auto_METHOD_ (Property, int64_t *, GetValueInt64)
 
 auto_METHOD_ (Property, uint64_t *, GetValueUInt64)
 
 auto_METHOD_ (Property, double *, GetValueDouble)
 
 auto_METHOD_ (Property, void **, GetValueFlags)
 
 auto_METHOD_ (Property, void *, GetValue)
 
 auto_METHOD (Property, bool, Set, Args(PropertyType type, int flags, void *pValue, size_t nValueSize, size_t nValueCount), Args(type, flags, pValue, nValueSize, nValueCount))
 
 auto_METHOD (Property, Property &, SetValueInt32, Args(const int32_t &value), Args(value))
 
 auto_METHOD (Property, Property &, SetValueUInt32, Args(const uint32_t &value), Args(value))
 
 auto_METHOD (Property, Property &, SetValueKey, Args(const ResourceKey &value), Args(value))
 
 auto_METHOD (Property, Property &, SetValueString8, Args(const eastl::string8 &value), Args(value))
 
 auto_METHOD (Property, Property &, SetValueString16, Args(const eastl::string16 &value), Args(value))
 
 auto_METHOD (Property, Property &, SetValueFloat, Args(const float &value), Args(value))
 
 auto_METHOD (Property, Property &, SetValueBool, Args(const bool &value), Args(value))
 
 auto_METHOD (Property, Property &, SetValueBBox, Args(const BoundingBox &value), Args(value))
 
 auto_METHOD (Property, Property &, SetValueVector2, Args(const Vector2 &value), Args(value))
 
 auto_METHOD (Property, Property &, SetValueVector3, Args(const Vector3 &value), Args(value))
 
 auto_METHOD (Property, Property &, SetValueVector4, Args(const Vector4 &value), Args(value))
 
 auto_METHOD (Property, Property &, SetValueColorRGB, Args(const ColorRGB &value), Args(value))
 
 auto_METHOD (Property, Property &, SetValueColorRGBA, Args(const ColorRGBA &value), Args(value))
 
 auto_STATIC_METHOD (Property, bool, GetBool, Args(const PropertyList *prop, uint32_t propertyID, bool &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetFloat, Args(const PropertyList *prop, uint32_t propertyID, float &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetInt32, Args(const PropertyList *prop, uint32_t propertyID, int32_t &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetUInt32, Args(const PropertyList *prop, uint32_t propertyID, uint32_t &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetVector2, Args(const PropertyList *prop, uint32_t propertyID, Vector2 &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetVector3, Args(const PropertyList *prop, uint32_t propertyID, Vector3 &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetVector4, Args(const PropertyList *prop, uint32_t propertyID, Vector4 &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetColorRGB, Args(const PropertyList *prop, uint32_t propertyID, ColorRGB &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetColorRGBA, Args(const PropertyList *prop, uint32_t propertyID, ColorRGBA &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetKey, Args(const PropertyList *prop, uint32_t propertyID, ResourceKey &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetKeyInstanceID, Args(const PropertyList *prop, uint32_t propertyID, uint32_t &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetKeyGroupID, Args(const PropertyList *prop, uint32_t propertyID, uint32_t &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetKeyTypeID, Args(const PropertyList *prop, uint32_t propertyID, uint32_t &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetText, Args(const PropertyList *prop, uint32_t propertyID, LocalizedString &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetCString8, Args(const PropertyList *prop, uint32_t propertyID, char *&dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetCString16, Args(const PropertyList *prop, uint32_t propertyID, wchar_t *&dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetString8, Args(const PropertyList *prop, uint32_t propertyID, eastl::string &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetString16, Args(const PropertyList *prop, uint32_t propertyID, eastl::string16 &dst), Args(prop, propertyID, dst))
 
 auto_STATIC_METHOD (Property, bool, GetArrayBool, Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, bool *&dst), Args(prop, propertyID, dstCount, dst))
 
 auto_STATIC_METHOD (Property, bool, GetArrayInt32, Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, int32_t *&dst), Args(prop, propertyID, dstCount, dst))
 
 auto_STATIC_METHOD (Property, bool, GetArrayUInt32, Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, uint32_t *&dst), Args(prop, propertyID, dstCount, dst))
 
 auto_STATIC_METHOD (Property, bool, GetArrayFloat, Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, float *&dst), Args(prop, propertyID, dstCount, dst))
 
 auto_STATIC_METHOD (Property, bool, GetArrayVector2, Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, Vector2 *&dst), Args(prop, propertyID, dstCount, dst))
 
 auto_STATIC_METHOD (Property, bool, GetArrayVector3, Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, Vector3 *&dst), Args(prop, propertyID, dstCount, dst))
 
 auto_STATIC_METHOD (Property, bool, GetArrayVector4, Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, Vector4 *&dst), Args(prop, propertyID, dstCount, dst))
 
 auto_STATIC_METHOD (Property, bool, GetArrayColorRGB, Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, ColorRGB *&dst), Args(prop, propertyID, dstCount, dst))
 
 auto_STATIC_METHOD (Property, bool, GetArrayKey, Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, ResourceKey *&dst), Args(prop, propertyID, dstCount, dst))
 
 auto_STATIC_METHOD (Property, bool, GetArrayString8, Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, eastl::string8 *&dst), Args(prop, propertyID, dstCount, dst))
 
 auto_STATIC_METHOD (Property, bool, GetArrayString16, Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, eastl::string16 *&dst), Args(prop, propertyID, dstCount, dst))
 
 auto_STATIC_METHOD (Property, bool, GetArrayTransform, Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, Transform *&dst), Args(prop, propertyID, dstCount, dst))
 
namespace Addresses (PropertyList)
 
namespace Addresses (ScenarioMode)
 
DirectPropertyListAppProperties ()
 AppProperties is a kind of PropertyList containing globally-accessible properties that control the running of the app as a whole. More...
 

Detailed Description

This namespace contains basic utilities that allow to properly interact with the app.

Those utilities are:

Typedef Documentation

◆ CameraFactoryFunction_t

typedef ICamera*(* App::CameraFactoryFunction_t) (PropertyList *pPropList)

Camera types need a static function that creates the correct camera instance.

The function must take a PropertyList* as a parameter, and returns an ICamera*. This does not need to read the .prop file; instead, it should be stored in a field in the camera; the manager will call ICamera::Initialize() when necessary; there's where the .prop file should be read.

◆ OnModeEnterMessage

◆ VoidFunction_T

typedef eastl::function<void()> App::VoidFunction_T

The type of function used in Update or schedule scripts.

◆ VoidMethod_T

template<class T >
using App::VoidMethod_T = typedef void(T::*)()

The type of member method used in Update or schedule scripts.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
kMsgAddRef 
kMsgRelease 
kMsgOnModeExit 

Called when the current mode is exited. The message data is the App::OnModeExitMessage class.

kMsgOnModeEnter 

Called after the current mode is entered. The message data is the App::OnModeEnterMessage class.

◆ anonymous enum

anonymous enum
Enumerator
kMsgAppInitialized 

Sent when all the systems in the game have finished initializing, except for the Simulator ones.

Does not use message data.

kMsgAppUpdate 

Sent every game frame, after all other systems have been updated. Does not use message data.

◆ PropertyType

enum App::PropertyType : uint16_t
strong
Enumerator
kNone 
kBool 
kInt32 
kUInt32 
kFloat 
kString8 
kString16 
kKey 
kText 
kVector2 
kVector3 
kColorRGB 
kVector4 
kColorRGBA 
kTransform 
kBBox 
kChar 
kWChar 
kInt8 
kUInt8 
kInt16 
kUInt16 
kInt64 
kUInt64 
kDouble 
kPtr 
kVoid 
kIUnknownRC 
kFlags 
kMatrix2 
kMatrix3 
kMatrix4 

Function Documentation

◆ Addresses() [1/15]

namespace App::Addresses ( IStateManager  )

◆ Addresses() [2/15]

namespace App::Addresses ( IClassManager  )

◆ Addresses() [3/15]

namespace App::Addresses ( cMessageManager  )

◆ Addresses() [4/15]

namespace App::Addresses ( cCameraManager  )

◆ Addresses() [5/15]

namespace App::Addresses ( cCheatManager  )

◆ Addresses() [6/15]

namespace App::Addresses ( ScenarioMode  )

◆ Addresses() [7/15]

namespace App::Addresses ( cGameModeManager  )

◆ Addresses() [8/15]

namespace App::Addresses ( cPropManager  )

◆ Addresses() [9/15]

namespace App::Addresses ( cViewer  )

◆ Addresses() [10/15]

namespace App::Addresses ( DirectPropertyList  )

◆ Addresses() [11/15]

namespace App::Addresses ( IPropManager  )

◆ Addresses() [12/15]

namespace App::Addresses ( PropertyList  )

◆ Addresses() [13/15]

namespace App::Addresses ( IGameModeManager  )

◆ Addresses() [14/15]

namespace App::Addresses ( IMessageManager  )

◆ Addresses() [15/15]

namespace App::Addresses ( Property  )

◆ AddUpdateFunction() [1/2]

intrusive_ptr<UpdateMessageListener> App::AddUpdateFunction ( const VoidFunction_T function)
inline

Adds an "Update" function that is called once every game frame.

The time between frames is not constant, but you can use the Clock and Simulator::cGonzagoTimer classes to measure elapsed time.

The method returns the object that holds the update function. If you want to remove the function so it is not called, anymore, you can do it by calling App::RemoveUpdateFunction(...) with the returned object as parameter.

Internally, this is implemented just by adding a message listener that listens to the kMsgAppUpdate message.

Parameters
functionA void function with no parameters, that will be executed every frame.

◆ AddUpdateFunction() [2/2]

intrusive_ptr<UpdateMessageListener> App::AddUpdateFunction ( IUpdatable updatable)
inline

Adds a class with an Update method that is called once every game frame.

The time between frames is not constant, but you can use the Clock and Simulator::cGonzagoTimer classes to measure elapsed time.

The method returns the object that holds the updatable class. If you want to remove the function so it is not called, anymore, you can do it by calling App::RemoveUpdateFunction(...) with the returned object as parameter.

Internally, this is implemented just by adding a message listener that listens to the kMsgAppUpdate message.

Parameters
updatableAn object with an Update method, that will be executed every frame.

◆ AppProperties()

DirectPropertyList* App::AppProperties ( )
inline

AppProperties is a kind of PropertyList containing globally-accessible properties that control the running of the app as a whole.

Use AppProperties() to get the property list and access global properties, for example:

if (AppProperties()->GetDirectBool(SPPropertyIDs::kRenderEffects)) ...

◆ auto_METHOD() [1/14]

App::auto_METHOD ( Property  ,
bool  ,
Set  ,
Args(PropertyType type, int flags, void *pValue, size_t nValueSize, size_t nValueCount)  ,
Args(type, flags, pValue, nValueSize, nValueCount)   
)
inline

◆ auto_METHOD() [2/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueInt32  ,
Args(const int32_t &value)  ,
Args(value)   
)
inline

◆ auto_METHOD() [3/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueUInt32  ,
Args(const uint32_t &value)  ,
Args(value)   
)
inline

◆ auto_METHOD() [4/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueKey  ,
Args(const ResourceKey &value)  ,
Args(value)   
)
inline

◆ auto_METHOD() [5/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueString8  ,
Args(const eastl::string8 &value)  ,
Args(value)   
)
inline

◆ auto_METHOD() [6/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueString16  ,
Args(const eastl::string16 &value)  ,
Args(value)   
)
inline

◆ auto_METHOD() [7/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueFloat  ,
Args(const float &value)  ,
Args(value)   
)
inline

◆ auto_METHOD() [8/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueBool  ,
Args(const bool &value)  ,
Args(value)   
)
inline

◆ auto_METHOD() [9/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueBBox  ,
Args(const BoundingBox &value)  ,
Args(value)   
)
inline

◆ auto_METHOD() [10/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueVector2  ,
Args(const Vector2 &value)  ,
Args(value)   
)
inline

◆ auto_METHOD() [11/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueVector3  ,
Args(const Vector3 &value)  ,
Args(value)   
)
inline

◆ auto_METHOD() [12/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueVector4  ,
Args(const Vector4 &value)  ,
Args(value)   
)
inline

◆ auto_METHOD() [13/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueColorRGB  ,
Args(const ColorRGB &value)  ,
Args(value)   
)
inline

◆ auto_METHOD() [14/14]

App::auto_METHOD ( Property  ,
Property ,
SetValueColorRGBA  ,
Args(const ColorRGBA &value)  ,
Args(value)   
)
inline

◆ auto_METHOD_() [1/26]

App::auto_METHOD_ ( Property  ,
int32_t *  ,
GetValueInt32   
)
inline

◆ auto_METHOD_() [2/26]

App::auto_METHOD_ ( Property  ,
float *  ,
GetValueFloat   
)
inline

◆ auto_METHOD_() [3/26]

App::auto_METHOD_ ( Property  ,
bool *  ,
GetValueBool   
)
inline

◆ auto_METHOD_() [4/26]

App::auto_METHOD_ ( Property  ,
uint32_t *  ,
GetValueUInt32   
)
inline

◆ auto_METHOD_() [5/26]

App::auto_METHOD_ ( Property  ,
Vector2 ,
GetValueVector2   
)
inline

◆ auto_METHOD_() [6/26]

App::auto_METHOD_ ( Property  ,
Vector3 ,
GetValueVector3   
)
inline

◆ auto_METHOD_() [7/26]

App::auto_METHOD_ ( Property  ,
Vector4 ,
GetValueVector4   
)
inline

◆ auto_METHOD_() [8/26]

App::auto_METHOD_ ( Property  ,
ColorRGB ,
GetValueColorRGB   
)
inline

◆ auto_METHOD_() [9/26]

App::auto_METHOD_ ( Property  ,
ColorRGBA ,
GetValueColorRGBA   
)
inline

◆ auto_METHOD_() [10/26]

App::auto_METHOD_ ( Property  ,
ResourceKey ,
GetValueKey   
)
inline

◆ auto_METHOD_() [11/26]

App::auto_METHOD_ ( Property  ,
Transform ,
GetValueTransform   
)
inline

◆ auto_METHOD_() [12/26]

App::auto_METHOD_ ( Property  ,
LocalizedString ,
GetValueText   
)
inline

◆ auto_METHOD_() [13/26]

App::auto_METHOD_ ( Property  ,
BoundingBox ,
GetValueBBox   
)
inline

◆ auto_METHOD_() [14/26]

App::auto_METHOD_ ( Property  ,
eastl::string8 *  ,
GetValueString8   
)
inline

◆ auto_METHOD_() [15/26]

App::auto_METHOD_ ( Property  ,
eastl::string16 *  ,
GetValueString16   
)
inline

◆ auto_METHOD_() [16/26]

App::auto_METHOD_ ( Property  ,
char *  ,
GetValueChar   
)
inline

◆ auto_METHOD_() [17/26]

App::auto_METHOD_ ( Property  ,
wchar_t *  ,
GetValueWChar   
)
inline

◆ auto_METHOD_() [18/26]

App::auto_METHOD_ ( Property  ,
int8_t *  ,
GetValueInt8   
)
inline

◆ auto_METHOD_() [19/26]

App::auto_METHOD_ ( Property  ,
uint8_t *  ,
GetValueUInt8   
)
inline

◆ auto_METHOD_() [20/26]

App::auto_METHOD_ ( Property  ,
int16_t *  ,
GetValueInt16   
)
inline

◆ auto_METHOD_() [21/26]

App::auto_METHOD_ ( Property  ,
uint16_t *  ,
GetValueUInt16   
)
inline

◆ auto_METHOD_() [22/26]

App::auto_METHOD_ ( Property  ,
int64_t *  ,
GetValueInt64   
)
inline

◆ auto_METHOD_() [23/26]

App::auto_METHOD_ ( Property  ,
uint64_t *  ,
GetValueUInt64   
)
inline

◆ auto_METHOD_() [24/26]

App::auto_METHOD_ ( Property  ,
double *  ,
GetValueDouble   
)
inline

◆ auto_METHOD_() [25/26]

App::auto_METHOD_ ( Property  ,
void **  ,
GetValueFlags   
)
inline

◆ auto_METHOD_() [26/26]

App::auto_METHOD_ ( Property  ,
void *  ,
GetValue   
)
inline

◆ auto_METHOD_VOID()

App::auto_METHOD_VOID ( Property  ,
Clear  ,
Args(bool arg_0)  ,
Args(arg_0)   
)
inline

◆ auto_STATIC_METHOD() [1/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetBool  ,
Args(const PropertyList *prop, uint32_t propertyID, bool &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [2/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetFloat  ,
Args(const PropertyList *prop, uint32_t propertyID, float &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [3/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetInt32  ,
Args(const PropertyList *prop, uint32_t propertyID, int32_t &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [4/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetUInt32  ,
Args(const PropertyList *prop, uint32_t propertyID, uint32_t &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [5/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetVector2  ,
Args(const PropertyList *prop, uint32_t propertyID, Vector2 &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [6/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetVector3  ,
Args(const PropertyList *prop, uint32_t propertyID, Vector3 &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [7/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetVector4  ,
Args(const PropertyList *prop, uint32_t propertyID, Vector4 &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [8/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetColorRGB  ,
Args(const PropertyList *prop, uint32_t propertyID, ColorRGB &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [9/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetColorRGBA  ,
Args(const PropertyList *prop, uint32_t propertyID, ColorRGBA &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [10/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetKey  ,
Args(const PropertyList *prop, uint32_t propertyID, ResourceKey &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [11/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetKeyInstanceID  ,
Args(const PropertyList *prop, uint32_t propertyID, uint32_t &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [12/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetKeyGroupID  ,
Args(const PropertyList *prop, uint32_t propertyID, uint32_t &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [13/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetKeyTypeID  ,
Args(const PropertyList *prop, uint32_t propertyID, uint32_t &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [14/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetText  ,
Args(const PropertyList *prop, uint32_t propertyID, LocalizedString &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [15/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetCString8  ,
Args(const PropertyList *prop, uint32_t propertyID, char *&dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [16/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetCString16  ,
Args(const PropertyList *prop, uint32_t propertyID, wchar_t *&dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [17/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetString8  ,
Args(const PropertyList *prop, uint32_t propertyID, eastl::string &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [18/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetString16  ,
Args(const PropertyList *prop, uint32_t propertyID, eastl::string16 &dst)  ,
Args(prop, propertyID, dst)   
)
inline

◆ auto_STATIC_METHOD() [19/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetArrayBool  ,
Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, bool *&dst)  ,
Args(prop, propertyID, dstCount, dst)   
)
inline

◆ auto_STATIC_METHOD() [20/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetArrayInt32  ,
Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, int32_t *&dst)  ,
Args(prop, propertyID, dstCount, dst)   
)
inline

◆ auto_STATIC_METHOD() [21/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetArrayUInt32  ,
Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, uint32_t *&dst)  ,
Args(prop, propertyID, dstCount, dst)   
)
inline

◆ auto_STATIC_METHOD() [22/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetArrayFloat  ,
Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, float *&dst)  ,
Args(prop, propertyID, dstCount, dst)   
)
inline

◆ auto_STATIC_METHOD() [23/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetArrayVector2  ,
Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, Vector2 *&dst)  ,
Args(prop, propertyID, dstCount, dst)   
)
inline

◆ auto_STATIC_METHOD() [24/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetArrayVector3  ,
Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, Vector3 *&dst)  ,
Args(prop, propertyID, dstCount, dst)   
)
inline

◆ auto_STATIC_METHOD() [25/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetArrayVector4  ,
Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, Vector4 *&dst)  ,
Args(prop, propertyID, dstCount, dst)   
)
inline

◆ auto_STATIC_METHOD() [26/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetArrayColorRGB  ,
Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, ColorRGB *&dst)  ,
Args(prop, propertyID, dstCount, dst)   
)
inline

◆ auto_STATIC_METHOD() [27/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetArrayKey  ,
Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, ResourceKey *&dst)  ,
Args(prop, propertyID, dstCount, dst)   
)
inline

◆ auto_STATIC_METHOD() [28/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetArrayString8  ,
Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, eastl::string8 *&dst)  ,
Args(prop, propertyID, dstCount, dst)   
)
inline

◆ auto_STATIC_METHOD() [29/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetArrayString16  ,
Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, eastl::string16 *&dst)  ,
Args(prop, propertyID, dstCount, dst)   
)
inline

◆ auto_STATIC_METHOD() [30/30]

App::auto_STATIC_METHOD ( Property  ,
bool  ,
GetArrayTransform  ,
Args(const PropertyList *prop, uint32_t propertyID, size_t &dstCount, Transform *&dst)  ,
Args(prop, propertyID, dstCount, dst)   
)
inline

◆ CameraManager()

ICameraManager* App::CameraManager ( )
inline

◆ CheatManager()

ICheatManager* App::CheatManager ( )
inline

Returns the active cheat manager.

Same as ICheatManager::Get().

◆ ClassManager()

IClassManager* App::ClassManager ( )
inline

◆ ConsolePrintF()

template<typename... Args>
void App::ConsolePrintF ( const char *  str,
Args...  args 
)
inline

◆ GameModeManager()

IGameModeManager* App::GameModeManager ( )
inline

Returns the active cheat manager.

Same as IGameModeManager::Get().

◆ GetConsoleStream()

ArgScript::FormatParser* App::GetConsoleStream ( )
inline

An utility method that returns the active console stream, and that can be used to print strings to the console.

This is the equivalent to ICheatManager::Get()->GetArgScript()

◆ GetViewer()

cViewer* App::GetViewer ( )
inline

◆ MessageManager()

IMessageManager* App::MessageManager ( )
inline

Returns the active message manager.

Same as IMessageManager::Get().

◆ PropManager()

IPropManager* App::PropManager ( )
inline

Returns the object that is the currently active property manager.

Same as IPropManager::Get().

◆ RemoveScheduledTask()

bool App::RemoveScheduledTask ( intrusive_ptr< ScheduledTaskListener > &  taskListener)
inline

◆ RemoveUpdateFunction()

bool App::RemoveUpdateFunction ( intrusive_ptr< UpdateMessageListener > &  updateListener)
inline

◆ ScheduleRepeatedTask() [1/2]

intrusive_ptr<ScheduledTaskListener> App::ScheduleRepeatedTask ( const VoidFunction_T function,
float  scheduleTime,
float  repeatRate 
)
inline

Executes a function after a certain time (measured in seconds) has passed from this call, and then keeps repeating it after a certain period (defined by the repeatRate parameter) parameter.

The function is executed only once, and the time starts counting since this ScheduleTask method has been called.

The method returns the object that holds the scheduled task. If you want to remove the task so it does not execute anymore, you can do it by calling App::RemoveScheduledTask(...) with the returned object as parameter.

Internally, this is implemented by adding a message listener that listens to the kMsgAppUpdate message. Every frame uses a Clock object to compare the elapsed time since this task as scheduled. The listener is removed once the task has finished executing.

Parameters
functionA void function with no parameters, that will be executed every frame.
scheduleTimeThe time that has to pass, in seconds, since the task is scheduled for it to be executed.
repeatRateHow many seconds have to pass between every execution of the task.

◆ ScheduleRepeatedTask() [2/2]

template<class T >
intrusive_ptr<ScheduledTaskListener> App::ScheduleRepeatedTask ( T *  object,
VoidMethod_T< T >  method,
float  scheduleTime,
float  repeatRate 
)
inline

Executes a function after a certain time (measured in seconds) has passed from this call, and then keeps repeating it after a certain period (defined by the repeatRate parameter) parameter.

The function is executed only once, and the time starts counting since this ScheduleTask method has been called.

The method returns the object that holds the scheduled task. If you want to remove the task so it does not execute anymore, you can do it by calling App::RemoveScheduledTask(...) with the returned object as parameter.

Internally, this is implemented by adding a message listener that listens to the kMsgAppUpdate message. Every frame uses a Clock object to compare the elapsed time since this task as scheduled. The listener is removed once the task has finished executing.

Parameters
objectThe object to which the method will be called.
methodA void method with no parameters, that will be executed every frame.
scheduleTimeThe time that has to pass, in seconds, since the task is scheduled for it to be executed.
repeatRateHow many seconds have to pass between every execution of the task.

◆ ScheduleTask() [1/2]

intrusive_ptr<ScheduledTaskListener> App::ScheduleTask ( const VoidFunction_T function,
float  scheduleTime 
)
inline

Executes a function after a certain time (measured in seconds) has passed from ths call.

The function is executed only once, and the time starts counting since this ScheduleTask method has been called.

The method returns the object that holds the scheduled task. If you want to remove the task before it is called, you can do it by calling App::RemoveScheduledTask(...) with the returned object as parameter.

Internally, this is implemented by adding a message listener that listens to the kMsgAppUpdate message. Every frame uses a Clock object to compare the elapsed time since this task as scheduled. The listener is removed once the task has finished executing.

Parameters
functionA void function with no parameters, that will be executed every frame.
scheduleTimeThe time that has to pass, in seconds, since the task is scheduled for it to be executed.

◆ ScheduleTask() [2/2]

template<class T >
intrusive_ptr<ScheduledTaskListener> App::ScheduleTask ( T *  object,
VoidMethod_T< T >  method,
float  scheduleTime 
)
inline

Executes a class method after a certain time (measured in seconds) has passed from ths call.

The method is executed only once, and the time starts counting since this ScheduleTask method has been called.

The method returns the object that holds the scheduled task. If you want to remove the task before it is called, you can do it by calling App::RemoveScheduledTask(...) with the returned object as parameter.

Internally, this is implemented by adding a message listener that listens to the kMsgAppUpdate message. Every frame uses a Clock object to compare the elapsed time since this task as scheduled. The listener is removed once the task has finished executing.

Parameters
objectThe object to which the method will be called.
methodA void method with no parameters, that will be executed every frame.
scheduleTimeThe time that has to pass, in seconds, since the task is scheduled for it to be executed.

◆ StateManager()

IStateManager* App::StateManager ( )
inline