3ds Max C++ API Reference
ILoadSaveAnimation10 Class Referenceabstract

An extension to ILoadSaveAnimation that exposes additional functionality. More...

#include <ILoadSaveAnimation.h>

+ Inheritance diagram for ILoadSaveAnimation10:

Public Member Functions

virtual void SetUpAnimsForSaveExt (const Tab< INode * > &nodeTab, DWORD saveFlag, MaxSDK::Array< NodeAndAnims > &nodeAnims) const =0
 Creates a list of NodeAndAnims items to be used for saving animation. More...
 
virtual void SetUpAnimsForSaveFromTracks (const Tab< TrackViewPick > &res, MaxSDK::Array< NodeAndAnims > &nodeAnims) const =0
 Creates a list of NodeAndAnims items to be used for saving animation based upon a specified list of TrackViewPick items. More...
 
virtual void SetUpAnimsForLoadExt (const Tab< INode * > &nodeTab, DWORD loadFlag, MaxSDK::Array< NodeAndAnims > &nodeAnims) const =0
 Creates a list of NodeAndAnims items to be used for loading animation or for putting tracks into the mixer. More...
 
virtual void SetUpAnimsForLoadFromTracks (const Tab< TrackViewPick > &res, MaxSDK::Array< NodeAndAnims > &nodeAnims) const =0
 Creates a list of NodeAndAnims items to be used for loading animation based upon a specified list of TrackViewPick items. More...
 
virtual void SetUpAnimsForMapExt (const Tab< INode * > &nodeTab, DWORD mapFlag, MaxSDK::Array< NodeAndAnims > &nodeAnims) const =0
 Creates a list of NodeAndAnims items to be used for mapping animation. More...
 
virtual void SetUpAnimsForMapFromTracks (const Tab< TrackViewPick > &res, MaxSDK::Array< NodeAndAnims > &nodeAnims) const =0
 Creates a NodeAndAnims items to be used for mapping animation based upon a list of TrackViewPick items. More...
 
virtual const MCHARLoadAnimationDlgFromTracks (const Tab< TrackViewPick > &res) const =0
 Bring up a load animation dialog that will load animation to the each track that's specified in the tab of TrackViewPick items. More...
 
virtual const MCHARSaveAnimationDlgFromTracks (const Tab< TrackViewPick > &res) const =0
 Bring up a save animation dialog that will save animation from the each track that's specified in the tab of TrackViewPick items. More...
 
virtual BOOL ReplaceAttributesInMapFile (const MCHAR *mapFile, const MCHAR *newMapFile, Tab< MSTR * > &oldStrings, Tab< MSTR * > &newStrings, BOOL mapName) const =0
 Given a specified map file, it will replace all specified string attributes with the new string attributes, and a create a new map file with those new strings. More...
 
virtual BOOL CreateDefaultMapFile (Tab< INode * > &nodeTab, const MCHAR *mapFile) const =0
 Given a set of nodes it will create a map file that maps the nodes tracks onto themselves, which is the same as doing 'default' mapping. More...
 
- Public Member Functions inherited from ILoadSaveAnimation
virtual BOOL GetUserAttributes (const MCHAR *filename, Tab< MSTR * > &userAttributes, Tab< MSTR * > &userValues) const =0
 Get the user attributes that are present out of the corresponding animation or map file. More...
 
virtual void LoadForMixing (BOOL flag) const =0
 
virtual const MCHARSaveAnimationDlg () const =0
 Brings up the Save Animation dialog. More...
 
virtual const MCHARLoadAnimationDlg () const =0
 Brings up the Load Animation dialog. More...
 
virtual BOOL GetLoadAndMapFileFromDlg (MCHAR fileName[MAX_PATH], MCHAR mapFileName[MAX_PATH]) const =0
 Brings up the Load Animation dialog and returns the fileName and the mapFileName in the passed in parameters. More...
 
virtual BOOL GetMultLoadAndMapFileFromDlg (Tab< MSTR * > &names, MCHAR *mapName) const =0
 Brings up the Load Animation dialog and returns a list of possible multiple file names in the passed in parameters. More...
 
virtual BOOL SaveAnimation (const MCHAR *filename, Tab< INode * > &nodes, Tab< MSTR * > &userAttributes, Tab< MSTR * > &userValues, DWORD saveFlag, Interval &segInterval) const =0
 Save the animation from the current nodes into the specified file. More...
 
virtual BOOL SaveAnimationNodeAnims (const MCHAR *filename, MaxSDK::Array< NodeAndAnims > &nodeAnims, Tab< MSTR * > &userAttributes, Tab< MSTR * > &userValues, DWORD saveFlag, Interval &segInterval) const =0
 Save the animation from the current nodeAnim tracks into the specified file. More...
 
virtual BOOL LoadAnimation (const MCHAR *filename, Tab< INode * > &nodes, DWORD loadFlag, TimeValue insertTime, BOOL useMapFile, MCHAR *mapFileName) const =0
 Load the animation from the current file onto the specified nodes using any mapping that's specified. More...
 
virtual BOOL LoadAnimationNodeAnims (const MCHAR *filename, MaxSDK::Array< NodeAndAnims > &nodeAnims, DWORD loadFlag, TimeValue insertTime, BOOL useMapFile, MCHAR *mapFileName) const =0
 Load the animation from the current file onto the specified nodeAnim tracks using any mapping that's specified. More...
 
virtual BOOL CreateMapFile (const MCHAR *filename, Tab< INode * > &currentNodes, const MCHAR *incomingAnimationFile, Tab< MSTR * > &userAttributes, Tab< MSTR * > &userValues, Tab< LoadSaveRetargetData > &retargetData, int nodeMapType, DWORD mapFlag) const =0
 Create a map file based upon nodes to map to, the animation file that will be loaded, and the specific mapping protocols. More...
 
virtual BOOL CreateMapFileNodeAnims (const MCHAR *filename, MaxSDK::Array< NodeAndAnims > &nodeAnims, const MCHAR *incomingAnimationFile, Tab< MSTR * > &userAttributes, Tab< MSTR * > &userValues, Tab< LoadSaveRetargetData > &retargetData, int nodeMapType, DWORD mapFlag) const =0
 Create a map file based upon nodeAnim tracks to map to, the animation file that will be loaded, and the specific mapping protocols. More...
 
virtual const MCHARGetAnimFileExtension () const =0
 Get the extension used for the animation files. More...
 
virtual const MCHARGetAnimMapFileExtension () const =0
 Get the extension used for the animation map files. More...
 
virtual const MCHARGetAnimFileDirectory () const =0
 Get the current directory for finding animation files. More...
 
virtual void GetAnimFileDirectories (Tab< MSTR * > &animFileDirectories) const =0
 Get all of the anim file directories in the load/save UI. More...
 
virtual void GetMapFiles (Tab< MSTR * > &mapFiles) const =0
 Get all of the recently used map files in the load/save UI. More...
 
virtual const MCHARGetAnimMapFile () const =0
 Get the current map file. More...
 
virtual void SetAnimFileDirectory (const MCHAR *directory)=0
 Set the current directory for finding animation files. More...
 
virtual void SetAnimMapFile (const MCHAR *filename)=0
 Set the latest map file found. More...
 
virtual void SetUpAnimsForSave (Tab< INode * > &nodeTab, BOOL animatedTracks, BOOL includeConstraints, BOOL keyable, MaxSDK::Array< NodeAndAnims > &nodeAnims) const =0
 Sets up the anim list to be used for saving out an xml animation file. More...
 
virtual void SetUpAnimsForLoad (Tab< INode * > &nodeTab, BOOL includePB2s, MaxSDK::Array< NodeAndAnims > &nodeAnims) const =0
 Sets up the anim list to be used for loading in an xml animation file or putting nodes and their tracks into the mixer. More...
 
virtual void SetUpAnimsForMap (Tab< INode * > &nodeTab, MaxSDK::Array< NodeAndAnims > &nodeAnims) const =0
 Sets up the anim list to be used for mapping an xml animation file. More...
 
- Public Member Functions inherited from FPInterfaceDesc
CoreExport FPInterfaceDesc ()
 
CoreExport FPInterfaceDesc (Interface_ID id, const MCHAR *int_name, StringResID descr, ClassDesc *cd, ULONG flag,...)
 
CoreExport ~FPInterfaceDesc ()
 
virtual void Init ()
 
LifetimeType LifetimeControl ()
 
virtual BaseInterfaceGetInterface (Interface_ID id)
 
CoreExport void LoadDescriptor (Interface_ID id, const MCHAR *int_name, StringResID descr, ClassDesc *pCD, ULONG flag,...)
 
CoreExport void AppendFunction (int id,...)
 Add a new function to this interface descriptor. More...
 
CoreExport void AppendProperty (int id,...)
 Add a new property to this interface descriptor. More...
 
CoreExport void AppendEnum (int id,...)
 Add a new enum to this interface descriptor. More...
 
CoreExport void SetClassDesc (ClassDesc *i_cd)
 
CoreExport va_list check_fn (va_list ap, int id)
 
CoreExport va_list scan_fn (va_list ap, int id, int index)
 
CoreExport va_list check_prop (va_list ap, int id)
 
CoreExport va_list scan_prop (va_list ap, int id, int index)
 
CoreExport va_list check_enum (va_list ap, EnumID id)
 
CoreExport va_list scan_enum (va_list ap, EnumID id, int index)
 
FPInterfaceDescGetDesc ()
 
Interface_ID GetID ()
 
CoreExport FPFunctionDefGetFnDef (FunctionID fid)
 
ActionTableGetActionTable ()
 
CoreExport void EnableActions (BOOL onOff)
 
virtual CoreExport HINSTANCE HInstance ()
 
virtual CoreExport const MCHARGetRsrcString (StringResID id)
 
- 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)
 
- Public Member Functions inherited from BaseInterface
virtual UtilExport ~BaseInterface ()
 Destructor. More...
 
virtual bool RegisterNotifyCallback (InterfaceNotifyCallback *incb)
 
virtual void UnRegisterNotifyCallback (InterfaceNotifyCallback *incb)
 
virtual BaseInterfaceAcquireInterface ()
 
virtual void ReleaseInterface ()
 
virtual void DeleteInterface ()
 
virtual BaseInterfaceCloneInterface (void *remapDir=NULL)
 
- Public Member Functions inherited from InterfaceServer
virtual UtilExport ~InterfaceServer ()
 Destructor. More...
 
template<class InterfaceType >
InterfaceType * GetTypedInterface ()
 

Additional Inherited Members

- Public Types inherited from ILoadSaveAnimation
enum  NodeMapType { eMatchExactName =0 , eMatchClosestName =1 , eMatchHierarchy =2 }
 Enum for the type of node mapping to due when creating a map file using CreateMapFile. More...
 
enum  SaveFlags {
  eAnimatedTracks = 0x1 , eIncludeConstraints = 0x2 , eKeyableTracks = 0x4 , eSaveSeg = 0x8 ,
  eSegPerFrame = 0x10
}
 Enum for different flags to pass in when calling ILoadSaveAnimation::SaveAnimation and ILoadSaveAnimation10::SetUpAnimsForSaveExt. More...
 
enum  LoadFlags { eRelative = 0x1 , eInsert = 0x2 , eStripLayers = 0x4 , eIncludePB2s = 0x8 }
 Enum for different flags to pass in when calling ILoadSaveAnimation::LoadAnimation and ILoadSaveAnimation10::SetUpAnimsForLoadExt. More...
 
enum  MapFlags { eMapControllerExactName = 0x1 , eMapControllerType = 0x2 , eStripLayersInMap = 0x4 }
 Enum for different flags to pass in when calling ILoadSaveAnimation::CreateMapFile and ILoadSaveAnimation10::SetUpAnimsForMapExt. More...
 
- Public Types inherited from BaseInterface
enum  LifetimeType { noRelease , immediateRelease , wantsRelease , serverControlled }
 
- 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...
 
- Public Attributes inherited from FPInterfaceDesc
Interface_ID ID
 
MSTR internal_name
 
StringResID description
 
ClassDesccd
 
USHORT flags
 
Tab< FPFunctionDef * > functions
 
Tab< FPPropDef * > props
 
Tab< FPEnum * > enumerations
 
MSPluginClasspc
 
Rolloutrollout
 
ActionTableaction_table
 
- Static Public Attributes inherited from FPInterface
static CoreExport FPInterfaceDesc nullInterface
 
- Protected Member Functions inherited from FPInterfaceDesc
CoreExport void load_descriptor (Interface_ID id, const MCHAR *int_name, StringResID descr, ClassDesc *cd, USHORT flag, va_list ap)
 
- Protected Member Functions inherited from FPInterface
virtual FPStatus _dispatch_fn (FunctionID fid, TimeValue t, FPValue &result, FPParams *p)
 

Detailed Description

An extension to ILoadSaveAnimation that exposes additional functionality.

This class contains key functionality for saving and creating both animation and map files and for loading in animation. You get this interface by calling GetILoadSaveAnimation10()

Member Function Documentation

◆ SetUpAnimsForSaveExt()

virtual void SetUpAnimsForSaveExt ( const Tab< INode * > &  nodeTab,
DWORD  saveFlag,
MaxSDK::Array< NodeAndAnims > &  nodeAnims 
) const
pure virtual

Creates a list of NodeAndAnims items to be used for saving animation.

Use as a replacement for ILoadSaveAnimation::SetUpAnimsForSave

Parameters
[in]nodeTabNodes whose tracks you want to save out.
[in]saveFlagDetermines which tracks under the specified nodes will be present in the resulting nodeAnims tab. The possible values of the saveFlag are found in the ILoadSaveAnimation::SaveFlags enum. The possible vales are eAnimatedTracks, if this value is set, then only animated tracks only will be saved, otherwise non-animated tracks will also be saved. eIncludeConstraints, if set and eAnimatedTracks is set, then constraints will also be saved out, otherwise if eAnimatedTracks is set and this value isn't set, they won't be saved out. If eAnimatedTracks isn't set this parameter is unused since constraints will be automatically saved out. eKeyableTracks, if set keyable tracks only will be saved, otherwise non-keyable tracks will also be saved. Not that we don't use the eSaveSeg or eSegPerFrame flags with this function
[out]nodeAnimsThe returned list of nodes and their anim tracks based upon the flags passed into the function. This can then be passed to ILoadSaveAnimation::SaveAnimationNodeAnims in order to save the animation.
See also
NodeAndAnims
ILoadSaveAnimation::SaveAnimationNodeAnims

◆ SetUpAnimsForSaveFromTracks()

virtual void SetUpAnimsForSaveFromTracks ( const Tab< TrackViewPick > &  res,
MaxSDK::Array< NodeAndAnims > &  nodeAnims 
) const
pure virtual

Creates a list of NodeAndAnims items to be used for saving animation based upon a specified list of TrackViewPick items.

Use this function instead of ILoadInterface10::SetUpAnimsForSaveExt when you want to save animation from specific tracks.

Parameters
[in]resA Tab of TrackViewPick items, each of which specifies a single animatable track, usually from a TrackViewPick dlg.
See also
TrackViewPick
Parameters
[out]nodeAnimsThe returned list of nodes and their anim tracks. This can then be passed to ILoadSaveAnimation::SaveAnimationNodeAnims in order to save the animation.
See also
NodeAndAnims
ILoadSaveAnimation::SaveAnimationNodeAnims

◆ SetUpAnimsForLoadExt()

virtual void SetUpAnimsForLoadExt ( const Tab< INode * > &  nodeTab,
DWORD  loadFlag,
MaxSDK::Array< NodeAndAnims > &  nodeAnims 
) const
pure virtual

Creates a list of NodeAndAnims items to be used for loading animation or for putting tracks into the mixer.

Parameters
[in]nodeTabNodes whose tracks you want to load onto.
[in]loadFlagDetermines which tracks under the specified nodes will be loaded onto. The possible values of the loadFlag are found in the ILoadSaveAnimation::LoadFlags enum. The possible vales are: eStripLayers, if this value is set, then any layer controller name will be removed from the incoming controller names, otherwise it won't. eIncludePB2s, if set then we will include any ParamBlock2 tracks. Note that we don't use the eRelative or eInsert flags.
[out]nodeAnimsThe returned list of nodes and their anim tracks based upon the flags passed into the function. This can then be sent to either ILoadSaveAnimation::LoadAnimationNodeAnims or IMixer8::AddMaxMixxer.
See also
NodeAndAnims
IMixer8::AddMaxMixer
ILoadSaveAnimation::LoadAnimationNodeAnims

◆ SetUpAnimsForLoadFromTracks()

virtual void SetUpAnimsForLoadFromTracks ( const Tab< TrackViewPick > &  res,
MaxSDK::Array< NodeAndAnims > &  nodeAnims 
) const
pure virtual

Creates a list of NodeAndAnims items to be used for loading animation based upon a specified list of TrackViewPick items.

Use this function instead of ILoadInterface10::SetUpAnimsForLoadExt when you want to load animation upon specific tracks.

Parameters
[in]resA Tab of TrackViewPick items, each of which specifies a single animatable track, usually from a TrackViewPick dlg.
See also
TrackViewPick
Parameters
[out]nodeAnimsThe returned list of nodes and their anim tracks. This can then be sent to either ILoadSaveAnimation::LoadAnimationNodeAnims or IMixer8::AddMaxMixer
See also
NodeAndAnims
IMixer8::AddMaxMixer
ILoadSaveAnimation::LoadAnimationNodeAnims

◆ SetUpAnimsForMapExt()

virtual void SetUpAnimsForMapExt ( const Tab< INode * > &  nodeTab,
DWORD  mapFlag,
MaxSDK::Array< NodeAndAnims > &  nodeAnims 
) const
pure virtual

Creates a list of NodeAndAnims items to be used for mapping animation.

Parameters
[in]nodeTabNodes whose tracks you want to map onto.
[in]mapFlagDetermines which tracks under the specified nodes will be mapped onto. The possible values of the mapFlag are found in the ILoadSaveAnimation::MapFlags enum. The possible vales are: eStripLayersInMap, if this value is set, then any layer controller name will be removed from the incoming controller names, otherwise it won't. Note that we don't use eMapControllerExactName or eMapControllerType flags.
[out]nodeAnimsThe returned list of nodes and their anim tracks based upon the flags passed into this function. This can then be sent to ILoadSaveAnimation::CreateMapFileNodeAnims.
See also
NodeAndAnims
ILoadSaveAnimation::CreateMapFileNodeAnims

◆ SetUpAnimsForMapFromTracks()

virtual void SetUpAnimsForMapFromTracks ( const Tab< TrackViewPick > &  res,
MaxSDK::Array< NodeAndAnims > &  nodeAnims 
) const
pure virtual

Creates a NodeAndAnims items to be used for mapping animation based upon a list of TrackViewPick items.

Use this function instead of ILoadInterface10::SetUpAnimsForMapExt when you want to map animation from specific tracks.

Parameters
[in]resA Tab of TrackViewPick items, each of which specifies a single animatable track, usually from a TrackViewPick dlg.
See also
TrackViewPick
Parameters
[out]nodeAnimsThe returned list of nodes and their anim tracks. This can then be sent to ILoadSaveAnimation::CreateMapFileNodeAnims.
See also
NodeAndAnims
ILoadSaveAnimation::CreateMapFileNodeAnims

◆ LoadAnimationDlgFromTracks()

virtual const MCHAR* LoadAnimationDlgFromTracks ( const Tab< TrackViewPick > &  res) const
pure virtual

Bring up a load animation dialog that will load animation to the each track that's specified in the tab of TrackViewPick items.

Parameters
[in]resA Tab of TrackViewPick items, each of which specifies a single animatable track, usually from a TrackViewPick dlg.
See also
TrackViewPick
Returns
The name of the file if a file gets loaded, otherwise returns NULL.

◆ SaveAnimationDlgFromTracks()

virtual const MCHAR* SaveAnimationDlgFromTracks ( const Tab< TrackViewPick > &  res) const
pure virtual

Bring up a save animation dialog that will save animation from the each track that's specified in the tab of TrackViewPick items.

Parameters
[in]resA Tab of TrackViewPick items, each of which specifies a single animatable track, usually from a TrackViewPick dlg.
See also
TrackViewPick
Returns
The name of the file if a file gets saved, otherwise returns NULL.

◆ ReplaceAttributesInMapFile()

virtual BOOL ReplaceAttributesInMapFile ( const MCHAR mapFile,
const MCHAR newMapFile,
Tab< MSTR * > &  oldStrings,
Tab< MSTR * > &  newStrings,
BOOL  mapName 
) const
pure virtual

Given a specified map file, it will replace all specified string attributes with the new string attributes, and a create a new map file with those new strings.

Parameters
[in]mapFileThe name of the map file that you want to search and replace attribute strings from.
[in]newMapFileThe name of the new map file that will be created with the replaced attribute strings.
[in]oldStringsThe list of old string values you wish to replace
[in]newStringsThe list of new string values that will replace the corresponding old string value.
[in]mapNameIf true it will replace the 'mapName' attribute in the map xml file, otherwise it will change the 'name' attribute value.
Returns
TRUE if we had strings to replace and we were able to create the new map file. If we return FALSE, no new map file was created.

◆ CreateDefaultMapFile()

virtual BOOL CreateDefaultMapFile ( Tab< INode * > &  nodeTab,
const MCHAR mapFile 
) const
pure virtual

Given a set of nodes it will create a map file that maps the nodes tracks onto themselves, which is the same as doing 'default' mapping.

Parameters
[in]nodeTabNodes you want to map to themselves.
[in]mapFileThe name of the map file you to create with the default mapping.
Returns
TRUE if the map file is created, FALSE if for some reason we couldn't create the map file.