/* this file has been autogenerated by vtkNodeJsWrap */
/* editing this might proof futile */

#ifndef NATIVE_EXTENSION_VTK_VTKRANDOMATTRIBUTEGENERATORWRAP_H
#define NATIVE_EXTENSION_VTK_VTKRANDOMATTRIBUTEGENERATORWRAP_H

#include <nan.h>

#include <vtkSmartPointer.h>
#include <vtkRandomAttributeGenerator.h>

#include "vtkPassInputTypeAlgorithmWrap.h"
#include "../../plus/plus.h"

class VtkRandomAttributeGeneratorWrap : public VtkPassInputTypeAlgorithmWrap
{
	public:
		using Nan::ObjectWrap::Wrap;
		static void Init(v8::Local<v8::Object> exports);
		static void InitPtpl();
		static void ConstructorGetter(
			v8::Local<v8::String> property,
			const Nan::PropertyCallbackInfo<v8::Value>& info);

		VtkRandomAttributeGeneratorWrap(vtkSmartPointer<vtkRandomAttributeGenerator>);
		VtkRandomAttributeGeneratorWrap();
		~VtkRandomAttributeGeneratorWrap( );
		static Nan::Persistent<v8::FunctionTemplate> ptpl;

	private:
		static void New(const Nan::FunctionCallbackInfo<v8::Value>& info);

		static void AttributesConstantPerBlockOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void AttributesConstantPerBlockOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateAllCellDataOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateAllCellDataOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateAllDataOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateAllDataOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateAllPointDataOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateAllPointDataOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateCellArrayOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateCellArrayOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateCellNormalsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateCellNormalsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateCellScalarsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateCellScalarsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateCellTCoordsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateCellTCoordsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateCellTensorsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateCellTensorsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateCellVectorsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateCellVectorsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateFieldArrayOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GenerateFieldArrayOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePointArrayOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePointArrayOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePointNormalsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePointNormalsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePointScalarsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePointScalarsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePointTCoordsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePointTCoordsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePointTensorsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePointTensorsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePointVectorsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePointVectorsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetAttributesConstantPerBlock(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetClassName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetDataType(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGenerateCellArray(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGenerateCellNormals(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGenerateCellScalars(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGenerateCellTCoords(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGenerateCellTensors(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGenerateCellVectors(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGenerateFieldArray(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGeneratePointArray(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGeneratePointNormals(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGeneratePointScalars(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGeneratePointTCoords(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGeneratePointTensors(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGeneratePointVectors(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetMaximumComponentValue(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetMinimumComponentValue(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetNumberOfComponents(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetNumberOfComponentsMaxValue(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetNumberOfComponentsMinValue(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void IsA(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void NewInstance(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SafeDownCast(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetAttributesConstantPerBlock(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetComponentRange(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDataType(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDataTypeToBit(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDataTypeToChar(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDataTypeToDouble(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDataTypeToFloat(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDataTypeToInt(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDataTypeToLong(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDataTypeToShort(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDataTypeToUnsignedChar(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDataTypeToUnsignedInt(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDataTypeToUnsignedLong(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDataTypeToUnsignedShort(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGenerateCellArray(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGenerateCellNormals(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGenerateCellScalars(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGenerateCellTCoords(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGenerateCellTensors(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGenerateCellVectors(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGenerateFieldArray(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGeneratePointArray(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGeneratePointNormals(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGeneratePointScalars(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGeneratePointTCoords(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGeneratePointTensors(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGeneratePointVectors(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetMaximumComponentValue(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetMinimumComponentValue(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetNumberOfComponents(const Nan::FunctionCallbackInfo<v8::Value>& info);

#ifdef VTK_NODE_PLUS_VTKRANDOMATTRIBUTEGENERATORWRAP_CLASSDEF
		VTK_NODE_PLUS_VTKRANDOMATTRIBUTEGENERATORWRAP_CLASSDEF
#endif
};

#endif
