3ds Max C++ API Reference
XMLAnimTreeEntryList Class Reference

The list of XMLAnimTreeEntry tracks, that will then be loaded onto, or saved out, or put into the mixer. More...

#include <XMLAnimTreeEntry.h>

+ Inheritance diagram for XMLAnimTreeEntryList:

Public Types

enum  {
  getEntry , count , zeroCount , shrink ,
  deleteItems , findAnim , findName
}
 
- Public Types inherited from BaseInterface
enum  LifetimeType { noRelease , immediateRelease , wantsRelease , serverControlled }
 

Public Member Functions

DllExport XMLAnimTreeEntryList ()
 Constructor. More...
 
DllExport ~XMLAnimTreeEntryList ()
 Deconstructor. More...
 
DllExport XMLAnimTreeEntryoperator[] (const int index)
 Returns the i'th XMLAnimTreeEntry. More...
 
DllExport int Count () const
 How many items in the list. More...
 
DllExport void ZeroCount ()
 Zeroes out the list and deletes the XLMAnimTreeEntries in the list. More...
 
DllExport void Shrink ()
 Shrinks the internal Tab that holds the items. More...
 
DllExport int Delete (int start, int num)
 Delete the specified items out of the list. Also deletes the XMLAnimTreeEntry objects themselves. More...
 
DllExport void DeleteData ()
 Deletes all of the XMLAnimTreeEntries in the list. More...
 
DllExport int FindAnim (Animatable *anim, int start=0)
 Find the specified anim in the list. More...
 
DllExport int Find (XMLAnimTreeEntry *which)
 Find this particular XMLAnimTreeEntry based off it's pointer value. More...
 
DllExport int Find (MSTR &name, int unique)
 
DllExport void FindParents (int index, Tab< int > &parentIndices)
 
DllExport void FindChildren (int index, Tab< int > &childIndices)
 Fnd the subAnim children of the specified item. More...
 
 FN_1 (getEntry, TYPE_INTERFACE, GetEntry, TYPE_INT)
 
 FN_0 (count, TYPE_INT, Count)
 
 VFN_0 (zeroCount, ZeroCount)
 
 VFN_0 (shrink, Shrink)
 
 FN_2 (deleteItems, TYPE_INT, Delete, TYPE_INT, TYPE_INT)
 
 FN_2 (findAnim, TYPE_INT, FindAnimFP, TYPE_REFTARG, TYPE_INT)
 
 FN_2 (findName, TYPE_INT, FindNameFP, TYPE_STRING, TYPE_INT)
 
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=NULL)
 
- Public Member Functions inherited from InterfaceServer
virtual UtilExport ~InterfaceServer ()
 Destructor. More...
 
template<class InterfaceType >
InterfaceType * GetTypedInterface ()
 

Friends

class XMLAnimTreeEntry
 
class XMLAnimLabelWindow
 
class XMLAnimMapDlg
 
class AnimFileLoader
 
class AnimFileCreator
 
class XMLAnim
 
class XMLTreeListEnum
 
class XMLAnimTreeEntryListImp
 
class NodeAndAnims
 

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

The list of XMLAnimTreeEntry tracks, that will then be loaded onto, or saved out, or put into the mixer.

The class contains pointers to the XMLAnimTreeEntry objects and allocates and deletes these objects itself. This class is contained within the NodeAndAnims object.

See also
XMLAnimTreeEntry
NodeAndAnims

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

!

Enumerator
getEntry 
count 
zeroCount 
shrink 
deleteItems 
findAnim 
findName 
@ getEntry
Definition: XMLAnimTreeEntry.h:332
@ deleteItems
Definition: XMLAnimTreeEntry.h:332
@ findName
Definition: XMLAnimTreeEntry.h:332
@ count
Definition: XMLAnimTreeEntry.h:332
@ findAnim
Definition: XMLAnimTreeEntry.h:332
@ zeroCount
Definition: XMLAnimTreeEntry.h:332
@ shrink
Definition: XMLAnimTreeEntry.h:332

Constructor & Destructor Documentation

◆ XMLAnimTreeEntryList()

Constructor.

◆ ~XMLAnimTreeEntryList()

Deconstructor.

Member Function Documentation

◆ operator[]()

DllExport XMLAnimTreeEntry* operator[] ( const int  index)

Returns the i'th XMLAnimTreeEntry.

Parameters
[in]indexThe index of the item you want
Returns
The item for tha index, NULL if the index is out of range

◆ Count()

DllExport int Count ( ) const

How many items in the list.

Returns
The number of items in the list

◆ ZeroCount()

DllExport void ZeroCount ( )

Zeroes out the list and deletes the XLMAnimTreeEntries in the list.

◆ Shrink()

DllExport void Shrink ( )

Shrinks the internal Tab that holds the items.

◆ Delete()

DllExport int Delete ( int  start,
int  num 
)

Delete the specified items out of the list. Also deletes the XMLAnimTreeEntry objects themselves.

Parameters
[in]startThe first item to delete
[in]numThe number of items to delete from the start.
Returns
The number of items left in the list

◆ DeleteData()

DllExport void DeleteData ( )

Deletes all of the XMLAnimTreeEntries in the list.

◆ FindAnim()

DllExport int FindAnim ( Animatable anim,
int  start = 0 
)

Find the specified anim in the list.

Parameters
[in]animThe anim you want to find.
[in]startWhere you want to start looking from
Returns
The index where the entry is, -1 if not found

◆ Find() [1/2]

DllExport int Find ( XMLAnimTreeEntry which)

Find this particular XMLAnimTreeEntry based off it's pointer value.

◆ Find() [2/2]

DllExport int Find ( MSTR name,
int  unique 
)

◆ FindParents()

DllExport void FindParents ( int  index,
Tab< int > &  parentIndices 
)
Parameters
[in]indexThe index of the items subAnim parents you want to find.
[out]parentIndicesThe indices of the items parents. It will be empty if it has no subAnim parents.

◆ FindChildren()

DllExport void FindChildren ( int  index,
Tab< int > &  childIndices 
)

Fnd the subAnim children of the specified item.

Parameters
[in]indexThe index whose children you want to find.
[out]childIndicesThe indices of the items children. It will be empty if it has no subAnim children.

◆ FN_1()

FN_1 ( getEntry  ,
TYPE_INTERFACE  ,
GetEntry  ,
TYPE_INT   
)

!

!

◆ FN_0()

FN_0 ( count  ,
TYPE_INT  ,
Count   
)

!

◆ VFN_0() [1/2]

VFN_0 ( zeroCount  ,
ZeroCount   
)

!

◆ VFN_0() [2/2]

VFN_0 ( shrink  ,
Shrink   
)

!

◆ FN_2() [1/3]

FN_2 ( deleteItems  ,
TYPE_INT  ,
Delete  ,
TYPE_INT  ,
TYPE_INT   
)

!

◆ FN_2() [2/3]

FN_2 ( findAnim  ,
TYPE_INT  ,
FindAnimFP  ,
TYPE_REFTARG  ,
TYPE_INT   
)

!

◆ FN_2() [3/3]

FN_2 ( findName  ,
TYPE_INT  ,
FindNameFP  ,
TYPE_STRING  ,
TYPE_INT   
)

!

◆ GetDesc()

DllExport FPInterfaceDesc* GetDesc ( )
virtual

!

Implements FPInterface.

◆ LifetimeControl()

LifetimeType LifetimeControl ( )
inlinevirtual

!

Reimplemented from FPMixinInterface.

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

◆ AcquireInterface()

BaseInterface* AcquireInterface ( )
inlinevirtual

!

Reimplemented from BaseInterface.

359 { return this; }

◆ ReleaseInterface()

DllExport void ReleaseInterface ( )
virtual

!

Reimplemented from BaseInterface.

Friends And Related Function Documentation

◆ XMLAnimTreeEntry

friend class XMLAnimTreeEntry
friend

!

◆ XMLAnimLabelWindow

friend class XMLAnimLabelWindow
friend

!

◆ XMLAnimMapDlg

friend class XMLAnimMapDlg
friend

!

◆ AnimFileLoader

friend class AnimFileLoader
friend

!

◆ AnimFileCreator

friend class AnimFileCreator
friend

!

◆ XMLAnim

friend class XMLAnim
friend

!

◆ XMLTreeListEnum

friend class XMLTreeListEnum
friend

!

◆ XMLAnimTreeEntryListImp

friend class XMLAnimTreeEntryListImp
friend

!

◆ NodeAndAnims

friend class NodeAndAnims
friend

!