diff options
| author | Ben Marsh <[email protected]> | 2019-10-22 09:07:59 -0400 |
|---|---|---|
| committer | Ben Marsh <[email protected]> | 2019-10-22 09:07:59 -0400 |
| commit | bd0027e737c6512397f841c22786274ed74b927f (patch) | |
| tree | f7ffbdb8f3741bb7f24635616cc189cba5cb865c /mayaPlug/shaveVrayCmd.h | |
| download | shave-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.h | 83 |
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 |