#
# vtk library makefile
#
# NOTE !!! when adding a class, it must be added in one location.
# Place it in the correct list based on whether it is only a .h file
# and whether it is abstract or concrete.
#
ME = Graphics

srcdir        = @srcdir@
VPATH         = @srcdir@

SBR_OBJ = \
vtkStarbaseActor \
vtkStarbaseCamera \
vtkStarbaseLight \
vtkStarbasePolyDataMapper \
vtkStarbaseProperty \
vtkStarbaseRenderWindow \
vtkStarbaseRenderer \
vtkStarbaseTexture 

OGLR_OBJ = \
vtkOpenGLActor \
vtkOpenGLCamera \
vtkOpenGLLight \
vtkOpenGLPolyDataMapper \
vtkOpenGLProjectedPolyDataRayBounder \
vtkOpenGLProperty \
vtkOpenGLRenderWindow \
vtkOpenGLRenderer \
vtkOpenGLTexture 

XGLR_OBJ = \
vtkXGLActor \
vtkXGLCamera \
vtkXGLLight \
vtkXGLPolyDataMapper \
vtkXGLProperty \
vtkXGLRenderWindow \
vtkXGLRenderer \
vtkXGLTexture 

ABSTRACT_H = \
vtkCuller \
vtkDirectionEncoder \
vtkRayBounder 

CONCRETE_H = \
vtkActorCollection \
vtkAssemblyPaths \
vtkCullerCollection \
vtkDataSetCollection \
vtkMapperCollection \
vtkPolyDataCollection \
vtkRenderWindowCollection \
vtkStructuredPointsCollection \
vtkVolumeCollection

ABSTRACT = \
vtkEncodedGradientEstimator \
vtkExporter \
vtkImporter \
vtkMapper \
vtkProp \
vtkSpline \
vtkVolumeMapper \
vtkVolumeRayCastFunction \
vtkVolumeReader \
vtkWriter \
vtkXRenderWindow 

# put all concrete classes here
CONCRETE = \
vtk3DSImporter \
vtkActor \
vtkAppendFilter \
vtkAppendPolyData \
vtkAssembly \
vtkAttributeDataToFieldDataFilter \
vtkAxes \
vtkBYUReader \
vtkBYUWriter \
vtkBooleanTexture \
vtkBrownianPoints \
vtkCamera \
vtkCardinalSpline \
vtkCastToConcrete \
vtkCellCenters \
vtkCellDataToPointData \
vtkCellLocator \
vtkCellPicker \
vtkCleanPolyData \
vtkClipPolyData \
vtkClipVolume \
vtkColorTransferFunction \
vtkCone \
vtkConeSource \
vtkConnectivityFilter \
vtkContourFilter \
vtkCubeSource \
vtkCursor3D \
vtkCutter \
vtkCylinder \
vtkCylinderSource \
vtkDashedStreamLine \
vtkDataObjectFilter \
vtkDataObjectReader \
vtkDataObjectSource \
vtkDataObjectToDataSetFilter \
vtkDataObjectWriter \
vtkDataReader \
vtkDataSetFilter \
vtkDataSetMapper \
vtkDataSetReader \
vtkDataSetToDataObjectFilter \
vtkDataSetToDataSetFilter \
vtkDataSetToPolyDataFilter \
vtkDataSetToStructuredGridFilter \
vtkDataSetToStructuredPointsFilter \
vtkDataSetToUnstructuredGridFilter \
vtkDataSetWriter \
vtkDataWriter \
vtkDecimatePro \
vtkDelaunay2D \
vtkDelaunay3D \
vtkDicer \
vtkDiskSource \
vtkEdgePoints \
vtkElevationFilter \
vtkEncodedGradientShader \
vtkExtractEdges \
vtkExtractGeometry \
vtkExtractGrid \
vtkExtractTensorComponents \
vtkExtractUnstructuredGrid \
vtkExtractVOI \
vtkExtractVectorComponents \
vtkFeatureEdges \
vtkFieldDataToAttributeDataFilter \
vtkFilter \
vtkFiniteDifferenceGradientEstimator \
vtkFollower \
vtkFrustumCoverageCuller \
vtkGaussianSplatter \
vtkGeometryFilter \
vtkGlyph3D \
vtkHedgeHog \
vtkHyperStreamline \
vtkIdFilter \
vtkImplicitBoolean \
vtkImplicitDataSet \
vtkImplicitModeller \
vtkImplicitSelectionLoop \
vtkImplicitTextureCoords \
vtkImplicitVolume \
vtkImplicitWindowFunction \
vtkInterpolateDataSetAttributes \
vtkIVExporter \
vtkKochanekSpline \
vtkLODActor \
vtkLight \
vtkLightCollection \
vtkLineSource \
vtkLinearExtrusionFilter \
vtkLinkEdgels \
vtkMCubesReader \
vtkMCubesWriter \
vtkMaskPoints \
vtkMaskPolyData \
vtkMergeFilter \
vtkMergeDataObjectFilter \
vtkMergePoints \
vtkNormalEncoder \
vtkOBBTree \
vtkOBJExporter \
vtkOutlineFilter \
vtkOutlineSource \
vtkPLOT3DReader \
vtkPicker \
vtkPiecewiseFunction \
vtkPlaneSource \
vtkPlanes \
vtkPointDataToCellData \
vtkPointLoad \
vtkPointPicker \
vtkPointSetFilter \
vtkPointSetToPointSetFilter \
vtkPointSource \
vtkPolyDataConnectivityFilter \
vtkPolyDataFilter \
vtkPolyDataMapper \
vtkPolyDataNormals \
vtkPolyDataReader \
vtkPolyDataSource \
vtkPolyDataToPolyDataFilter \
vtkPolyDataWriter \
vtkProbeFilter \
vtkProgrammableAttributeDataFilter \
vtkProgrammableDataObjectSource \
vtkProgrammableFilter \
vtkProgrammableGlyphFilter \
vtkProgrammableSource \
vtkProjectedPolyDataRayBounder \
vtkProperty \
vtkQuadric \
vtkRayCaster \
vtkRectilinearGridFilter \
vtkRectilinearGridGeometryFilter \
vtkRectilinearGridReader \
vtkRectilinearGridSource \
vtkRectilinearGridToPolyDataFilter \
vtkRectilinearGridWriter \
vtkRecursiveDividingCubes \
vtkRecursiveSphereDirectionEncoder \
vtkRenderWindow \
vtkRenderWindowInteractor \
vtkRenderer \
vtkRendererCollection \
vtkRendererSource \
vtkReverseSense \
vtkRibbonFilter \
vtkRotationalExtrusionFilter \
vtkSLCReader \
vtkSTLReader \
vtkSTLWriter \
vtkSampleFunction \
vtkScalarTree \
vtkSelectPolyData \
vtkSelectVisiblePoints \
vtkShepardMethod \
vtkShrinkFilter \
vtkShrinkPolyData \
vtkSmoothPolyDataFilter \
vtkSpatialRepresentationFilter \
vtkSphere \
vtkSphereSource \
vtkStreamLine \
vtkStreamPoints \
vtkStreamer \
vtkStripper \
vtkStructuredGridFilter \
vtkStructuredGridGeometryFilter \
vtkStructuredGridOutlineFilter \
vtkStructuredGridReader \
vtkStructuredGridSource \
vtkStructuredGridToPolyDataFilter \
vtkStructuredGridToStructuredGridFilter \
vtkStructuredGridWriter \
vtkStructuredPointsFilter \
vtkStructuredPointsGeometryFilter \
vtkStructuredPointsReader \
vtkStructuredPointsToPolyDataFilter \
vtkStructuredPointsToStructuredPointsFilter \
vtkStructuredPointsToUnstructuredGridFilter \
vtkStructuredPointsWriter \
vtkSubPixelPositionEdgels \
vtkTensorGlyph \
vtkTextSource \
vtkTexture \
vtkTextureMapToBox \
vtkTextureMapToCylinder \
vtkTextureMapToPlane \
vtkTextureMapToSphere \
vtkTexturedSphereSource \
vtkThreshold \
vtkThresholdPoints \
vtkThresholdTextureCoords \
vtkTransformFilter \
vtkTransformPolyDataFilter \
vtkTransformTextureCoords \
vtkTriangleFilter \
vtkTriangularTexture \
vtkTriangularTCoords \
vtkTubeFilter \
vtkUGFacetReader \
vtkUnstructuredGridFilter \
vtkUnstructuredGridReader \
vtkUnstructuredGridSource \
vtkUnstructuredGridWriter \
vtkVRMLExporter \
vtkVectorDot \
vtkVectorNorm \
vtkVectorText \
vtkVectorTopology \
vtkViewRays \
vtkVolume \
vtkVolumeProperty \
vtkVolumeRayCastCompositeFunction \
vtkVolumeRayCastIsosurfaceFunction \
vtkVolumeRayCastMapper \
vtkVolumeRayCastMIPFunction \
vtkVolume16Reader \
vtkVoxelModeller \
vtkWarpLens \
vtkWarpScalar \
vtkWarpTo \
vtkWindowedSincPolyDataFilter \
vtkWorldPointPicker \
vtkWarpVector  ${GRAPHICS_API_OBJ}


# The following is all boiler plate 
#------------------------------------------------------------------------------
# Autoconfig defines that can be overridden in user.make

@MAKEINCLUDE@ @MAKEQUOTE@../system.make@MAKEQUOTE@

#------------------------------------------------------------------------------
# Include user-editable defines.

@MAKEINCLUDE@ @MAKEQUOTE@../user.make@MAKEQUOTE@

#------------------------------------------------------------------------------
# Include the generated targets

@MAKEINCLUDE@ @MAKEQUOTE@targets.make@MAKEQUOTE@


VTK_LIB_FILE  = libVTK${ME}${VTK_LIB_EXT}
TCL_LIB_FILE  = libVTK${ME}Tcl${VTK_LIB_EXT}

# add in any extra libraies here
KIT_LIBS = @TKWIDGET@

#JAVA_O_ADD = vtkJavaPanel.o 
JAVA_CODE_ADD = ../java/vtk/vtkPanel.class

java/vtk_vtkPanel.h: ../java/vtk/vtkPanel.java
	rm -f java/vtk_vtkPanel.h; ${JAVAH} -d java vtk.vtkPanel

java/vtk_vtkPanel.c: ../java/vtk/vtkPanel.java
	rm -f java/vtk_vtkPanel.c; ${JAVAH} -stubs -d java vtk.vtkPanel

vtkJavaPanel.o: java/vtk_vtkPanel.h java/vtk_vtkPanel.c

# standard stuff here
KIT_OBJ = vtkXRenderWindowInteractor.o ${SRC_OBJ} 

KIT_TCL_OBJ = vtkXRenderTclWindowInteractor.o ${TCL_OBJ} ${SRC_OBJ} 

KIT_NEWS = ${TCL_NEWS} 

KIT_FLAGS = 
PYTHON_LIBS = @USE_GRAPHICS_PATENTED_LIBS@ -L../common -lVTKCommonPython ${XLIBS} ${GRAPHICS_API_LIBS}

# add depend for contour filter on Makefile because when patented
# setting changes this needs to be recompiled
vtkContourFilter.o : Makefile


@USE_GRAPHICS_PATENTED_PYTHON_TARGET@
@USE_GRAPHICS_PATENTED_TCL_TARGET@

../patented/libVTKPatented${SHLIB_SUFFIX} :
	cd ../patented ; ${MAKE} libVTKPatented${SHLIB_SUFFIX}

#------------------------------------------------------------------------------
# Include the generic stuff here

@MAKEINCLUDE@ @MAKEQUOTE@@srcdir@/../Kits.make@MAKEQUOTE@

