aboutsummaryrefslogtreecommitdiff
path: root/mayaPlug/shaveVrayCmd.h
diff options
context:
space:
mode:
authorBen Marsh <[email protected]>2019-10-22 09:07:59 -0400
committerBen Marsh <[email protected]>2019-10-22 09:07:59 -0400
commitbd0027e737c6512397f841c22786274ed74b927f (patch)
treef7ffbdb8f3741bb7f24635616cc189cba5cb865c /mayaPlug/shaveVrayCmd.h
downloadshave-and-a-haircut-bd0027e737c6512397f841c22786274ed74b927f.tar.xz
shave-and-a-haircut-bd0027e737c6512397f841c22786274ed74b927f.zip
Adding Shave-and-a-Haircut 9.6
Diffstat (limited to 'mayaPlug/shaveVrayCmd.h')
-rw-r--r--mayaPlug/shaveVrayCmd.h83
1 files changed, 83 insertions, 0 deletions
diff --git a/mayaPlug/shaveVrayCmd.h b/mayaPlug/shaveVrayCmd.h
new file mode 100644
index 0000000..2895781
--- /dev/null
+++ b/mayaPlug/shaveVrayCmd.h
@@ -0,0 +1,83 @@
+#ifndef _HAIR_VRAY_COMMAND_H_
+#define _HAIR_VRAY_COMMAND_H_
+
+// Shave and a Haircut
+// (c) 2019 Epic Games
+// US Patent 6720962
+
+/**********************************************************************
+ *<
+ FILE: shaveVrayCmd.h
+
+ DESCRIPTION: Maya node
+
+ HISTORY: created 01-04-2010
+
+ *>
+ **********************************************************************/
+
+// Check for 64-bit OS and define the Bits64_ macro required by Maya headers
+#ifdef X64
+#ifndef Bits64_
+#define Bits64_
+#endif
+#endif
+
+#include <maya/MPxCommand.h>
+#include <maya/MArgList.h>
+#include <maya/MCommandResult.h>
+#include <maya/MSyntax.h>
+#include <maya/MNodeMessage.h>
+
+class shaveVrayCmd : public MPxCommand {
+ //friend void shaveVrayShaderChangeCbk(MNodeMessage::AttributeMessage msg, MPlug &plug, MPlug &otherPlug, void *clientData);
+public:
+ // command
+ //
+ static MString cmd;
+
+ // flags
+ //
+ //attaches shader to selected or all existing shave shapes
+ static char* sf_create;
+ static char* lf_create;
+
+ //deletes shader attached to selected or all existing shave shapes
+ static char* sf_delete;
+ static char* lf_delete;
+
+ //can be used with -create/delete flag
+ static char* sf_all;
+ static char* lf_all;
+
+#if 0
+ static char* sf_addCbk;
+ static char* lf_addCbk;
+
+ static char* sf_delCbk;
+ static char* lf_delCbk;
+#endif
+
+ shaveVrayCmd(){}
+ virtual ~shaveVrayCmd(){}
+
+ static void *creator() {return new shaveVrayCmd;}
+ static MSyntax newSyntax();
+
+ virtual MStatus doIt(const MArgList&);
+
+protected:
+
+ bool attachShaderTo (MObject shShape);
+ bool detachShaderFrom(MObject shShape);
+ bool setupLayers(MObject shaveShape, MObject vrayShape);
+ bool resetLayers(MObject vrayShape);
+#if 0
+ bool registerLayersCallback();
+ bool deregisterLayersCallack();
+#endif
+ bool registerShaderChangeCallback(MObject shape);
+ bool deregisterShaderChangeCallacks();
+};
+
+#endif