Public Member Functions

SceneImport Class Reference

This reference page is linked to from the following overview topics: Data Import and Export Plug-ins, Overview: Class Hierarchy, Plug-in Base Classes, Writing Importer Plug-ins.


Search for all occurrences

Detailed Description

See also:
Class ImpInterface, Class Interface.

Description:
This is a base class for creating file import plug-ins. The plug-in implements methods of this class to describe the properties of the import plug-in and a method that handles the actual import process.

#include <impexp.h>

Inheritance diagram for SceneImport:
Inheritance graph
[legend]

List of all members.

Public Member Functions

  SceneImport ()
virtual  ~SceneImport ()
virtual int  ExtCount ()=0
virtual const MCHAR *  Ext (int n)=0
virtual const MCHAR *  LongDesc ()=0
virtual const MCHAR *  ShortDesc ()=0
virtual const MCHAR *  AuthorName ()=0
virtual const MCHAR *  CopyrightMessage ()=0
virtual const MCHAR *  OtherMessage1 ()=0
virtual const MCHAR *  OtherMessage2 ()=0
virtual unsigned int  Version ()=0
virtual void  ShowAbout (HWND hWnd)=0
virtual int  DoImport (const MCHAR *name, ImpInterface *ii, Interface *i, BOOL suppressPrompts=FALSE)=0
virtual int  ZoomExtents ()

Constructor & Destructor Documentation

SceneImport ( ) [inline]
Remarks:
Constructor.
{};
virtual ~SceneImport ( ) [inline, virtual]
Remarks:
Destructor.
{};

Member Function Documentation

virtual int ExtCount ( ) [pure virtual]
Remarks:
Returns the number of file name extensions supported by the plug-in.
virtual const MCHAR* Ext ( int  n ) [pure virtual]
Remarks:
Returns the 'i-th' file name extension (i.e. "3DS").
Parameters:
int i

The index of the file name extension to return.
virtual const MCHAR* LongDesc ( ) [pure virtual]
Remarks:
Returns a long ASCII description of the file type being imported (i.e. "Autodesk 3D Studio File").
virtual const MCHAR* ShortDesc ( ) [pure virtual]
Remarks:
Returns a short ASCII description of the file type being imported (i.e. "3D Studio").
virtual const MCHAR* AuthorName ( ) [pure virtual]
Remarks:
Returns the ASCII Author name.
virtual const MCHAR* CopyrightMessage ( ) [pure virtual]
Remarks:
Returns the ASCII Copyright message for the plug-in.
virtual const MCHAR* OtherMessage1 ( ) [pure virtual]
Remarks:
Returns the first message string that is displayed.
virtual const MCHAR* OtherMessage2 ( ) [pure virtual]
Remarks:
Returns the second message string that is displayed.
virtual unsigned int Version ( ) [pure virtual]
Remarks:
Returns the version number of the import plug-in. The format is the version number * 100 (i.e. v3.01 = 301).
virtual void ShowAbout ( HWND  hWnd ) [pure virtual]
Remarks:
This method is called to have the plug-in display its "About..." box.
Parameters:
HWND hWnd

The parent window handle for the dialog.
virtual int DoImport ( const MCHAR *  name,
ImpInterface ii,
Interface i,
BOOL  suppressPrompts = FALSE 
) [pure virtual]
Remarks:
This method actually performs the file import.
Parameters:
const MCHAR *name

The file name chosen by the user to import.

ImpInterface *ii

An import interface pointer that may be used to create objects and nodes in the scene.

Interface *i

Pass the 3ds Max interface pointer here.

BOOL suppressPrompts=FALSE

This parameter is available in release 2.0 and later only.

When TRUE, the plug-in must not display any dialogs requiring user input. It is up to the plug-in as to how to handle error conditions or situations requiring user input. This is an option set up for the 3ds Max API in order for plug-in developers to create batch import plugins which operate unattended. See Interface::ImportFromFile().
Returns:
One of the following three values should be returned

#define IMPEXP_FAIL 0

#define IMPEXP_SUCCESS 1

#define IMPEXP_CANCEL 2
virtual int ZoomExtents ( ) [inline, virtual]
Remarks:
This method is used to control the zoom extents done after the import is accomplished. It returns a value that indicates if the plug-in should override the user preference setting.

Also see the method Interface::GetImportZoomExtents() which returns the state of the system zoom extents flag.
Returns:
One of the following values:

ZOOMEXT_NOT_IMPLEMENTED

Indicates to use the preference setting.

ZOOMEXT_YES

Indicates to do a zoom extents after import regardless of the preference setting.

ZOOMEXT_NO

Indicates to not do a zoom extents regardless of the preference setting.
Default Implementation:
{ return ZOOMEXT_NOT_IMPLEMENTED; }
{ return ZOOMEXT_NOT_IMPLEMENTED; } // Override this for zoom extents control

SceneImport SceneImport SceneImport SceneImport SceneImport SceneImport SceneImport SceneImport SceneImport SceneImport
SceneImport SceneImport SceneImport SceneImport SceneImport SceneImport SceneImport SceneImport SceneImport SceneImport