PostLoadCallback Class Reference
 
 
 
PostLoadCallback Class Reference

This reference page is linked to from the following overview topics: Changing Parameter Types, Post-Load Callbacks.


#include <ioapi.h>

Inheritance diagram for PostLoadCallback:
InterfaceServer MaxHeapOperators ParamBlock2PLCB ParamBlockPLCB PluginClassDefPLCB1 PluginClassDefPLCB2 ValueLoadPLCB ParamBlockPLCBEx

Class Description

See also:
Class ILoad, References.

Description:
This is the callback object used by ILoad::RegisterPostLoadCallback(). The proc() method will be called when everything has been loaded and all the references are in place. It is assumed that if the callback needs to be deleted, the proc() method will do it.

Public Member Functions

virtual void  proc (ILoad *iload)=0
virtual int  Priority ()
virtual INT_PTR  Execute (int cmd, ULONG_PTR arg1=0, ULONG_PTR arg2=0, ULONG_PTR arg3=0)

Member Function Documentation

virtual void proc ( ILoad iload ) [pure virtual]
Remarks:
This method will be called when loading is complete.
Parameters:
iload This class provides methods to load data from disk.

Implemented in ParamBlockPLCB, ParamBlockPLCBEx, ParamBlock2PLCB, PluginClassDefPLCB1, PluginClassDefPLCB2, and ValueLoadPLCB.

virtual int Priority ( ) [inline, virtual]
Remarks:
This method determines the order that the various registered callbacks execute. Lower priorities are run first-- allowable values {0..10}: 0 is reserved for ParamBlock2PLCB & ParamBlockPLCB. This method is overridden, for example, by the ParmBlock2 PostLoadCallbacks to return 1 so it can execute before the others.
Returns:
The allowable return values are 0 to 10, with 5 being the default. 0 is reserved for ParamBlock2PLCB and ParamBlockPLCB..
Default Implementation:
{ return 5; }
Note:
Custom Attributes are added to their owner objects in a Priority 6 PostLoadCall. Object Custom Attributes and object MetaData should be expected only in PostLoadCalls with a Priority of 7 or lower. Custom Attributes added in PostLoadCalls with a higher Priority may be replaced by the Priority 6 PostLoadCall. PostLoadCalls with a priority less than 0 will be treated as 0, greater than 10 will be treated as 10.

Reimplemented in ParamBlockPLCB, ParamBlock2PLCB, PluginClassDefPLCB1, and PluginClassDefPLCB2.

{ return 5; }  
virtual INT_PTR Execute ( int  cmd,
ULONG_PTR  arg1 = 0,
ULONG_PTR  arg2 = 0,
ULONG_PTR  arg3 = 0 
) [inline, virtual]
Remarks:
This is a general purpose function that allows the API to be extended in the future. The 3ds Max development team can assign new cmd numbers and continue to add functionality to this class without having to 'break' the API.

This is reserved for future use.
Parameters:
cmd The command to execute.
arg1 Optional argument 1 (defined uniquely for each cmd).
arg2 Optional argument 2.
arg3 Optional argument 3.
Returns:
An integer return value (defined uniquely for each cmd).
Default Implementation:
{ return 0; }

Reimplemented in ParamBlockPLCB, and ParamBlock2PLCB.

{ return 0; }