3ds Max C++ API Reference
NodeAndAnims Class Reference

A class that holds a node and a list of anims under that node that can be used for loading,saving, mapping animation, or putting specific tracks into the mixer. More...

#include <XMLAnimTreeEntry.h>

+ Inheritance diagram for NodeAndAnims:

Public Types

enum  { getList , getNode }
 
- Public Types inherited from BaseInterface
enum  LifetimeType { noRelease , immediateRelease , wantsRelease , serverControlled }
 

Public Member Functions

 NodeAndAnims ()
 
virtual ~NodeAndAnims ()
 
DllExport NodeAndAnims (const NodeAndAnims &)
 Copy constructor. More...
 
DllExport NodeAndAnimsoperator= (const NodeAndAnims &right)
 Assignment operator.
More...
 
DllExport bool operator== (const NodeAndAnims &b) const
 
DllExport XMLAnimTreeEntryListGetList () const
 Get the XMLAnimTreeEntry list. More...
 
DllExport void SetList (XMLAnimTreeEntryList *list)
 set the XMLAnimTreeEntry list More...
 
DllExport INodeGetNode () const
 Get the node. More...
 
DllExport void SetNode (INode *theNode)
 Set the node. More...
 
DllExport const MSTRGetIKNodeName () const
 Gets the IKNodeName. More...
 
DllExport void SetIKNodeName (const MCHAR *name)
 Sets the IKNodeName. More...
 
DllExport void DeleteThis ()
 Deletes the data held by the NodeAnim, in particular the list object and the IKNodeName. Must be called once the list is done being used. More...
 
 FN_0 (getList, TYPE_INTERFACE, GetListFP)
 Function Map. More...
 
 FN_0 (getNode, TYPE_INODE, GetNode)
 
DllExport FPInterfaceDescGetDesc ()
 
LifetimeType LifetimeControl ()
 
BaseInterfaceAcquireInterface ()
 
DllExport void ReleaseInterface ()
 
- Public Member Functions inherited from FPMixinInterface
 FPMixinInterface ()
 
virtual CoreExport bool RegisterNotifyCallback (InterfaceNotifyCallback *incb)
 
virtual void UnRegisterNotifyCallback (InterfaceNotifyCallback *incb)
 
CoreExport ~FPMixinInterface ()
 
virtual BaseInterfaceGetInterface (Interface_ID id)
 
virtual FPInterfaceDescGetDescByID (Interface_ID id)
 
virtual Interface_ID GetID ()
 
- Public Member Functions inherited from FPInterface
virtual CoreExport FPStatus Invoke (FunctionID fid, TimeValue t=0, FPParams *params=NULL)
 
virtual FPStatus Invoke (FunctionID fid, FPParams *params)
 
virtual CoreExport FPStatus Invoke (FunctionID fid, TimeValue t, FPValue &result, FPParams *params=NULL)
 
virtual FPStatus Invoke (FunctionID fid, FPValue &result, FPParams *params=NULL)
 
virtual CoreExport FunctionID FindFn (const MCHAR *name)
 
virtual CoreExport BOOL IsEnabled (FunctionID actionID)
 
virtual CoreExport BOOL IsChecked (FunctionID actionID)
 
virtual CoreExport BOOL IsVisible (FunctionID actionID)
 
virtual CoreExport FunctionID GetIsEnabled (FunctionID actionID)
 
virtual CoreExport FunctionID GetIsChecked (FunctionID actionID)
 
virtual CoreExport FunctionID GetIsVisible (FunctionID actionID)
 
virtual ActionTableGetActionTable ()
 
virtual void EnableActions (BOOL onOff)
 
- Public Member Functions inherited from BaseInterface
virtual UtilExport ~BaseInterface ()
 Destructor. More...
 
virtual void DeleteInterface ()
 
virtual BaseInterfaceCloneInterface (void *remapDir=nullptr)
 
- Public Member Functions inherited from InterfaceServer
virtual UtilExport ~InterfaceServer ()
 Destructor. More...
 
template<class InterfaceType >
InterfaceType * GetTypedInterface ()
 

Additional Inherited Members

- Static Public Member Functions inherited from MaxHeapOperators
static UtilExport voidoperator new (size_t size)
 Standard new operator used to allocate objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator 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 voidoperator 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 voidoperator 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 voidoperator 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 voidoperator 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 voidoperator 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 voidoperator 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 voidoperator 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 voidoperator 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 voidoperator new[] (size_t size, int block_type, const char *filename, int line)
 New operator used to allocate arrays of objects. More...
 
static UtilExport voidoperator 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 voidoperator 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 voidoperator 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 voidoperator 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 voidaligned_malloc (size_t size, size_t alignment)
 Allocates memory on a specified alignment boundary. More...
 
static UtilExport voidaligned_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...
 
- Static Public Attributes inherited from FPInterface
static CoreExport FPInterfaceDesc nullInterface
 
- Protected Member Functions inherited from FPMixinInterface
 FPMixinInterface (const FPMixinInterface &rhs)
 
FPMixinInterfaceoperator= (const FPMixinInterface &rhs)
 
- Protected Member Functions inherited from FPInterface
virtual FPStatus _dispatch_fn (FunctionID fid, TimeValue t, FPValue &result, FPParams *p)
 
- Protected Attributes inherited from FPMixinInterface
Tab< InterfaceNotifyCallback * > * interfaceNotifyCBs
 

Detailed Description

A class that holds a node and a list of anims under that node that can be used for loading,saving, mapping animation, or putting specific tracks into the mixer.

Provides a lower level of control than just specify a node by itself. This class gets filled out via the ILoadSaveAnimation::SetUpAnimsForSave, ILoadSaveAnimation::SetUpAnimsForLoad, and ILoadSaveAnimation::SetUpAnimsForMapping. It's the users responsibility to delete this item by calling DeleteThis, since it doesn't delete it's own data on deconstruction.

See also
ILoadSaveAnimation::SetUpAnimsForSave
ILoadSaveAnimation::SetUpAnimsForLoad
ILoadSaveAnimation::SetUpAnimsForMap
IMixer8::AddMaxMixer
XMLAnimTreeEntryList

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

!

Enumerator
getList 
getNode 
470 { getList,getNode};
@ getList
Definition: XMLAnimTreeEntry.h:470
@ getNode
Definition: XMLAnimTreeEntry.h:470

Constructor & Destructor Documentation

◆ NodeAndAnims() [1/2]

NodeAndAnims ( )
inline
429 :node(NULL),IKNodeName(NULL),treeEntryList(NULL){};
#define NULL
Definition: autoptr.h:18

◆ ~NodeAndAnims()

virtual ~NodeAndAnims ( )
inlinevirtual
430  {
431  DeleteThis();
432  }
DllExport void DeleteThis()
Deletes the data held by the NodeAnim, in particular the list object and the IKNodeName....

◆ NodeAndAnims() [2/2]

Copy constructor.

Member Function Documentation

◆ operator=()

DllExport NodeAndAnims& operator= ( const NodeAndAnims right)

Assignment operator.

◆ operator==()

DllExport bool operator== ( const NodeAndAnims b) const
Remarks
Compares this class instance to another one

◆ GetList()

DllExport XMLAnimTreeEntryList* GetList ( ) const
inline

Get the XMLAnimTreeEntry list.

Returns
The XMLAnimTreeEntryList object
445 {return treeEntryList;}

◆ SetList()

DllExport void SetList ( XMLAnimTreeEntryList list)

set the XMLAnimTreeEntry list

◆ GetNode()

DllExport INode* GetNode ( void  ) const
inline

Get the node.

Returns
The node (may be null)
453 {return node;}

◆ SetNode()

DllExport void SetNode ( INode theNode)
inline

Set the node.

457 { node = theNode; }

◆ GetIKNodeName()

DllExport const MSTR* GetIKNodeName ( ) const
inline

Gets the IKNodeName.

Returns
The IKNodeName (may be null)
461 { return IKNodeName; }

◆ SetIKNodeName()

DllExport void SetIKNodeName ( const MCHAR name)

Sets the IKNodeName.

◆ DeleteThis()

DllExport void DeleteThis ( )

Deletes the data held by the NodeAnim, in particular the list object and the IKNodeName. Must be called once the list is done being used.

◆ FN_0() [1/2]

FN_0 ( getList  ,
TYPE_INTERFACE  ,
GetListFP   
)

Function Map.

!

◆ FN_0() [2/2]

FN_0 ( getNode  ,
TYPE_INODE  ,
GetNode   
)

!

◆ GetDesc()

DllExport FPInterfaceDesc* GetDesc ( )
virtual

!

Implements FPInterface.

◆ LifetimeControl()

LifetimeType LifetimeControl ( )
inlinevirtual

!

Reimplemented from FPMixinInterface.

485 { return wantsRelease; }
@ wantsRelease
Definition: baseinterface.h:104

◆ AcquireInterface()

BaseInterface* AcquireInterface ( )
inlinevirtual

!

Reimplemented from BaseInterface.

487 { return this; }

◆ ReleaseInterface()

DllExport void ReleaseInterface ( )
virtual

!

Reimplemented from BaseInterface.