Public Member Functions | Public Attributes

ParamBlockPLCB Class Reference

This reference page is linked to from the following overview topics: Backward Compatibility.


Search for all occurrences

Detailed Description

See also:
Class ParamVersionDesc.
Description:
This is a handy post load call back for fixing up parameter blocks. This will look up the version of the loaded callback and fix it up so it matches the current version. NOTE: this deletes itself when its done. See Parameter Maps for more details.

#include <iparamb.h>

Inheritance diagram for ParamBlockPLCB:
Inheritance graph
[legend]

List of all members.

Public Member Functions

  ParamBlockPLCB (ParamVersionDesc *v, int cnt, ParamVersionDesc *c, ReferenceTarget *t, int refNum)
CoreExport void  proc (ILoad *iload)
int  Priority ()
CoreExport INT_PTR  Execute (int cmd, ULONG_PTR arg1=0, ULONG_PTR arg2=0, ULONG_PTR arg3=0)

Public Attributes

ParamVersionDesc versions
int  count
ParamVersionDesc cur
ReferenceTarget targ
int  pbRefNum

Constructor & Destructor Documentation

ParamBlockPLCB ( ParamVersionDesc v,
int  cnt,
ParamVersionDesc c,
ReferenceTarget t,
int  refNum 
) [inline]
Remarks:
Constructor.
Parameters:
ParamVersionDesc *v

This is an array of ParamVersionDescs.

int cnt

This is the number of elements in the array specified above.

ParamVersionDesc *c

This is a pointer to the current version of the ParamVersionDesc.

ReferenceTarget *t

This is a pointer to a reference target. This is usually the this pointer of the object.

int refNum

This is the reference index of the parameter block.

See also:
Advanced Topics section under Parameter Maps for an explanation of how this is used.
            {versions=v;count=cnt;cur=c;targ=t;pbRefNum=refNum;}

Member Function Documentation

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

Implements PostLoadCallback.

int Priority ( ) [inline, virtual]
Remarks:
This method determines the order that the various registered callbacks execute. 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.

Reimplemented from PostLoadCallback.

{ return 0; }
CoreExport INT_PTR Execute ( int  cmd,
ULONG_PTR  arg1 = 0,
ULONG_PTR  arg2 = 0,
ULONG_PTR  arg3 = 0 
) [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 from PostLoadCallback.


Member Data Documentation

int count
int pbRefNum

ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB
ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB ParamBlockPLCB