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

#ifndef NATIVE_EXTENSION_VTK_VTKDATAOBJECTWRAP_H
#define NATIVE_EXTENSION_VTK_VTKDATAOBJECTWRAP_H

#include <nan.h>

#include <vtkSmartPointer.h>
#include <vtkDataObject.h>

#include "vtkObjectWrap.h"
#include "../../plus/plus.h"

class VtkDataObjectWrap : public VtkObjectWrap
{
	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);

		VtkDataObjectWrap(vtkSmartPointer<vtkDataObject>);
		VtkDataObjectWrap();
		~VtkDataObjectWrap( );
		static Nan::Persistent<v8::FunctionTemplate> ptpl;

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

		static void ALL_PIECES_EXTENT(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void BOUNDING_BOX(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void CELL_DATA_VECTOR(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void CopyInformationFromPipeline(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void CopyInformationToPipeline(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void DATA_EXTENT(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void DATA_EXTENT_TYPE(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void DATA_NUMBER_OF_GHOST_LEVELS(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void DATA_NUMBER_OF_PIECES(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void DATA_OBJECT(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void DATA_PIECE_NUMBER(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void DATA_TIME_STEP(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void DATA_TYPE_NAME(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void DataHasBeenGenerated(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void DeepCopy(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void EDGE_DATA_VECTOR(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void FIELD_ACTIVE_ATTRIBUTE(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void FIELD_ARRAY_TYPE(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void FIELD_ASSOCIATION(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void FIELD_ATTRIBUTE_TYPE(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void FIELD_NAME(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void FIELD_NUMBER_OF_COMPONENTS(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void FIELD_NUMBER_OF_TUPLES(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void FIELD_OPERATION(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void FIELD_RANGE(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetActiveFieldInformation(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetActualMemorySize(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetAssociationTypeAsString(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetAssociationTypeFromString(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetAttributeTypeForArray(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetAttributes(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetAttributesAsFieldData(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetClassName(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetData(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetDataObjectType(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetDataReleased(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetExtentType(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetFieldData(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetGlobalReleaseDataFlag(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetInformation(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetMTime(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetNamedFieldInformation(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GetUpdateTime(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GlobalReleaseDataFlagOff(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void GlobalReleaseDataFlagOn(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void Initialize(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 ORIGIN(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void PIECE_EXTENT(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void POINT_DATA_VECTOR(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void PrepareForNewData(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void ReleaseData(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void RemoveNamedFieldInformation(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SIL(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SPACING(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SafeDownCast(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetActiveAttribute(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetActiveAttributeInfo(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetFieldData(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetGlobalReleaseDataFlag(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetInformation(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void SetPointDataActiveScalarInfo(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void ShallowCopy(const Nan::FunctionCallbackInfo<v8::Value>& info);
		static void VERTEX_DATA_VECTOR(const Nan::FunctionCallbackInfo<v8::Value>& info);

#ifdef VTK_NODE_PLUS_VTKDATAOBJECTWRAP_CLASSDEF
		VTK_NODE_PLUS_VTKDATAOBJECTWRAP_CLASSDEF
#endif
};

#endif
