Detailed Description
- See also:
- Class Interface,
Class
DllDir, Class BitmapManager, Class ITreeEnumProc, Class
ILoad, Class ISave.
- Description:
- This class is available in release 3.0 and later only.
This is the base class for the creation of Global Utility
Plug-Ins.
These plug-ins work as follows: At 3ds Max startup time, before 3ds
Max begins its message loop and after all its subsystems are
initialized, the GUP
Manager will scan the plug-in directory and load all plug-ins with
the "<b>*.gup</b>" extension. One by one, the GUP Manager will call the
plug-in's Start()
method. At that point the plug-in would do its initialization and
decide if it wants to remain loaded or if it can be discarded. As
an option, it is also possible for a GUP plug-in for make 3ds Max fail and abort
all together. If a plug-in wishes to remain loaded (after returning
a GUPRESULT_KEEP result code from the Start()
method described below), it should start a new thread for its code
as there is no other call from 3ds Max.
Unlike other 3ds Max plug-ins, GUP's do not provide a user
interface. If developers of GUP plug-ins desire to present an interface,
they can develop a standard 3ds Max utility plug-in to do so. See
Class UtilityObj.
There is some sample code using this technique availalble in
/MAXSDK/SAMPLES/GUP/COMSRV/MSCOM.CPP. This Utility plug-in
(COMSRV.DLU) accesses the COM/DCOM plug-in and allows the
user to "register" or "unregister" the COM interface. See the
Advanced Topics section COM/DCOM Interface.
- Plug-In Information:
- Class Defined In GUP.H
Super Class ID GUP_CLASS_ID
Standard File Name Extension GUP
Extra Include File Needed None
#include <gup.h>
List of all members.
Constructor & Destructor Documentation
virtual GUPExport ~GUP |
( |
|
) |
[virtual] |
Member Function Documentation
virtual GUPExport HINSTANCE MaxInst |
( |
|
) |
[virtual] |
virtual GUPExport HWND MaxWnd |
( |
|
) |
[virtual] |
virtual GUPExport DllDir* MaxDllDir |
( |
|
) |
[virtual] |
virtual GUPExport Interface* Max |
( |
|
) |
[virtual] |
virtual GUPExport int EnumTree |
( |
ITreeEnumProc * |
proc |
) |
[virtual] |
- Parameters:
- ITreeEnumProc *proc
This callback object is called once for each INode in the scene.
- Returns:
- Nonzero if the process was aborted by the callback
(TREE_ABORT); otherwise 0.
virtual GUPExport bool ExecuteStringScript |
( |
MCHAR * |
string |
) |
[virtual] |
- Parameters:
- MCHAR *string
Points to the MAXScript command to execute.
- Returns:
- TRUE indicates if the command was successfully sent to
MAXScript; FALSE if it was not sent. Note that this does not
reflect the success of the embedded command.
virtual GUPExport bool ExecuteFileScript |
( |
MCHAR * |
file |
) |
[virtual] |
- Parameters:
- MCHAR *file
The file name for the script file.
- Returns:
- TRUE indicates if the script was successfully sent to
MAXScript; FALSE if it was not sent. Note that this does not
reflect the result of the script.
virtual GUPExport DWORD Start |
( |
|
) |
[pure virtual] |
- Returns:
- One of the following values:
GUPRESULT_KEEP
Return this to value to have the plug-in remain loaded.
GUPRESULT_NOKEEP
Return this value to discard.
GUPRESULT_ABORT
Return this value to cause 3ds Max to shut down.
virtual GUPExport void Stop |
( |
|
) |
[pure virtual] |
virtual GUPExport DWORD_PTR Control |
( |
DWORD |
parameter |
) |
[inline, virtual] |
- Parameters:
- DWORD parameter
The meaning of this parameter is defined by the plug-in.
- Returns:
- The return value meaning is also defined by the plug-in.
- Default Implementation:
- { return 0;}
{ UNUSED_PARAM(parameter); return 0;}
- Parameters:
- ISave
*isave
An interface used for saving data.
- Parameters:
- ILoad
*iload
An interface used for loading data.
virtual GUPExport void DeleteThis |
( |
|
) |
[inline, virtual] |