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

#ifndef NATIVE_EXTENSION_VTK_VTKRANDOMGRAPHSOURCEWRAP_H
#define NATIVE_EXTENSION_VTK_VTKRANDOMGRAPHSOURCEWRAP_H

#include <nan.h>

#include <vtkSmartPointer.h>
#include <vtkRandomGraphSource.h>

#include "vtkGraphAlgorithmWrap.h"
#include "../../plus/plus.h"

class VtkRandomGraphSourceWrap : public VtkGraphAlgorithmWrap
{
	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);

		VtkRandomGraphSourceWrap(vtkSmartPointer<vtkRandomGraphSource>);
		VtkRandomGraphSourceWrap();
		~VtkRandomGraphSourceWrap( );
		static Nan::Persistent<v8::FunctionTemplate> ptpl;

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

		static void AllowParallelEdgesOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void AllowParallelEdgesOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void AllowSelfLoopsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void AllowSelfLoopsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void DirectedOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void DirectedOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePedigreeIdsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GeneratePedigreeIdsOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetAllowParallelEdges(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetAllowSelfLoops(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetClassName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetDirected(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgePedigreeIdArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeProbability(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeProbabilityMaxValue(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeProbabilityMinValue(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetEdgeWeightArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGeneratePedigreeIds(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetIncludeEdgeWeights(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetNumberOfEdges(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetNumberOfEdgesMaxValue(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetNumberOfEdgesMinValue(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetNumberOfVertices(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetNumberOfVerticesMaxValue(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetNumberOfVerticesMinValue(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetSeed(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetStartWithTree(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetUseEdgeProbability(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetVertexPedigreeIdArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void IncludeEdgeWeightsOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void IncludeEdgeWeightsOn(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 SetAllowParallelEdges(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetAllowSelfLoops(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetDirected(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgePedigreeIdArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgeProbability(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetEdgeWeightArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGeneratePedigreeIds(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetIncludeEdgeWeights(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetNumberOfEdges(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetNumberOfVertices(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetSeed(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetStartWithTree(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetUseEdgeProbability(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetVertexPedigreeIdArrayName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void StartWithTreeOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void StartWithTreeOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void UseEdgeProbabilityOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void UseEdgeProbabilityOn(const Nan::FunctionCallbackInfo<v8::Value>& info);

#ifdef VTK_NODE_PLUS_VTKRANDOMGRAPHSOURCEWRAP_CLASSDEF
		VTK_NODE_PLUS_VTKRANDOMGRAPHSOURCEWRAP_CLASSDEF
#endif
};

#endif
