2
Copyright (c) 2008-2009 NetAllied Systems GmbH
4
This file is part of COLLADAMax.
6
Portions of the code are:
7
Copyright (c) 2005-2007 Feeling Software Inc.
8
Copyright (c) 2005-2007 Sony Computer Entertainment America
10
Based on the 3dsMax COLLADASW Tools:
11
Copyright (c) 2005-2006 Autodesk Media Entertainment
13
Licensed under the MIT Open Source License,
14
for details please see LICENSE file or the website
15
http://www.opensource.org/licenses/mit-license.php
19
#ifndef __COLLADAMAX_COLLADASWEXPORTER_H__
20
#define __COLLADAMAX_COLLADASWEXPORTER_H__
22
#include "COLLADAMaxPrerequisites.h"
23
#include "COLLADABUIDList.h"
29
//#define COLLADASWEXPORTER_CLASS_ID Class_ID(0x7d656d57, 0x6f963848)
34
// main exporter class
36
class COLLADAExporter : public SceneExport
40
static const Class_ID COLLADASWEXPORTER_CLASS_ID;
41
static const TCHAR* PROGRESSSTART;
47
/** Holds the unique file names of the exported XRef files. This is necessary if all files
48
are exported into the same directory.*/
49
COLLADABU::IDList mXRefExportFileNames;
53
virtual ~COLLADAExporter();
56
int ExtCount(); // Returns the number of file name extensions supported by the plug-in.
57
const TCHAR* Ext ( int n ); // Return the 'i-th' file name extension (i.e. "dae").
58
const TCHAR* LongDesc(); // Long ASCII description (i.e. "Autodesk 3D Studio File")
59
const TCHAR* ShortDesc(); // Short ASCII description (i.e. "3D Studio")
60
const TCHAR* AuthorName(); // ASCII Author name
61
const TCHAR* CopyrightMessage(); // ASCII Copyright message
62
const TCHAR* OtherMessage1(); // Other message #1
63
const TCHAR* OtherMessage2(); // Other message #2
64
unsigned int Version(); // Version number * 100 (i.e. v3.01 = 301)
65
void ShowAbout ( HWND hWnd ); // Show DLL's "About..." box
67
BOOL SupportsOptions ( int ext, DWORD options );
68
int DoExport ( const TCHAR* name, ExpInterface* ei, Interface* i, BOOL suppressPrompts = FALSE, DWORD options = 0 );
70
static DWORD WINAPI fn ( LPVOID );
73
/** Disable copy constructor*/
74
COLLADAExporter ( const COLLADAExporter & colladaExporter );
76
/** Disable assignment operator*/
77
COLLADAExporter & operator= ( const COLLADAExporter & colladaExporter );
81
ClassDesc2* getCOLLADAExporterDesc();
85
// ColladaExporterClassDesc
88
class ColladaExporterClassDesc : public ClassDesc2
97
void * Create ( BOOL isLoading = FALSE )
100
return new COLLADAExporter();
103
const TCHAR * ClassName()
105
return __T("OpenCOLLADAExporter");
108
SClass_ID SuperClassID()
110
return SCENE_EXPORT_CLASS_ID;
115
return COLLADAExporter::COLLADASWEXPORTER_CLASS_ID;
118
const TCHAR* Category()
120
return __T("Export");
121
} //GetString(IDS_CATEGORY_E); }
123
const TCHAR* InternalName()
125
return _T ( "OpenCOLLADAExporter" );
126
} // returns fixed parsable name (scripter-visible name)
128
HINSTANCE HInstance()
131
} // returns owning module handle
140
#endif // __COLLADAMAX_COLLADASWEXPORTER_H__