summaryrefslogtreecommitdiffstats
path: root/tools/worldbuilder/code/main/pluginMain.h
diff options
context:
space:
mode:
Diffstat (limited to 'tools/worldbuilder/code/main/pluginMain.h')
-rw-r--r--tools/worldbuilder/code/main/pluginMain.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/tools/worldbuilder/code/main/pluginMain.h b/tools/worldbuilder/code/main/pluginMain.h
new file mode 100644
index 0000000..3645a0d
--- /dev/null
+++ b/tools/worldbuilder/code/main/pluginMain.h
@@ -0,0 +1,38 @@
+//----------------------------------------
+// MACROS
+//----------------------------------------
+
+#define REGISTER_COMMAND( p, c ) if ( ! ( ( p ).registerCommand( c##::stringId, \
+ c##::creator ) \
+ ) \
+ ) return MS::kFailure
+
+#define REGISTER_CONTEXT( p, c ) if ( ! ( ( p ).registerContextCommand( c##::stringId, \
+ c##Cmd::creator ) \
+ ) \
+ ) return MS::kFailure
+
+
+#define REGISTER_LOCATOR( p, n ) if ( ! ( ( p ).registerNode( n##::stringId, \
+ n##::id, \
+ n##::creator, \
+ n##::initialize, \
+ MPxNode::kLocatorNode ) \
+ ) \
+ ) return MS::kFailure
+
+#define REGISTER_NODE( p, n ) if ( ! ( ( p ).registerNode( n##::stringId, \
+ n##::id, \
+ n##::creator, \
+ n##::initialize ) \
+ ) \
+ ) return MS::kFailure
+
+#define DEREGISTER_COMMAND( p, c ) ( p ).deregisterCommand( c##::stringId )
+
+#define DEREGISTER_CONTEXT( p, c ) ( p ).deregisterContextCommand( c##::stringId )
+
+//#define DEREGISTER_NODE( p, n ) n##::Unload();\
+// ( p ).deregisterNode( n##::id )
+
+#define DEREGISTER_NODE( p, n ) ( p ).deregisterNode( n##::id )