Public Member Functions

ILoadSaveAnimation10 Class Reference

Search for all occurrences

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()

#include <ILoadSaveAnimation.h>

Inheritance diagram for ILoadSaveAnimation10:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual void  SetUpAnimsForSaveExt (const Tab< INode * > &nodeTab, DWORD saveFlag, Tab< NodeAndAnims > &nodeAnims) const =0
  Creates a list of NodeAndAnims items to be used for saving animation.
virtual void  SetUpAnimsForSaveFromTracks (const Tab< TrackViewPick > &res, Tab< NodeAndAnims > &nodeAnims) const =0
  Creates a list of NodeAndAnims items to be used for saving animation based upon a specified list of TrackViewPick items.
virtual void  SetUpAnimsForLoadExt (const Tab< INode * > &nodeTab, DWORD loadFlag, Tab< NodeAndAnims > &nodeAnims) const =0
  Creates a list of NodeAndAnims items to be used for loading animation or for putting tracks into the mixer.
virtual void  SetUpAnimsForLoadFromTracks (const Tab< TrackViewPick > &res, Tab< NodeAndAnims > &nodeAnims) const =0
  Creates a list of NodeAndAnims items to be used for loading animation based upon a specified list of TrackViewPick items.
virtual void  SetUpAnimsForMapExt (const Tab< INode * > &nodeTab, DWORD mapFlag, Tab< NodeAndAnims > &nodeAnims) const =0
  Creates a list of NodeAndAnims items to be used for mapping animation.
virtual void  SetUpAnimsForMapFromTracks (const Tab< TrackViewPick > &res, Tab< NodeAndAnims > &nodeAnims) const =0
  Creates a NodeAndAnims items to be used for mapping animation based upon a list of TrackViewPick items.
virtual const MCHAR *  LoadAnimationDlgFromTracks (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.
virtual const MCHAR *  SaveAnimationDlgFromTracks (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.
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.
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.

Member Function Documentation

virtual void SetUpAnimsForSaveExt ( const Tab< INode * > &  nodeTab,
DWORD  saveFlag,
Tab< 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] nodeTab Nodes whose tracks you want to save out.
[in] saveFlag Determines 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] nodeAnims The 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
virtual void SetUpAnimsForSaveFromTracks ( const Tab< TrackViewPick > &  res,
Tab< 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] res A Tab of TrackViewPick items, each of which specifies a single animatable track, usually from a TrackViewPick dlg.
See also:
TrackViewPick
Parameters:
[out] nodeAnims The 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
virtual void SetUpAnimsForLoadExt ( const Tab< INode * > &  nodeTab,
DWORD  loadFlag,
Tab< 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] nodeTab Nodes whose tracks you want to load onto.
[in] loadFlag Determines 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] nodeAnims The 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
virtual void SetUpAnimsForLoadFromTracks ( const Tab< TrackViewPick > &  res,
Tab< 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] res A Tab of TrackViewPick items, each of which specifies a single animatable track, usually from a TrackViewPick dlg.
See also:
TrackViewPick
Parameters:
[out] nodeAnims The 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
virtual void SetUpAnimsForMapExt ( const Tab< INode * > &  nodeTab,
DWORD  mapFlag,
Tab< NodeAndAnims > &  nodeAnims 
) const [pure virtual]

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

Parameters:
[in] nodeTab Nodes whose tracks you want to map onto.
[in] mapFlag Determines 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] nodeAnims The 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
virtual void SetUpAnimsForMapFromTracks ( const Tab< TrackViewPick > &  res,
Tab< 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] res A Tab of TrackViewPick items, each of which specifies a single animatable track, usually from a TrackViewPick dlg.
See also:
TrackViewPick
Parameters:
[out] nodeAnims The returned list of nodes and their anim tracks. This can then be sent to ILoadSaveAnimation::CreateMapFileNodeAnims.
See also:
NodeAndAnims
ILoadSaveAnimation::CreateMapFileNodeAnims
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] res A 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.
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] res A 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.
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] mapFile The name of the map file that you want to search and replace attribute strings from.
[in] newMapFile The name of the new map file that will be created with the replaced attribute strings.
[in] oldStrings The list of old string values you wish to replace
[in] newStrings The list of new string values that will replace the corresponding old string value.
[in] mapName If 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.
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] nodeTab Nodes you want to map to themselves.
[in] mapFile The 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.

ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10
ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10 ILoadSaveAnimation10