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

#ifndef NATIVE_EXTENSION_VTK_VTKGRAPHLAYOUTVIEWWRAP_H
#define NATIVE_EXTENSION_VTK_VTKGRAPHLAYOUTVIEWWRAP_H

#include <nan.h>

#include <vtkSmartPointer.h>
#include <vtkGraphLayoutView.h>

#include "vtkRenderViewWrap.h"
#include "../../plus/plus.h"

class VtkGraphLayoutViewWrap : public VtkRenderViewWrap
{
	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);

		VtkGraphLayoutViewWrap(vtkSmartPointer<vtkGraphLayoutView>);
		VtkGraphLayoutViewWrap();
		~VtkGraphLayoutViewWrap( );
		static Nan::Persistent<v8::FunctionTemplate> ptpl;

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

		static void AddIconType(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void ClearIconTypes(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void ColorEdgesOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void ColorEdgesOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void ColorVerticesOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void ColorVerticesOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void EdgeLabelVisibilityOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void EdgeLabelVisibilityOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void EdgeSelectionOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void EdgeSelectionOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void EdgeVisibilityOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void EdgeVisibilityOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetClassName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetColorEdges(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetColorVertices(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeColorArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeLabelArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeLabelFontSize(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeLabelVisibility(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeLayoutStrategy(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeLayoutStrategyName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeScalarBarVisibility(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeSelection(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeVisibility(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEnableEdgesByArray(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEnableVerticesByArray(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEnabledEdgesArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEnabledVerticesArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGlyphType(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetHideEdgeLabelsOnInteraction(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetHideVertexLabelsOnInteraction(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetIconArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetIconVisibility(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetLayoutStrategy(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetLayoutStrategyName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetScaledGlyphs(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetScalingArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetVertexColorArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetVertexLabelArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetVertexLabelFontSize(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetVertexLabelVisibility(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetVertexScalarBarVisibility(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void HideEdgeLabelsOnInteractionOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void HideEdgeLabelsOnInteractionOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void HideVertexLabelsOnInteractionOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void HideVertexLabelsOnInteractionOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void IconVisibilityOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void IconVisibilityOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void IsA(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void IsLayoutComplete(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 ScaledGlyphsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void ScaledGlyphsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetColorEdges(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetColorVertices(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgeColorArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgeLabelArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgeLabelFontSize(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgeLabelVisibility(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgeLayoutStrategy(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgeLayoutStrategyToArcParallel(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgeLayoutStrategyToPassThrough(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgeScalarBarVisibility(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgeSelection(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgeVisibility(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEnableEdgesByArray(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEnableVerticesByArray(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEnabledEdgesArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEnabledVerticesArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGlyphType(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetHideEdgeLabelsOnInteraction(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetHideVertexLabelsOnInteraction(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetIconAlignment(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetIconArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetIconVisibility(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategy(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategyToCircular(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategyToClustering2D(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategyToCommunity2D(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategyToCone(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategyToCosmicTree(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategyToFast2D(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategyToForceDirected(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategyToPassThrough(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategyToRandom(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategyToSimple2D(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategyToSpanTree(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetLayoutStrategyToTree(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetScaledGlyphs(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetScalingArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetVertexColorArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetVertexLabelArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetVertexLabelFontSize(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetVertexLabelVisibility(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetVertexScalarBarVisibility(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void UpdateLayout(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void VertexLabelVisibilityOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void VertexLabelVisibilityOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void ZoomToSelection(const Nan::FunctionCallbackInfo<v8::Value>& info);

#ifdef VTK_NODE_PLUS_VTKGRAPHLAYOUTVIEWWRAP_CLASSDEF
		VTK_NODE_PLUS_VTKGRAPHLAYOUTVIEWWRAP_CLASSDEF
#endif
};

#endif
