Public Member Functions

IParamBlock2PostLoadInfo Class Reference

This reference page is linked to from the following overview topics: Getting and Setting Parameter Block Version.


Search for all occurrences

Detailed Description

Informational class about ParamBlock2 objects loaded from file.

This allows a plugin to detect when an obsolete version of itself has been loaded, so the plugin can migrate obsolete parameters to the newer version. The information is available only under the following conditions, indicating that an obsolete file was loaded: 1) The current version of the ParamBlock2 uses the P_VERSION tag 2) The loaded version either did not use P_VERSION, or the version numbers don't match 3) The information is available only during a PostLoadCallback; it is deleted after load. To obtain a pointer to this class, query the plugin's ParamBlockDesc2 as follows: postLoadInfo = (IParamBlock2PostLoadInfo*)desc->GetInterface(IPARAMBLOCK2POSTLOADINFO_ID);

#include <iparamb2.h>

Inheritance diagram for IParamBlock2PostLoadInfo:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual Interface_ID  GetID ()
  Returns the interface ID of this class, IPARAMBLOCK2POSTLOADINFO_ID.
virtual BaseInterface GetInterface (Interface_ID id)=0
  This method allows for future extention.
virtual ParamBlockDesc2 GetParent ()=0
  Returns the current ParamBlockDesc2 which this information is associated with.
virtual DWORD  GetVersion ()=0
  Returns the version number of the ParamBlock2 loaded from file.
virtual IntTab GetParamLoaded ()=0
  Returns the ID numbers of the parameters in the ParamBlock2 loaded from file.
virtual IntTab GetParamReorder ()=0
  Returns a mapping from old parameter indices to current parameter indices.

Member Function Documentation

virtual Interface_ID GetID ( ) [inline, virtual]

Returns the interface ID of this class, IPARAMBLOCK2POSTLOADINFO_ID.

Reimplemented from BaseInterface.

{return IPARAMBLOCK2POSTLOADINFO_ID;}
virtual BaseInterface* GetInterface ( Interface_ID  id ) [pure virtual]

This method allows for future extention.

Returns itself if the parameter is IPARAMBLOCK2POSTLOADINFO_ID. Otherwise returns BaseInterface::GetInterface(id)

Parameters:
[in] id The ID of the interface

Reimplemented from BaseInterface.

virtual ParamBlockDesc2* GetParent ( ) [pure virtual]

Returns the current ParamBlockDesc2 which this information is associated with.

virtual DWORD GetVersion ( ) [pure virtual]

Returns the version number of the ParamBlock2 loaded from file.

This is either the P_VERSION number from the obsolete plugin, or if the plugin did not use P_VERSION it is equal to the value 3DSMAX_VERSION when the file was saved

virtual IntTab& GetParamLoaded ( ) [pure virtual]

Returns the ID numbers of the parameters in the ParamBlock2 loaded from file.

The numbers are in their original order used by the obsolete plugin.

virtual IntTab& GetParamReorder ( ) [pure virtual]

Returns a mapping from old parameter indices to current parameter indices.

Each entry is an index into the current ParamBlock2; the number of entries equals the current number of parameters. The parameters are listed in an order that matches the order from the obsolete plugin. This is used internally during load. The reference numbering of the current ParamBlock2 is temporarily reordered, allowing objects and controllers referenced by the ParamBlock2 to load correctly even when the parameter order changes between plugin versions.


IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo
IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo IParamBlock2PostLoadInfo