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

#define VTK_WRAPPING_CXX
#define VTK_STREAMS_FWD_ONLY
#include <nan.h>

#include "vtkDataSetAlgorithmWrap.h"
#include "vtkFieldDataToAttributeDataFilterWrap.h"
#include "vtkObjectBaseWrap.h"
#include "vtkDataArrayWrap.h"
#include "vtkFieldDataWrap.h"
#include "../../plus/plus.h"

using namespace v8;

extern Nan::Persistent<v8::Object> vtkNodeJsNoWrap;
Nan::Persistent<v8::FunctionTemplate> VtkFieldDataToAttributeDataFilterWrap::ptpl;

VtkFieldDataToAttributeDataFilterWrap::VtkFieldDataToAttributeDataFilterWrap()
{ }

VtkFieldDataToAttributeDataFilterWrap::VtkFieldDataToAttributeDataFilterWrap(vtkSmartPointer<vtkFieldDataToAttributeDataFilter> _native)
{ native = _native; }

VtkFieldDataToAttributeDataFilterWrap::~VtkFieldDataToAttributeDataFilterWrap()
{ }

void VtkFieldDataToAttributeDataFilterWrap::Init(v8::Local<v8::Object> exports)
{
	Nan::SetAccessor(exports, Nan::New("vtkFieldDataToAttributeDataFilter").ToLocalChecked(), ConstructorGetter);
	Nan::SetAccessor(exports, Nan::New("FieldDataToAttributeDataFilter").ToLocalChecked(), ConstructorGetter);
}

void VtkFieldDataToAttributeDataFilterWrap::ConstructorGetter(
	v8::Local<v8::String> property,
	const Nan::PropertyCallbackInfo<v8::Value>& info)
{
	InitPtpl();
	info.GetReturnValue().Set(Nan::New(ptpl)->GetFunction());
}

void VtkFieldDataToAttributeDataFilterWrap::InitPtpl()
{
	if (!ptpl.IsEmpty()) return;
	v8::Local<v8::FunctionTemplate> tpl = Nan::New<v8::FunctionTemplate>(New);
	VtkDataSetAlgorithmWrap::InitPtpl( );
	tpl->Inherit(Nan::New<FunctionTemplate>(VtkDataSetAlgorithmWrap::ptpl));
	tpl->SetClassName(Nan::New("VtkFieldDataToAttributeDataFilterWrap").ToLocalChecked());
	tpl->InstanceTemplate()->SetInternalFieldCount(1);

	Nan::SetPrototypeMethod(tpl, "DefaultNormalizeOff", DefaultNormalizeOff);
	Nan::SetPrototypeMethod(tpl, "defaultNormalizeOff", DefaultNormalizeOff);

	Nan::SetPrototypeMethod(tpl, "DefaultNormalizeOn", DefaultNormalizeOn);
	Nan::SetPrototypeMethod(tpl, "defaultNormalizeOn", DefaultNormalizeOn);

	Nan::SetPrototypeMethod(tpl, "GetDefaultNormalize", GetDefaultNormalize);
	Nan::SetPrototypeMethod(tpl, "getDefaultNormalize", GetDefaultNormalize);

	Nan::SetPrototypeMethod(tpl, "GetFieldArray", GetFieldArray);
	Nan::SetPrototypeMethod(tpl, "getFieldArray", GetFieldArray);

	Nan::SetPrototypeMethod(tpl, "GetInputField", GetInputField);
	Nan::SetPrototypeMethod(tpl, "getInputField", GetInputField);

	Nan::SetPrototypeMethod(tpl, "GetNormalComponentArrayComponent", GetNormalComponentArrayComponent);
	Nan::SetPrototypeMethod(tpl, "getNormalComponentArrayComponent", GetNormalComponentArrayComponent);

	Nan::SetPrototypeMethod(tpl, "GetNormalComponentArrayName", GetNormalComponentArrayName);
	Nan::SetPrototypeMethod(tpl, "getNormalComponentArrayName", GetNormalComponentArrayName);

	Nan::SetPrototypeMethod(tpl, "GetNormalComponentMaxRange", GetNormalComponentMaxRange);
	Nan::SetPrototypeMethod(tpl, "getNormalComponentMaxRange", GetNormalComponentMaxRange);

	Nan::SetPrototypeMethod(tpl, "GetNormalComponentMinRange", GetNormalComponentMinRange);
	Nan::SetPrototypeMethod(tpl, "getNormalComponentMinRange", GetNormalComponentMinRange);

	Nan::SetPrototypeMethod(tpl, "GetNormalComponentNormalizeFlag", GetNormalComponentNormalizeFlag);
	Nan::SetPrototypeMethod(tpl, "getNormalComponentNormalizeFlag", GetNormalComponentNormalizeFlag);

	Nan::SetPrototypeMethod(tpl, "GetOutputAttributeData", GetOutputAttributeData);
	Nan::SetPrototypeMethod(tpl, "getOutputAttributeData", GetOutputAttributeData);

	Nan::SetPrototypeMethod(tpl, "GetScalarComponentArrayComponent", GetScalarComponentArrayComponent);
	Nan::SetPrototypeMethod(tpl, "getScalarComponentArrayComponent", GetScalarComponentArrayComponent);

	Nan::SetPrototypeMethod(tpl, "GetScalarComponentArrayName", GetScalarComponentArrayName);
	Nan::SetPrototypeMethod(tpl, "getScalarComponentArrayName", GetScalarComponentArrayName);

	Nan::SetPrototypeMethod(tpl, "GetScalarComponentMaxRange", GetScalarComponentMaxRange);
	Nan::SetPrototypeMethod(tpl, "getScalarComponentMaxRange", GetScalarComponentMaxRange);

	Nan::SetPrototypeMethod(tpl, "GetScalarComponentMinRange", GetScalarComponentMinRange);
	Nan::SetPrototypeMethod(tpl, "getScalarComponentMinRange", GetScalarComponentMinRange);

	Nan::SetPrototypeMethod(tpl, "GetScalarComponentNormalizeFlag", GetScalarComponentNormalizeFlag);
	Nan::SetPrototypeMethod(tpl, "getScalarComponentNormalizeFlag", GetScalarComponentNormalizeFlag);

	Nan::SetPrototypeMethod(tpl, "GetTCoordComponentArrayComponent", GetTCoordComponentArrayComponent);
	Nan::SetPrototypeMethod(tpl, "getTCoordComponentArrayComponent", GetTCoordComponentArrayComponent);

	Nan::SetPrototypeMethod(tpl, "GetTCoordComponentArrayName", GetTCoordComponentArrayName);
	Nan::SetPrototypeMethod(tpl, "getTCoordComponentArrayName", GetTCoordComponentArrayName);

	Nan::SetPrototypeMethod(tpl, "GetTCoordComponentMaxRange", GetTCoordComponentMaxRange);
	Nan::SetPrototypeMethod(tpl, "getTCoordComponentMaxRange", GetTCoordComponentMaxRange);

	Nan::SetPrototypeMethod(tpl, "GetTCoordComponentMinRange", GetTCoordComponentMinRange);
	Nan::SetPrototypeMethod(tpl, "getTCoordComponentMinRange", GetTCoordComponentMinRange);

	Nan::SetPrototypeMethod(tpl, "GetTCoordComponentNormalizeFlag", GetTCoordComponentNormalizeFlag);
	Nan::SetPrototypeMethod(tpl, "getTCoordComponentNormalizeFlag", GetTCoordComponentNormalizeFlag);

	Nan::SetPrototypeMethod(tpl, "GetTensorComponentArrayComponent", GetTensorComponentArrayComponent);
	Nan::SetPrototypeMethod(tpl, "getTensorComponentArrayComponent", GetTensorComponentArrayComponent);

	Nan::SetPrototypeMethod(tpl, "GetTensorComponentArrayName", GetTensorComponentArrayName);
	Nan::SetPrototypeMethod(tpl, "getTensorComponentArrayName", GetTensorComponentArrayName);

	Nan::SetPrototypeMethod(tpl, "GetTensorComponentMaxRange", GetTensorComponentMaxRange);
	Nan::SetPrototypeMethod(tpl, "getTensorComponentMaxRange", GetTensorComponentMaxRange);

	Nan::SetPrototypeMethod(tpl, "GetTensorComponentMinRange", GetTensorComponentMinRange);
	Nan::SetPrototypeMethod(tpl, "getTensorComponentMinRange", GetTensorComponentMinRange);

	Nan::SetPrototypeMethod(tpl, "GetTensorComponentNormalizeFlag", GetTensorComponentNormalizeFlag);
	Nan::SetPrototypeMethod(tpl, "getTensorComponentNormalizeFlag", GetTensorComponentNormalizeFlag);

	Nan::SetPrototypeMethod(tpl, "GetVectorComponentArrayComponent", GetVectorComponentArrayComponent);
	Nan::SetPrototypeMethod(tpl, "getVectorComponentArrayComponent", GetVectorComponentArrayComponent);

	Nan::SetPrototypeMethod(tpl, "GetVectorComponentArrayName", GetVectorComponentArrayName);
	Nan::SetPrototypeMethod(tpl, "getVectorComponentArrayName", GetVectorComponentArrayName);

	Nan::SetPrototypeMethod(tpl, "GetVectorComponentMaxRange", GetVectorComponentMaxRange);
	Nan::SetPrototypeMethod(tpl, "getVectorComponentMaxRange", GetVectorComponentMaxRange);

	Nan::SetPrototypeMethod(tpl, "GetVectorComponentMinRange", GetVectorComponentMinRange);
	Nan::SetPrototypeMethod(tpl, "getVectorComponentMinRange", GetVectorComponentMinRange);

	Nan::SetPrototypeMethod(tpl, "GetVectorComponentNormalizeFlag", GetVectorComponentNormalizeFlag);
	Nan::SetPrototypeMethod(tpl, "getVectorComponentNormalizeFlag", GetVectorComponentNormalizeFlag);

	Nan::SetPrototypeMethod(tpl, "NewInstance", NewInstance);
	Nan::SetPrototypeMethod(tpl, "newInstance", NewInstance);

	Nan::SetPrototypeMethod(tpl, "SafeDownCast", SafeDownCast);
	Nan::SetPrototypeMethod(tpl, "safeDownCast", SafeDownCast);

	Nan::SetPrototypeMethod(tpl, "SetDefaultNormalize", SetDefaultNormalize);
	Nan::SetPrototypeMethod(tpl, "setDefaultNormalize", SetDefaultNormalize);

	Nan::SetPrototypeMethod(tpl, "SetInputField", SetInputField);
	Nan::SetPrototypeMethod(tpl, "setInputField", SetInputField);

	Nan::SetPrototypeMethod(tpl, "SetInputFieldToCellDataField", SetInputFieldToCellDataField);
	Nan::SetPrototypeMethod(tpl, "setInputFieldToCellDataField", SetInputFieldToCellDataField);

	Nan::SetPrototypeMethod(tpl, "SetInputFieldToDataObjectField", SetInputFieldToDataObjectField);
	Nan::SetPrototypeMethod(tpl, "setInputFieldToDataObjectField", SetInputFieldToDataObjectField);

	Nan::SetPrototypeMethod(tpl, "SetInputFieldToPointDataField", SetInputFieldToPointDataField);
	Nan::SetPrototypeMethod(tpl, "setInputFieldToPointDataField", SetInputFieldToPointDataField);

	Nan::SetPrototypeMethod(tpl, "SetNormalComponent", SetNormalComponent);
	Nan::SetPrototypeMethod(tpl, "setNormalComponent", SetNormalComponent);

	Nan::SetPrototypeMethod(tpl, "SetOutputAttributeData", SetOutputAttributeData);
	Nan::SetPrototypeMethod(tpl, "setOutputAttributeData", SetOutputAttributeData);

	Nan::SetPrototypeMethod(tpl, "SetOutputAttributeDataToCellData", SetOutputAttributeDataToCellData);
	Nan::SetPrototypeMethod(tpl, "setOutputAttributeDataToCellData", SetOutputAttributeDataToCellData);

	Nan::SetPrototypeMethod(tpl, "SetOutputAttributeDataToPointData", SetOutputAttributeDataToPointData);
	Nan::SetPrototypeMethod(tpl, "setOutputAttributeDataToPointData", SetOutputAttributeDataToPointData);

	Nan::SetPrototypeMethod(tpl, "SetScalarComponent", SetScalarComponent);
	Nan::SetPrototypeMethod(tpl, "setScalarComponent", SetScalarComponent);

	Nan::SetPrototypeMethod(tpl, "SetTCoordComponent", SetTCoordComponent);
	Nan::SetPrototypeMethod(tpl, "setTCoordComponent", SetTCoordComponent);

	Nan::SetPrototypeMethod(tpl, "SetTensorComponent", SetTensorComponent);
	Nan::SetPrototypeMethod(tpl, "setTensorComponent", SetTensorComponent);

	Nan::SetPrototypeMethod(tpl, "SetVectorComponent", SetVectorComponent);
	Nan::SetPrototypeMethod(tpl, "setVectorComponent", SetVectorComponent);

#ifdef VTK_NODE_PLUS_VTKFIELDDATATOATTRIBUTEDATAFILTERWRAP_INITPTPL
	VTK_NODE_PLUS_VTKFIELDDATATOATTRIBUTEDATAFILTERWRAP_INITPTPL
#endif
	ptpl.Reset( tpl );
}

void VtkFieldDataToAttributeDataFilterWrap::New(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	if(!info.IsConstructCall())
	{
		Nan::ThrowError("Constructor not called in a construct call.");
		return;
	}

	if(info.Length() == 0)
	{
		vtkSmartPointer<vtkFieldDataToAttributeDataFilter> native = vtkSmartPointer<vtkFieldDataToAttributeDataFilter>::New();
		VtkFieldDataToAttributeDataFilterWrap* obj = new VtkFieldDataToAttributeDataFilterWrap(native);
		obj->Wrap(info.This());
	}
	else
	{
		if(info[0]->ToObject() != vtkNodeJsNoWrap )
		{
			Nan::ThrowError("Parameter Error");
			return;
		}
	}

	info.GetReturnValue().Set(info.This());
}

void VtkFieldDataToAttributeDataFilterWrap::DefaultNormalizeOff(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
		if(info.Length() != 0)
	{
		Nan::ThrowError("Too many parameters.");
		return;
	}
	native->DefaultNormalizeOff();
}

void VtkFieldDataToAttributeDataFilterWrap::DefaultNormalizeOn(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
		if(info.Length() != 0)
	{
		Nan::ThrowError("Too many parameters.");
		return;
	}
	native->DefaultNormalizeOn();
}

void VtkFieldDataToAttributeDataFilterWrap::GetDefaultNormalize(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	int r;
	if(info.Length() != 0)
	{
		Nan::ThrowError("Too many parameters.");
		return;
	}
	r = native->GetDefaultNormalize();
	info.GetReturnValue().Set(Nan::New(r));
}

void VtkFieldDataToAttributeDataFilterWrap::GetFieldArray(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsObject() && (Nan::New(VtkFieldDataWrap::ptpl))->HasInstance(info[0]))
	{
		VtkFieldDataWrap *a0 = ObjectWrap::Unwrap<VtkFieldDataWrap>(info[0]->ToObject());
		if(info.Length() > 1 && info[1]->IsString())
		{
			Nan::Utf8String a1(info[1]);
			if(info.Length() > 2 && info[2]->IsInt32())
			{
				vtkDataArray * r;
				if(info.Length() != 3)
				{
					Nan::ThrowError("Too many parameters.");
					return;
				}
				r = native->GetFieldArray(
					(vtkFieldData *) a0->native.GetPointer(),
					*a1,
					info[2]->Int32Value()
				);
				VtkDataArrayWrap::InitPtpl();
				v8::Local<v8::Value> argv[1] =
					{ Nan::New(vtkNodeJsNoWrap) };
				v8::Local<v8::Function> cons =
					Nan::New<v8::FunctionTemplate>(VtkDataArrayWrap::ptpl)->GetFunction();
				v8::Local<v8::Object> wo = cons->NewInstance(1, argv);
				VtkDataArrayWrap *w = new VtkDataArrayWrap();
				w->native = r;
				w->Wrap(wo);
				info.GetReturnValue().Set(wo);
				return;
			}
		}
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetInputField(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	int r;
	if(info.Length() != 0)
	{
		Nan::ThrowError("Too many parameters.");
		return;
	}
	r = native->GetInputField();
	info.GetReturnValue().Set(Nan::New(r));
}

void VtkFieldDataToAttributeDataFilterWrap::GetNormalComponentArrayComponent(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetNormalComponentArrayComponent(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetNormalComponentArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		char const * r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetNormalComponentArrayName(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r).ToLocalChecked());
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetNormalComponentMaxRange(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetNormalComponentMaxRange(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetNormalComponentMinRange(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetNormalComponentMinRange(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetNormalComponentNormalizeFlag(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetNormalComponentNormalizeFlag(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetOutputAttributeData(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	int r;
	if(info.Length() != 0)
	{
		Nan::ThrowError("Too many parameters.");
		return;
	}
	r = native->GetOutputAttributeData();
	info.GetReturnValue().Set(Nan::New(r));
}

void VtkFieldDataToAttributeDataFilterWrap::GetScalarComponentArrayComponent(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetScalarComponentArrayComponent(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetScalarComponentArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		char const * r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetScalarComponentArrayName(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r).ToLocalChecked());
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetScalarComponentMaxRange(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetScalarComponentMaxRange(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetScalarComponentMinRange(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetScalarComponentMinRange(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetScalarComponentNormalizeFlag(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetScalarComponentNormalizeFlag(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetTCoordComponentArrayComponent(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetTCoordComponentArrayComponent(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetTCoordComponentArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		char const * r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetTCoordComponentArrayName(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r).ToLocalChecked());
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetTCoordComponentMaxRange(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetTCoordComponentMaxRange(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetTCoordComponentMinRange(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetTCoordComponentMinRange(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetTCoordComponentNormalizeFlag(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetTCoordComponentNormalizeFlag(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetTensorComponentArrayComponent(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetTensorComponentArrayComponent(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetTensorComponentArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		char const * r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetTensorComponentArrayName(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r).ToLocalChecked());
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetTensorComponentMaxRange(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetTensorComponentMaxRange(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetTensorComponentMinRange(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetTensorComponentMinRange(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetTensorComponentNormalizeFlag(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetTensorComponentNormalizeFlag(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetVectorComponentArrayComponent(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetVectorComponentArrayComponent(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetVectorComponentArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		char const * r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetVectorComponentArrayName(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r).ToLocalChecked());
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetVectorComponentMaxRange(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetVectorComponentMaxRange(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetVectorComponentMinRange(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetVectorComponentMinRange(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::GetVectorComponentNormalizeFlag(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		int r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->GetVectorComponentNormalizeFlag(
			info[0]->Int32Value()
		);
		info.GetReturnValue().Set(Nan::New(r));
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::NewInstance(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	vtkFieldDataToAttributeDataFilter * r;
	if(info.Length() != 0)
	{
		Nan::ThrowError("Too many parameters.");
		return;
	}
	r = native->NewInstance();
	VtkFieldDataToAttributeDataFilterWrap::InitPtpl();
	v8::Local<v8::Value> argv[1] =
		{ Nan::New(vtkNodeJsNoWrap) };
	v8::Local<v8::Function> cons =
		Nan::New<v8::FunctionTemplate>(VtkFieldDataToAttributeDataFilterWrap::ptpl)->GetFunction();
	v8::Local<v8::Object> wo = cons->NewInstance(1, argv);
	VtkFieldDataToAttributeDataFilterWrap *w = new VtkFieldDataToAttributeDataFilterWrap();
	w->native = r;
	w->Wrap(wo);
	info.GetReturnValue().Set(wo);
}

void VtkFieldDataToAttributeDataFilterWrap::SafeDownCast(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsObject() && (Nan::New(VtkObjectBaseWrap::ptpl))->HasInstance(info[0]))
	{
		VtkObjectBaseWrap *a0 = ObjectWrap::Unwrap<VtkObjectBaseWrap>(info[0]->ToObject());
		vtkFieldDataToAttributeDataFilter * r;
		if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		r = native->SafeDownCast(
			(vtkObjectBase *) a0->native.GetPointer()
		);
		VtkFieldDataToAttributeDataFilterWrap::InitPtpl();
		v8::Local<v8::Value> argv[1] =
			{ Nan::New(vtkNodeJsNoWrap) };
		v8::Local<v8::Function> cons =
			Nan::New<v8::FunctionTemplate>(VtkFieldDataToAttributeDataFilterWrap::ptpl)->GetFunction();
		v8::Local<v8::Object> wo = cons->NewInstance(1, argv);
		VtkFieldDataToAttributeDataFilterWrap *w = new VtkFieldDataToAttributeDataFilterWrap();
		w->native = r;
		w->Wrap(wo);
		info.GetReturnValue().Set(wo);
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::SetDefaultNormalize(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
				if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		native->SetDefaultNormalize(
			info[0]->Int32Value()
		);
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::SetInputField(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
				if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		native->SetInputField(
			info[0]->Int32Value()
		);
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::SetInputFieldToCellDataField(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
		if(info.Length() != 0)
	{
		Nan::ThrowError("Too many parameters.");
		return;
	}
	native->SetInputFieldToCellDataField();
}

void VtkFieldDataToAttributeDataFilterWrap::SetInputFieldToDataObjectField(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
		if(info.Length() != 0)
	{
		Nan::ThrowError("Too many parameters.");
		return;
	}
	native->SetInputFieldToDataObjectField();
}

void VtkFieldDataToAttributeDataFilterWrap::SetInputFieldToPointDataField(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
		if(info.Length() != 0)
	{
		Nan::ThrowError("Too many parameters.");
		return;
	}
	native->SetInputFieldToPointDataField();
}

void VtkFieldDataToAttributeDataFilterWrap::SetNormalComponent(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		if(info.Length() > 1 && info[1]->IsString())
		{
			Nan::Utf8String a1(info[1]);
			if(info.Length() > 2 && info[2]->IsInt32())
			{
				if(info.Length() > 3 && info[3]->IsInt32())
				{
					if(info.Length() > 4 && info[4]->IsInt32())
					{
						if(info.Length() > 5 && info[5]->IsInt32())
						{
														if(info.Length() != 6)
							{
								Nan::ThrowError("Too many parameters.");
								return;
							}
							native->SetNormalComponent(
								info[0]->Int32Value(),
								*a1,
								info[2]->Int32Value(),
								info[3]->Int32Value(),
								info[4]->Int32Value(),
								info[5]->Int32Value()
							);
							return;
						}
					}
				}
								if(info.Length() != 3)
				{
					Nan::ThrowError("Too many parameters.");
					return;
				}
				native->SetNormalComponent(
					info[0]->Int32Value(),
					*a1,
					info[2]->Int32Value()
				);
				return;
			}
		}
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::SetOutputAttributeData(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
				if(info.Length() != 1)
		{
			Nan::ThrowError("Too many parameters.");
			return;
		}
		native->SetOutputAttributeData(
			info[0]->Int32Value()
		);
		return;
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::SetOutputAttributeDataToCellData(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
		if(info.Length() != 0)
	{
		Nan::ThrowError("Too many parameters.");
		return;
	}
	native->SetOutputAttributeDataToCellData();
}

void VtkFieldDataToAttributeDataFilterWrap::SetOutputAttributeDataToPointData(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
		if(info.Length() != 0)
	{
		Nan::ThrowError("Too many parameters.");
		return;
	}
	native->SetOutputAttributeDataToPointData();
}

void VtkFieldDataToAttributeDataFilterWrap::SetScalarComponent(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		if(info.Length() > 1 && info[1]->IsString())
		{
			Nan::Utf8String a1(info[1]);
			if(info.Length() > 2 && info[2]->IsInt32())
			{
				if(info.Length() > 3 && info[3]->IsInt32())
				{
					if(info.Length() > 4 && info[4]->IsInt32())
					{
						if(info.Length() > 5 && info[5]->IsInt32())
						{
														if(info.Length() != 6)
							{
								Nan::ThrowError("Too many parameters.");
								return;
							}
							native->SetScalarComponent(
								info[0]->Int32Value(),
								*a1,
								info[2]->Int32Value(),
								info[3]->Int32Value(),
								info[4]->Int32Value(),
								info[5]->Int32Value()
							);
							return;
						}
					}
				}
								if(info.Length() != 3)
				{
					Nan::ThrowError("Too many parameters.");
					return;
				}
				native->SetScalarComponent(
					info[0]->Int32Value(),
					*a1,
					info[2]->Int32Value()
				);
				return;
			}
		}
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::SetTCoordComponent(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		if(info.Length() > 1 && info[1]->IsString())
		{
			Nan::Utf8String a1(info[1]);
			if(info.Length() > 2 && info[2]->IsInt32())
			{
				if(info.Length() > 3 && info[3]->IsInt32())
				{
					if(info.Length() > 4 && info[4]->IsInt32())
					{
						if(info.Length() > 5 && info[5]->IsInt32())
						{
														if(info.Length() != 6)
							{
								Nan::ThrowError("Too many parameters.");
								return;
							}
							native->SetTCoordComponent(
								info[0]->Int32Value(),
								*a1,
								info[2]->Int32Value(),
								info[3]->Int32Value(),
								info[4]->Int32Value(),
								info[5]->Int32Value()
							);
							return;
						}
					}
				}
								if(info.Length() != 3)
				{
					Nan::ThrowError("Too many parameters.");
					return;
				}
				native->SetTCoordComponent(
					info[0]->Int32Value(),
					*a1,
					info[2]->Int32Value()
				);
				return;
			}
		}
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::SetTensorComponent(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		if(info.Length() > 1 && info[1]->IsString())
		{
			Nan::Utf8String a1(info[1]);
			if(info.Length() > 2 && info[2]->IsInt32())
			{
				if(info.Length() > 3 && info[3]->IsInt32())
				{
					if(info.Length() > 4 && info[4]->IsInt32())
					{
						if(info.Length() > 5 && info[5]->IsInt32())
						{
														if(info.Length() != 6)
							{
								Nan::ThrowError("Too many parameters.");
								return;
							}
							native->SetTensorComponent(
								info[0]->Int32Value(),
								*a1,
								info[2]->Int32Value(),
								info[3]->Int32Value(),
								info[4]->Int32Value(),
								info[5]->Int32Value()
							);
							return;
						}
					}
				}
								if(info.Length() != 3)
				{
					Nan::ThrowError("Too many parameters.");
					return;
				}
				native->SetTensorComponent(
					info[0]->Int32Value(),
					*a1,
					info[2]->Int32Value()
				);
				return;
			}
		}
	}
	Nan::ThrowError("Parameter mismatch");
}

void VtkFieldDataToAttributeDataFilterWrap::SetVectorComponent(const Nan::FunctionCallbackInfo<v8::Value>& info)
{
	VtkFieldDataToAttributeDataFilterWrap *wrapper = ObjectWrap::Unwrap<VtkFieldDataToAttributeDataFilterWrap>(info.Holder());
	vtkFieldDataToAttributeDataFilter *native = (vtkFieldDataToAttributeDataFilter *)wrapper->native.GetPointer();
	if(info.Length() > 0 && info[0]->IsInt32())
	{
		if(info.Length() > 1 && info[1]->IsString())
		{
			Nan::Utf8String a1(info[1]);
			if(info.Length() > 2 && info[2]->IsInt32())
			{
				if(info.Length() > 3 && info[3]->IsInt32())
				{
					if(info.Length() > 4 && info[4]->IsInt32())
					{
						if(info.Length() > 5 && info[5]->IsInt32())
						{
														if(info.Length() != 6)
							{
								Nan::ThrowError("Too many parameters.");
								return;
							}
							native->SetVectorComponent(
								info[0]->Int32Value(),
								*a1,
								info[2]->Int32Value(),
								info[3]->Int32Value(),
								info[4]->Int32Value(),
								info[5]->Int32Value()
							);
							return;
						}
					}
				}
								if(info.Length() != 3)
				{
					Nan::ThrowError("Too many parameters.");
					return;
				}
				native->SetVectorComponent(
					info[0]->Int32Value(),
					*a1,
					info[2]->Int32Value()
				);
				return;
			}
		}
	}
	Nan::ThrowError("Parameter mismatch");
}

