|
| 1 | +cmake_minimum_required(VERSION 3.8) |
| 2 | +project(Scus) |
| 3 | + |
| 4 | +set(CMAKE_CXX_STANDARD 17) |
| 5 | +set(CMAKE_CXX_STANDARD_REQUIRED ON) |
| 6 | + |
| 7 | +# search for DCMTK library and header files |
| 8 | +find_package(DCMTK REQUIRED) |
| 9 | + |
| 10 | +add_compile_options(-Wunknown-pragmas -fopenmp) |
| 11 | + |
| 12 | +# specify DCMTK header include directories |
| 13 | +include_directories(${DCMTK_INCLUDE_DIRS}) |
| 14 | + |
| 15 | +set(Files src/main.cpp |
| 16 | + src/utility/samplingUtils.hpp |
| 17 | + |
| 18 | + src/samplers/SamplerDartThrowing.hpp |
| 19 | + |
| 20 | + src/samplers/SamplerRegularGrid.hpp |
| 21 | + |
| 22 | + src/samplers/SamplerCascadedSobol.h |
| 23 | + src/samplers/cascadedSobol/OwenScrambling.h |
| 24 | + src/samplers/cascadedSobol/Random.h |
| 25 | + src/samplers/cascadedSobol/SobolGenerator1D.h |
| 26 | + |
| 27 | + src/pointsets/Domain.hpp |
| 28 | + src/pointsets/Histogram.hpp |
| 29 | + src/pointsets/Point.hpp |
| 30 | + src/pointsets/Pointset.hpp |
| 31 | + src/pointsets/Vector.hpp |
| 32 | + |
| 33 | + src/grid/grid.cpp src/grid/grid.h |
| 34 | + src/grid/cell.cpp src/grid/cell.h |
| 35 | + |
| 36 | + src/geometry/acquisitionZone.cpp src/geometry/acquisitionZone.h |
| 37 | + |
| 38 | + src/volume/weightingFunction.h |
| 39 | + src/volume/sphere.h |
| 40 | + src/volume/plane.h |
| 41 | + src/volume/dicom.h src/volume/dicom.cpp |
| 42 | + |
| 43 | + src/utility/json.hpp |
| 44 | + src/utility/stb_image.h |
| 45 | + src/utility/stb_image_write.h |
| 46 | + src/utility/L2Discrepancy.hpp |
| 47 | + src/utility/GeneralizedL2Discrepancy.hpp |
| 48 | + src/utility/Diaphony.hpp |
| 49 | + |
| 50 | + src/utility/pointWriter.cpp src/utility/pointWriter.h |
| 51 | + src/utility/TestUtils.cpp src/utility/TestUtils.h |
| 52 | + src/volume/weightingFactory.h src/volume/cube.h |
| 53 | + src/samplers/SamplerUniformRandom.h src/samplers/Sampler.h |
| 54 | + src/samplers/SamplerFactory.h src/volume/dicom.cpp src/volume/dicom.h |
| 55 | + src/geometry/scatMap.cpp src/geometry/scatMap.h src/geometry/basicUS.cpp |
| 56 | + src/geometry/basicUS.h src/Scus.h |
| 57 | + src/geometry/PSF.h src/geometry/PSF.cpp |
| 58 | + |
| 59 | + src/utility/utils.h |
| 60 | + src/geometry/realScatMap.cpp src/geometry/realScatMap.h |
| 61 | + src/utility/TestUtils.cpp src/utility/TestUtils.h |
| 62 | + |
| 63 | + ) |
| 64 | + |
| 65 | +add_library (ScusLib ${Files} ) |
| 66 | + |
| 67 | +add_executable(${PROJECT_NAME} ${Files}) |
| 68 | + |
| 69 | + |
| 70 | +# link DCMTK library files |
| 71 | +target_link_libraries(${PROJECT_NAME} ${DCMTK_LIBRARIES} tbb) |
| 72 | +target_link_libraries(ScusLib ${DCMTK_LIBRARIES} tbb) |
| 73 | +find_package(OpenMP) |
| 74 | +if(OpenMP_CXX_FOUND) |
| 75 | + target_link_libraries(${PROJECT_NAME} OpenMP::OpenMP_CXX) |
| 76 | + target_compile_definitions(${PROJECT_NAME} PUBLIC OPENMP=1) |
| 77 | +endif() |
0 commit comments