An interface class to the delegate.
The class provides functions to directly query specific delegate information. It is mainly intended to be used by a crowd behavior plugin. This class can be returned by calling the method GetInterface() from a Delegate node. For Example:
Sample Code, starting with an
INode(node)
Object *o = node->GetObjectRef();
if ((o->ClassID() == DELEG_CLASS_ID)
{
}
|
|
These functions query the delegate about the values of its parameters, all of which appear in the delegate’s modify panel interface.
|
virtual DELEGexport BOOL | IsConstrainedInZ () |
| Queries whether the delegate is constrained in the Z plane. More...
|
|
virtual DELEGexport float | GetAverageSpeed (TimeValue t) |
| Gets the average speed of the delegate. More...
|
|
virtual DELEGexport float | GetMaxAccel (TimeValue t) |
| Gets the maximum acceleration of the delegate. More...
|
|
virtual DELEGexport float | GetMaxHeadingVel (TimeValue t) |
| Gets the maximum heading velocity of the delegate. More...
|
|
virtual DELEGexport float | GetMaxHeadingAccel (TimeValue t) |
| Gets the maximum heading acceleration of the delegate. More...
|
|
virtual DELEGexport float | GetMaxPitchVel (TimeValue t) |
| Gets the maximum pitch velocity of the delegate. More...
|
|
virtual DELEGexport float | GetMaxPitchAccel (TimeValue t) |
| Gets the maximum pitch acceleration of the delegate. More...
|
|
virtual DELEGexport float | GetMaxIncline (TimeValue t) |
| Gets the maximum incline angle of the delegate. More...
|
|
virtual DELEGexport float | GetMaxDecline (TimeValue t) |
| Gets the maximum decline angle of the delegate. More...
|
|
virtual DELEGexport BOOL | OkToDisplayMyForces () |
| Queries if the the delegate should display the forces acting upon it during a simulation. More...
|
|
virtual DELEGexport BOOL | OkToDisplayMyVelocity () |
| Queries if the delegate should display its velocity during a simulation. More...
|
|
virtual DELEGexport BOOL | OkToDisplayMyCogStates () |
| Queries if the delegate should display its cognitive controller state during a simulation. More...
|
|
|
virtual DELEGexport Matrix3 | GetTM (INode *node, TimeValue t) |
| This function should be used instead of calling GetNodeTM during a simulation loop. More...
|
|
virtual DELEGexport Point3 | GetCurrentPosition () |
| Gets the position of the delegate. More...
|
|
virtual DELEGexport Point3 | GetCurrentVelocity () |
| Gets the velocity of the delegate. More...
|
|
virtual DELEGexport Point3 | GetPreviousVelocity () |
| Gets the previous velocity of the delegate. More...
|
|
virtual DELEGexport float | GetCurrentSpeed () |
| Gets the speed of the delegate. More...
|
|
virtual DELEGexport Point3 | GetSimStartVelocity (INode *n, TimeValue StartTime) |
| Gets the delegate's velocity at the start of a simulation. More...
|
|
|
During a simulation, a behavior might want to display some information.
For instance, the Pathfollow behavior displays the target on the path. The IDelegate class has some functions for displaying simple primitives during the simulation. These should be called from within a behavior's Perform, Constrain, or Orient function, since those are called per frame per delegate during a simulation.
|
virtual DELEGexport void | LineDisplay (Point3 &pt1, Point3 &pt2, Color clr, BOOL scale) |
| Draws a line segment while the simulation is running. More...
|
|
virtual DELEGexport void | BboxDisplay (Point3 &pt1, Point3 &pt2, Color clr) |
| Draws a bounding box while the simulation is running. More...
|
|
virtual DELEGexport void | SphereDisplay (Point3 &pt1, float radius, Color clr) |
| Draws a sphere while the simulation is running. More...
|
|
virtual DELEGexport void | TextDisplay (Point3 &pt1, Color clr, const MCHAR *str) |
| Draws text while the simulation is running. More...
|
|
|
virtual DELEGexport BOOL | IsComputing () |
| Queries whether the delegate is currently active in a running crowd simulation. More...
|
|
virtual DELEGexport BOOL | IsAssignmentActive (int AssignIndex, TimeValue t) |
| Queries whether a particular assignment is active at a particular time. More...
|
|
virtual DELEGexport int | GetIndex () |
| Get the delegate's identifier. More...
|
|
virtual DELEGexport int | GetRandId () |
| Gets a random id to generate varying behavior for different delegates performing the same behavior. More...
|
|
virtual DELEGexport BOOL | ComputingBiped () |
| Queries the whether the delegate is associated with a computing biped. More...
|
|
virtual DELEGexport BOOL | ReactToMe () |
| This function is used internally. More...
|
|
virtual DELEGexport void | ClearBacktracking () |
| This function is used internally. More...
|
|
virtual DELEGexport BOOL | NeedsBacktracking () |
| This function is used internally. More...
|
|
virtual DELEGexport void | SetBacktracking (int frame) |
| This function is used internally. More...
|
|
virtual DELEGexport | ~IDelegate () |
|
|
static UtilExport void * | operator new (size_t size) |
| Standard new operator used to allocate objects If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e) |
| Standard new operator used to allocate objects if there is insufficient memory, NULL will be returned. More...
|
|
static UtilExport void * | operator new (size_t size, const char *filename, int line) |
| New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new (size_t size, int block_type, const char *filename, int line) |
| New operator used to allocate objects that takes the type of memory, filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e, const char *filename, int line) |
| New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, NULL will be returned. More...
|
|
static UtilExport void * | operator new (size_t size, unsigned long flags) |
| New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new (size_t size, const std::nothrow_t &e, unsigned long flags) |
| New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, NULL will be returned. More...
|
|
static UtilExport void * | operator new[] (size_t size) |
| New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e) |
| New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
|
|
static UtilExport void * | operator new[] (size_t size, const char *filename, int line) |
| New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new[] (size_t size, int block_type, const char *filename, int line) |
| New operator used to allocate arrays of objects. More...
|
|
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e, const char *filename, int line) |
| New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
|
|
static UtilExport void * | operator new[] (size_t size, unsigned long flags) |
| New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
|
|
static UtilExport void * | operator new[] (size_t size, const std::nothrow_t &e, unsigned long flags) |
| New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
|
|
static UtilExport void | operator delete (void *ptr) |
| Standard delete operator used to deallocate an object If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e) |
| Standard delete operator used to deallocate an object If the pointer is invalid, nothing will happen. More...
|
|
static UtilExport void | operator delete (void *ptr, const char *filename, int line) |
| Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete (void *ptr, int block_type, const char *filename, int line) |
| Delete operator used to deallocate an object that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e, const char *filename, int line) |
| Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More...
|
|
static UtilExport void | operator delete (void *ptr, unsigned long flags) |
| Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete (void *ptr, const std::nothrow_t &e, unsigned long flags) |
| Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, nothing will happen. More...
|
|
static UtilExport void | operator delete[] (void *ptr) |
| Standard delete operator used to deallocate an array of objects If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e) |
| Standard delete operator used to deallocate an array of objects If the pointer is invalid, nothing will happen. More...
|
|
static UtilExport void | operator delete[] (void *ptr, const char *filename, int line) |
| Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete[] (void *ptr, int block_type, const char *filename, int line) |
| Delete operator used to deallocate an array of objects that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e, const char *filename, int line) |
| Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More...
|
|
static UtilExport void | operator delete[] (void *ptr, unsigned long flags) |
| Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void | operator delete[] (void *ptr, const std::nothrow_t &e, unsigned long flags) |
| Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
|
|
static UtilExport void * | operator new (size_t size, void *placement_ptr) |
| Placement new operator. More...
|
|
static UtilExport void | operator delete (void *ptr, void *placement_ptr) |
| Placement delete operator. More...
|
|
static UtilExport void * | aligned_malloc (size_t size, size_t alignment) |
| Allocates memory on a specified alignment boundary. More...
|
|
static UtilExport void * | aligned_realloc (void *ptr, size_t size, size_t alignment) |
| Reallocates memory on a specified alignment boundary. More...
|
|
static UtilExport void | aligned_free (void *ptr) |
| Frees a block of memory that was allocated with aligned_malloc/aligned_realloc. More...
|
|