#if _MSC_VER >= 1700
#pragma warning( disable: 4005 )
#endif
#include "dx11Shader.h"
#include "dx11ShaderCmd.h"
#include "dx11ShaderOverride.h"
#include "dx11ShaderStrings.h"
#include "dx11ConeAngleToHotspotConverter.h"
#include "crackFreePrimitiveGenerator.h"
#include <maya/MFnPlugin.h>
#include <maya/MIOStream.h>
#include <maya/MGlobal.h>
#include <maya/MHWShaderSwatchGenerator.h>
#include <maya/MHardwareRenderer.h>
#include <maya/MDrawRegistry.h>
static const MString sDX11ShaderRegistrantId(
"DX11ShaderRegistrantId");
 
{
    MFnPlugin plugin( obj, 
"Autodesk", 
"1.0", MApiVersion );
 
    MString UserClassify = 
MString( 
"shader/surface/utility:drawdb/shader/surface/dx11Shader" );
 
    
    
    CHECK_MSTATUS( plugin.registerUIStrings( dx11ShaderStrings::registerMStringResources, 
"dx11ShaderInitStrings" ) );
 
    
    {
        static MString swatchName(
"dx11ShaderRenderSwatchGen");
 
        UserClassify = 
MString( 
"shader/surface/utility/:drawdb/shader/surface/dx11Shader:swatch/"+swatchName );
    }
    
    {
        MString sCmd = 
"evalDeferred \"source \\\"dx11Shader_initUI.mel\\\"\"";
 
    }
        dx11ShaderNode::typeId(),
        dx11ShaderNode::creator,
        dx11ShaderNode::initialize,
        &UserClassify));
    CHECK_MSTATUS( plugin.registerNode( 
"coneAngleToHotspotConverter", 
 
        dx11ConeAngleToHotspotConverter::typeId(), 
        dx11ConeAngleToHotspotConverter::creator, 
        dx11ConeAngleToHotspotConverter::initialize ));
        dx11ShaderCmd::creator,
        dx11ShaderCmd::newSyntax));
    
            "drawdb/shader/surface/dx11Shader",
            sDX11ShaderRegistrantId,
            dx11ShaderOverride::Creator));
    
    
    
    
    
    if (!status) {
        MString nodeAttr(
"dx11Shader.shader");
 
        MString errorString = dx11ShaderStrings::getString( dx11ShaderStrings::kErrorRegisterNodeType, nodeAttr );
 
    }
}
{
    
    
    CHECK_MSTATUS( plugin.deregisterNode( dx11ShaderNode::typeId() ));
 
    CHECK_MSTATUS( plugin.deregisterNode( dx11ConeAngleToHotspotConverter::typeId() ));
 
    
    
            "drawdb/shader/surface/dx11Shader",
            sDX11ShaderRegistrantId));
    
    
    
    
    
    if (!status) {
        MString nodeType(
"dx11Shader.shader");
 
        MString errorString = dx11ShaderStrings::getString( dx11ShaderStrings::kErrorDeregisterNodeType, nodeType );
 
    }
}