Reoranising header structure.

This commit is contained in:
David Williams 2015-02-07 17:16:54 +01:00
parent 97bd3a232a
commit 16a75d0606
68 changed files with 101 additions and 146 deletions

View File

@ -39,8 +39,7 @@ add_definitions(-DGLEW_STATIC)
FIND_PACKAGE(OpenGL REQUIRED)
#Tell CMake the paths for OpenGL and for PolyVox (which is just relative to our current location)
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR} ${PolyVoxCore_BINARY_DIR}/include ${PolyVoxCore_SOURCE_DIR}/include ${GLEW_SOURCE_DIR})
LINK_DIRECTORIES(${PolyVoxCore_BINARY_DIR})
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR} ${PolyVoxHeaders_SOURCE_DIR} ${GLEW_SOURCE_DIR})
#This will include the shader files inside the compiled binary
QT4_ADD_RESOURCES(COMMON_RESOURCES_RCC ../common/example.qrc)

View File

@ -39,8 +39,7 @@ add_definitions(-DGLEW_STATIC)
FIND_PACKAGE(OpenGL REQUIRED)
#Tell CMake the paths for OpenGL and for PolyVox (which is just relative to our current location)
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR} ${PolyVoxCore_BINARY_DIR}/include ${PolyVoxCore_SOURCE_DIR}/include ${GLEW_SOURCE_DIR})
LINK_DIRECTORIES(${PolyVoxCore_BINARY_DIR})
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR} ${PolyVoxHeaders_SOURCE_DIR} ${GLEW_SOURCE_DIR})
#This will include the shader files inside the compiled binary
QT4_ADD_RESOURCES(COMMON_RESOURCES_RCC ../common/example.qrc)

View File

@ -41,8 +41,7 @@ add_definitions(-DGLEW_STATIC)
FIND_PACKAGE(OpenGL REQUIRED)
#Tell CMake the paths for OpenGL and for PolyVox (which is just relative to our current location)
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR} ${PolyVoxCore_BINARY_DIR}/include ${PolyVoxCore_SOURCE_DIR}/include ${GLEW_SOURCE_DIR})
LINK_DIRECTORIES(${PolyVoxCore_BINARY_DIR})
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR} ${PolyVoxHeaders_SOURCE_DIR} ${GLEW_SOURCE_DIR})
#This will include the shader files inside the compiled binary
QT4_ADD_RESOURCES(COMMON_RESOURCES_RCC ../common/example.qrc)

View File

@ -41,8 +41,7 @@ add_definitions(-DGLEW_STATIC)
FIND_PACKAGE(OpenGL REQUIRED)
#Tell CMake the paths for OpenGL and for PolyVox (which is just relative to our current location)
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR} ${PolyVoxCore_BINARY_DIR}/include ${PolyVoxCore_SOURCE_DIR}/include ${GLEW_SOURCE_DIR})
LINK_DIRECTORIES(${PolyVoxCore_BINARY_DIR})
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR} ${PolyVoxHeaders_SOURCE_DIR} ${GLEW_SOURCE_DIR})
#This will include the shader files inside the compiled binary
QT4_ADD_RESOURCES(COMMON_RESOURCES_RCC ../common/example.qrc)

View File

@ -39,8 +39,7 @@ add_definitions(-DGLEW_STATIC)
FIND_PACKAGE(OpenGL REQUIRED)
#Tell CMake the paths for OpenGL and for PolyVox (which is just relative to our current location)
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR} ${PolyVoxCore_BINARY_DIR}/include ${PolyVoxCore_SOURCE_DIR}/include ${GLEW_SOURCE_DIR})
LINK_DIRECTORIES(${PolyVoxCore_BINARY_DIR})
INCLUDE_DIRECTORIES(${OPENGL_INCLUDE_DIR} ${PolyVoxHeaders_SOURCE_DIR} ${GLEW_SOURCE_DIR})
#This will include the shader files inside the compiled binary
QT4_ADD_RESOURCES(COMMON_RESOURCES_RCC ../common/example.qrc)

View File

@ -22,9 +22,102 @@
CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
PROJECT(PolyVox)
PROJECT(PolyVoxHeaders)
add_subdirectory(PolyVoxCore)
#Projects headers files
SET(CORE_INC_FILES
PolyVoxCore/AmbientOcclusionCalculator.h
PolyVoxCore/AmbientOcclusionCalculator.inl
PolyVoxCore/Array.h
PolyVoxCore/AStarPathfinder.h
PolyVoxCore/AStarPathfinder.inl
PolyVoxCore/BaseVolume.h
PolyVoxCore/BaseVolume.inl
PolyVoxCore/BaseVolumeSampler.inl
PolyVoxCore/CubicSurfaceExtractor.h
PolyVoxCore/CubicSurfaceExtractor.inl
PolyVoxCore/DefaultIsQuadNeeded.h
PolyVoxCore/DefaultMarchingCubesController.h
PolyVoxCore/Density.h
PolyVoxCore/FilePager.h
PolyVoxCore/GradientEstimators.h
PolyVoxCore/GradientEstimators.inl
PolyVoxCore/Interpolation.h
PolyVoxCore/IteratorController.h
PolyVoxCore/IteratorController.inl
PolyVoxCore/LargeVolume.h
PolyVoxCore/LowPassFilter.h
PolyVoxCore/LowPassFilter.inl
PolyVoxCore/MarchingCubesSurfaceExtractor.h
PolyVoxCore/MarchingCubesSurfaceExtractor.inl
PolyVoxCore/Material.h
PolyVoxCore/MaterialDensityPair.h
PolyVoxCore/Mesh.h
PolyVoxCore/Mesh.inl
PolyVoxCore/PagedVolume.h
PolyVoxCore/PagedVolume.inl
PolyVoxCore/PagedVolumeChunk.inl
PolyVoxCore/PagedVolumeSampler.inl
PolyVoxCore/PolyVoxForwardDeclarations.h
PolyVoxCore/Picking.h
PolyVoxCore/Picking.inl
PolyVoxCore/RawVolume.h
PolyVoxCore/RawVolume.inl
PolyVoxCore/RawVolumeSampler.inl
PolyVoxCore/Raycast.h
PolyVoxCore/Raycast.inl
PolyVoxCore/Region.h
PolyVoxCore/Region.inl
PolyVoxCore/SimpleVolume.h
PolyVoxCore/Vector.h
PolyVoxCore/Vector.inl
PolyVoxCore/Vertex.h
PolyVoxCore/VolumeResampler.h
PolyVoxCore/VolumeResampler.inl
PolyVoxCore/VoxelFilters.h
PolyVoxCore/VoxelFilters.inl
)
SET(IMPL_INC_FILES
PolyVoxCore/Impl/AStarPathfinderImpl.h
PolyVoxCore/Impl/Config.h
PolyVoxCore/Impl/ErrorHandling.h
PolyVoxCore/Impl/Logging.h
PolyVoxCore/Impl/MarchingCubesTables.h
PolyVoxCore/Impl/RandomUnitVectors.h
PolyVoxCore/Impl/RandomVectors.h
PolyVoxCore/Impl/Timer.h
PolyVoxCore/Impl/TypeDef.h
PolyVoxCore/Impl/Utility.h
)
#NOTE: The following line should be uncommented when building shared libs.
#"Sources" and "Headers" are the group names in Visual Studio.
#They may have other uses too...
#SOURCE_GROUP("Source Files" FILES ${CORE_SRC_FILES})
SOURCE_GROUP("Header Files" FILES ${CORE_INC_FILES})
#SOURCE_GROUP("Source Files\\Impl" FILES ${IMPL_SRC_FILES})
SOURCE_GROUP("Header Files\\Impl" FILES ${IMPL_INC_FILES})
#Tell CMake the paths
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/include ${CMAKE_CURRENT_SOURCE_DIR}/include)
#Core
#Build
# Although we don't build anything for PolyVox, we still add this custom target (which
# doesn't do anything) so that we can browse the source code from within Visual Studio.
ADD_CUSTOM_TARGET(PolyVoxCore SOURCES ${CORE_INC_FILES})
#Install the core header files, including the ones in the Impl subfolder.
IF(WIN32)
INSTALL(DIRECTORY include DESTINATION PolyVoxCore COMPONENT development PATTERN "*.svn*" EXCLUDE)
ELSE(WIN32)
INSTALL(DIRECTORY include/ DESTINATION include/PolyVoxCore COMPONENT development PATTERN "*.svn*" EXCLUDE)
ENDIF(WIN32)
#Set up install paths e.g. for PolyVoxConfig.cmake
if(WIN32)

View File

@ -1,133 +0,0 @@
# Copyright (c) 2008-2012 Matt Williams
# Copyright (c) 2008-2012 David Williams
#
# This software is provided 'as-is', without any express or implied
# warranty. In no event will the authors be held liable for any damages
# arising from the use of this software.
#
# Permission is granted to anyone to use this software for any purpose,
# including commercial applications, and to alter it and redistribute it
# freely, subject to the following restrictions:
#
# 1. The origin of this software must not be misrepresented; you must not
# claim that you wrote the original software. If you use this software
# in a product, an acknowledgment in the product documentation would be
# appreciated but is not required.
#
# 2. Altered source versions must be plainly marked as such, and must not be
# misrepresented as being the original software.
#
# 3. This notice may not be removed or altered from any source
# distribution.
PROJECT(PolyVoxCore)
#Projects source files
SET(CORE_SRC_FILES
#source/AStarPathfinder.cpp
)
#Projects headers files
SET(CORE_INC_FILES
include/PolyVoxCore/AmbientOcclusionCalculator.h
include/PolyVoxCore/AmbientOcclusionCalculator.inl
include/PolyVoxCore/Array.h
include/PolyVoxCore/AStarPathfinder.h
include/PolyVoxCore/AStarPathfinder.inl
include/PolyVoxCore/BaseVolume.h
include/PolyVoxCore/BaseVolume.inl
include/PolyVoxCore/BaseVolumeSampler.inl
include/PolyVoxCore/CubicSurfaceExtractor.h
include/PolyVoxCore/CubicSurfaceExtractor.inl
include/PolyVoxCore/DefaultIsQuadNeeded.h
include/PolyVoxCore/DefaultMarchingCubesController.h
include/PolyVoxCore/Density.h
include/PolyVoxCore/FilePager.h
include/PolyVoxCore/GradientEstimators.h
include/PolyVoxCore/GradientEstimators.inl
include/PolyVoxCore/Interpolation.h
include/PolyVoxCore/IteratorController.h
include/PolyVoxCore/IteratorController.inl
include/PolyVoxCore/LargeVolume.h
include/PolyVoxCore/LowPassFilter.h
include/PolyVoxCore/LowPassFilter.inl
include/PolyVoxCore/MarchingCubesSurfaceExtractor.h
include/PolyVoxCore/MarchingCubesSurfaceExtractor.inl
include/PolyVoxCore/Material.h
include/PolyVoxCore/MaterialDensityPair.h
include/PolyVoxCore/Mesh.h
include/PolyVoxCore/Mesh.inl
include/PolyVoxCore/PagedVolume.h
include/PolyVoxCore/PagedVolume.inl
include/PolyVoxCore/PagedVolumeChunk.inl
include/PolyVoxCore/PagedVolumeSampler.inl
include/PolyVoxCore/PolyVoxForwardDeclarations.h
include/PolyVoxCore/Picking.h
include/PolyVoxCore/Picking.inl
include/PolyVoxCore/RawVolume.h
include/PolyVoxCore/RawVolume.inl
include/PolyVoxCore/RawVolumeSampler.inl
include/PolyVoxCore/Raycast.h
include/PolyVoxCore/Raycast.inl
include/PolyVoxCore/Region.h
include/PolyVoxCore/Region.inl
include/PolyVoxCore/SimpleVolume.h
include/PolyVoxCore/Vector.h
include/PolyVoxCore/Vector.inl
include/PolyVoxCore/Vertex.h
include/PolyVoxCore/VolumeResampler.h
include/PolyVoxCore/VolumeResampler.inl
include/PolyVoxCore/VoxelFilters.h
include/PolyVoxCore/VoxelFilters.inl
)
SET(IMPL_SRC_FILES
#source/Impl/ErrorHandling.cpp
#source/Impl/Logging.cpp
#source/Impl/MarchingCubesTables.cpp
#source/Impl/RandomUnitVectors.cpp
#source/Impl/RandomVectors.cpp
#source/Impl/Timer.cpp
#source/Impl/Utility.cpp
)
SET(IMPL_INC_FILES
include/PolyVoxCore/Impl/AStarPathfinderImpl.h
include/PolyVoxCore/Impl/Config.h
include/PolyVoxCore/Impl/ErrorHandling.h
include/PolyVoxCore/Impl/Logging.h
include/PolyVoxCore/Impl/MarchingCubesTables.h
include/PolyVoxCore/Impl/RandomUnitVectors.h
include/PolyVoxCore/Impl/RandomVectors.h
include/PolyVoxCore/Impl/Timer.h
include/PolyVoxCore/Impl/TypeDef.h
include/PolyVoxCore/Impl/Utility.h
)
#NOTE: The following line should be uncommented when building shared libs.
#"Sources" and "Headers" are the group names in Visual Studio.
#They may have other uses too...
#SOURCE_GROUP("Source Files" FILES ${CORE_SRC_FILES})
SOURCE_GROUP("Header Files" FILES ${CORE_INC_FILES})
#SOURCE_GROUP("Source Files\\Impl" FILES ${IMPL_SRC_FILES})
SOURCE_GROUP("Header Files\\Impl" FILES ${IMPL_INC_FILES})
#Tell CMake the paths
INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/include ${CMAKE_CURRENT_SOURCE_DIR}/include)
#Core
#Build
# Although we don't build anything for PolyVox, we still add this custom target (which
# doesn't do anything) so that we can browse the source code from within Visual Studio.
ADD_CUSTOM_TARGET(PolyVoxCore SOURCES ${CORE_INC_FILES})
#Install the core header files, including the ones in the Impl subfolder.
IF(WIN32)
INSTALL(DIRECTORY include DESTINATION PolyVoxCore COMPONENT development PATTERN "*.svn*" EXCLUDE)
ELSE(WIN32)
INSTALL(DIRECTORY include/ DESTINATION include/PolyVoxCore COMPONENT development PATTERN "*.svn*" EXCLUDE)
ENDIF(WIN32)

View File

@ -44,7 +44,7 @@ MACRO(CREATE_TEST headerfile sourcefile executablename)
ENDIF()
ENDMACRO(CREATE_TEST)
INCLUDE_DIRECTORIES(${PolyVoxCore_BINARY_DIR}/include ${PolyVox_SOURCE_DIR}/PolyVoxCore/include ${CMAKE_CURRENT_BINARY_DIR})
INCLUDE_DIRECTORIES(${PolyVoxHeaders_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
REMOVE_DEFINITIONS(-DQT_GUI_LIB) #Make sure the tests don't link to the QtGui
# Test Template. Copy and paste this template for consistant naming.