<commit_before>PROJECT(Examples C)

# Macro defs

# This macro states that the executable "EXECUTABLE" upon execution will generate
# output image "OUTPUT_IMG". The executable will depend on "SOURCE_FILE" (since
# it is assumed that it was generated by compiling SOURCE_FILE), the perl script
# used to generate this macro, and any figures that may have been generated by
# other examples that the executable may use as inputs to produce the OUTPUT_IMG.
#
# TODO: Create a smarter macro. For an example that generates 3 outputs, 3 macros
# are created. This results in the example running 3 times, instead of once.
MACRO(RUN_EXAMPLE EXECUTABLE OUTPUT_IMG SOURCE_FILE)
  ADD_CUSTOM_COMMAND(
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/Generated/${OUTPUT_IMG}"
      COMMAND     "${OTB_DIR}/bin/${EXECUTABLE}"
      ARGS        ${ARGN}
      DEPENDS     ${RUN_EXAMPLES_SCRIPT} ${SOURCE_FILE} ${GENERATED_FIGURE_DEPS}
  )
ENDMACRO(RUN_EXAMPLE)

# If we made the assumption that the input file needed for this example
# was generated by running some other example, let us explicitly
# state that dependency so that makefile rules fire in the right
# order.
MACRO(ADD_GENERATED_FIG_DEPS OUTPUT_IMG GENERATED_FIG)
  SET( GENERATED_FIGURE_DEPS ${GENERATED_FIGURE_DEPS} "${SoftwareGuide_BINARY_DIR}/Art/Generated/${GENERATED_FIG}" )
ENDMACRO( ADD_GENERATED_FIG_DEPS )


# Some images need normalization for proper display in the book.
# Create a convenience macro that normalizes SOME_IMG and produces
# a rescaled EPS_IMG using ImageMagick tools.
MACRO(CONVERT_AND_NORMALIZE_IMG SOME_IMG EPS_IMG PATH)
  ADD_CUSTOM_COMMAND(
      SOURCE      "${PATH}/${SOME_IMG}"
      COMMAND     ${IMAGEMAGICK_CONVERT_EXECUTABLE}
      ARGS        "-normalize" "${PATH}/${SOME_IMG}" "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
      DEPENDS     ${RUN_EXAMPLES_SCRIPT} "${SoftwareGuide_BINARY_DIR}/Art/Generated/${SOME_IMG}"
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
  )
ENDMACRO(CONVERT_AND_NORMALIZE_IMG)

# Same as before.. also flip the image in the process.
MACRO(CONVERT_AND_FLIP_AND_NORMALIZE_IMG SOME_IMG EPS_IMG PATH)
  ADD_CUSTOM_COMMAND(
      SOURCE      "${PATH}/${SOME_IMG}"
      COMMAND     ${IMAGEMAGICK_CONVERT_EXECUTABLE}
      ARGS        "-flip" "-normalize" "${PATH}/${SOME_IMG}" "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
      DEPENDS     ${RUN_EXAMPLES_SCRIPT} "${SoftwareGuide_BINARY_DIR}/Art/Generated/${SOME_IMG}"
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
  )
ENDMACRO(CONVERT_AND_FLIP_AND_NORMALIZE_IMG)

# Convert an image from some file format to EPS for inclusion in Latex using
# ImageMagick
MACRO(CONVERT_IMG SOME_IMG EPS_IMG PATH)
  ADD_CUSTOM_COMMAND(
      SOURCE      "${PATH}/${SOME_IMG}"
      COMMAND     ${IMAGEMAGICK_CONVERT_EXECUTABLE}
      ARGS        "${PATH}/${SOME_IMG}" "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
      DEPENDS     ${RUN_EXAMPLES_SCRIPT} "${SoftwareGuide_BINARY_DIR}/Art/Generated/${SOME_IMG}"
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
  )
ENDMACRO(CONVERT_IMG)

# Convert an image from some file format to EPS for inclusion in Latex using
# ImageMagick.. also flip in the process.
MACRO(CONVERT_AND_FLIP_IMG SOME_IMG EPS_IMG PATH)
  ADD_CUSTOM_COMMAND(
      SOURCE      "${PATH}/${SOME_IMG}"
      COMMAND     ${IMAGEMAGICK_CONVERT_EXECUTABLE}
      ARGS        "-flip" "${PATH}/${SOME_IMG}" "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
      DEPENDS     ${RUN_EXAMPLES_SCRIPT} "${SoftwareGuide_BINARY_DIR}/Art/Generated/${SOME_IMG}"
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
  )
ENDMACRO(CONVERT_AND_FLIP_IMG)

# Convert an image from some file format to EPS for inclusion in Latex using
# ImageMagick.. This image is an input image. A seperate macro is necessary
# cause input images do not have any dependecies
MACRO(CONVERT_INPUT_IMG SOME_IMG EPS_IMG PATH)
  ADD_CUSTOM_COMMAND(
      SOURCE      "${PATH}/${SOME_IMG}"
      COMMAND     ${IMAGEMAGICK_CONVERT_EXECUTABLE}
      ARGS        "${PATH}/${SOME_IMG}" "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
      DEPENDS     ${RUN_EXAMPLES_SCRIPT}
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
  )
ENDMACRO(CONVERT_INPUT_IMG)

# Convert an image from some file format to EPS for inclusion in Latex using
# ImageMagick.. This image is an input image. A seperate macro is necessary
# cause input images do not have any dependecies. Also flip
MACRO(CONVERT_AND_FLIP_INPUT_IMG SOME_IMG EPS_IMG PATH)
  ADD_CUSTOM_COMMAND(
      SOURCE      "${PATH}/${SOME_IMG}"
      COMMAND     ${IMAGEMAGICK_CONVERT_EXECUTABLE}
      ARGS        "-flip" "${PATH}/${SOME_IMG}" "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
      DEPENDS     ${RUN_EXAMPLES_SCRIPT}
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
  )
ENDMACRO(CONVERT_AND_FLIP_INPUT_IMG)


# Set/Get macros to set/get dependencies on file foo.tex
MACRO(SET_DEP_FOR_TEXFILE NAME VAL)
  SET(${NAME} ${${NAME}} "${VAL}")
  #MESSAGE("set: ${NAME}: ${${NAME}}")
ENDMACRO(SET_DEP_FOR_TEXFILE)
MACRO(GET_DEP_FOR_TEXFILE NAME VAR)
  SET(${VAR} ${${NAME}})
  #MESSAGE("get: ${NAME}: ${${NAME}}")
ENDMACRO(GET_DEP_FOR_TEXFILE)

# Macro to indicate that foo.tex depends on bar.eps
MACRO(ADD_DEP_TEX_ON_EPS_FIGS TEXFILE EPSIMG)
  GET_FILENAME_COMPONENT(name "${TEXFILE}" NAME_WE)
  SET_DEP_FOR_TEXFILE("${name}-DEPS" "${SoftwareGuide_BINARY_DIR}/Art/${EPSIMG}")
  #MESSAGE("Add dependency to ${TEXFILE} to ${EPSIMG}")
  GET_DEP_TEX_ON_EPS_FIGS("${TEXFILE}" deps)
  #MESSAGE("Stored as ${deps}")
ENDMACRO(ADD_DEP_TEX_ON_EPS_FIGS)

# Get macro to get the list of eps figures that are dependencies of foo.tex
MACRO(GET_DEP_TEX_ON_EPS_FIGS TEXFILE VAR)
  GET_FILENAME_COMPONENT(name "${TEXFILE}" NAME_WE)
  #MESSAGE("-- name: ${name} --")
  GET_DEP_FOR_TEXFILE("${name}-DEPS" ${VAR})
ENDMACRO(GET_DEP_TEX_ON_EPS_FIGS)

#
# Find Perl executable

INCLUDE (${CMAKE_ROOT}/Modules/FindPerl.cmake)
IF( NOT PERL_FOUND )
  MESSAGE("Perl executable was not found")
ENDIF( NOT PERL_FOUND )
FIND_PROGRAM(PERLCXXPARSER
  NAMES ${SoftwareGuide_SOURCE_DIR}/ParseCxxExamples.pl
)


ADD_CUSTOM_TARGET(SoftwareGuideExamples  ALL echo)


#
# At some point we should replace the manual OTB_EXAMPLES_SRCS with
# this FILE GLOB_RECURSE expression.
#
#FILE( GLOB_RECURSE OTB_EXAMPLES_SRCS  ${OTB_SOURCE_DIR}/Examples/*.cxx)


SET( OTB_EXAMPLES_SRCS
  ${OTB_SOURCE_DIR}/Examples/Installation/HelloWorld.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/Image1.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/Image2.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/Image3.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/Image4.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/ImageAdaptor1.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/ImageAdaptor2.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/ImageAdaptor3.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/ImageAdaptor4.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/RGBImage.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/VectorImage.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/Image5.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/ImageListExample.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/PointSet1.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/PointSet2.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/PointSet3.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/Mesh1.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/Mesh2.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/Mesh3.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/PointSetWithVectors.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Path/PolyLineParametricPath1.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ImageReadWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/StreamingImageReadWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ExplicitStreamingExample.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/RGBImageReadWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ImageReadCastWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ImageReadRegionOfInterestWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ComplexImageReadWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/MultibandImageReadWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ExtractROI.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ImageSeriesIOExample.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/MetadataExample.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/DXFReaderExample.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/VectorDataIOExample.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/DEMToImageGenerator.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/BinaryThresholdImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/ThresholdImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/CannyEdgeDetectionImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/CompositeFilterExample.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/GradientMagnitudeImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/GradientMagnitudeRecursiveGaussianImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/DerivativeImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/SecondDerivativeRecursiveGaussianImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/LaplacianRecursiveGaussianImageFilter1.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/LaplacianRecursiveGaussianImageFilter2.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/MeanImageFilter.cxx<commit_msg>DOC: adding Lidar example<commit_after>PROJECT(Examples C)

# Macro defs

# This macro states that the executable "EXECUTABLE" upon execution will generate
# output image "OUTPUT_IMG". The executable will depend on "SOURCE_FILE" (since
# it is assumed that it was generated by compiling SOURCE_FILE), the perl script
# used to generate this macro, and any figures that may have been generated by
# other examples that the executable may use as inputs to produce the OUTPUT_IMG.
#
# TODO: Create a smarter macro. For an example that generates 3 outputs, 3 macros
# are created. This results in the example running 3 times, instead of once.
MACRO(RUN_EXAMPLE EXECUTABLE OUTPUT_IMG SOURCE_FILE)
  ADD_CUSTOM_COMMAND(
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/Generated/${OUTPUT_IMG}"
      COMMAND     "${OTB_DIR}/bin/${EXECUTABLE}"
      ARGS        ${ARGN}
      DEPENDS     ${RUN_EXAMPLES_SCRIPT} ${SOURCE_FILE} ${GENERATED_FIGURE_DEPS}
  )
ENDMACRO(RUN_EXAMPLE)

# If we made the assumption that the input file needed for this example
# was generated by running some other example, let us explicitly
# state that dependency so that makefile rules fire in the right
# order.
MACRO(ADD_GENERATED_FIG_DEPS OUTPUT_IMG GENERATED_FIG)
  SET( GENERATED_FIGURE_DEPS ${GENERATED_FIGURE_DEPS} "${SoftwareGuide_BINARY_DIR}/Art/Generated/${GENERATED_FIG}" )
ENDMACRO( ADD_GENERATED_FIG_DEPS )


# Some images need normalization for proper display in the book.
# Create a convenience macro that normalizes SOME_IMG and produces
# a rescaled EPS_IMG using ImageMagick tools.
MACRO(CONVERT_AND_NORMALIZE_IMG SOME_IMG EPS_IMG PATH)
  ADD_CUSTOM_COMMAND(
      SOURCE      "${PATH}/${SOME_IMG}"
      COMMAND     ${IMAGEMAGICK_CONVERT_EXECUTABLE}
      ARGS        "-normalize" "${PATH}/${SOME_IMG}" "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
      DEPENDS     ${RUN_EXAMPLES_SCRIPT} "${SoftwareGuide_BINARY_DIR}/Art/Generated/${SOME_IMG}"
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
  )
ENDMACRO(CONVERT_AND_NORMALIZE_IMG)

# Same as before.. also flip the image in the process.
MACRO(CONVERT_AND_FLIP_AND_NORMALIZE_IMG SOME_IMG EPS_IMG PATH)
  ADD_CUSTOM_COMMAND(
      SOURCE      "${PATH}/${SOME_IMG}"
      COMMAND     ${IMAGEMAGICK_CONVERT_EXECUTABLE}
      ARGS        "-flip" "-normalize" "${PATH}/${SOME_IMG}" "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
      DEPENDS     ${RUN_EXAMPLES_SCRIPT} "${SoftwareGuide_BINARY_DIR}/Art/Generated/${SOME_IMG}"
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
  )
ENDMACRO(CONVERT_AND_FLIP_AND_NORMALIZE_IMG)

# Convert an image from some file format to EPS for inclusion in Latex using
# ImageMagick
MACRO(CONVERT_IMG SOME_IMG EPS_IMG PATH)
  ADD_CUSTOM_COMMAND(
      SOURCE      "${PATH}/${SOME_IMG}"
      COMMAND     ${IMAGEMAGICK_CONVERT_EXECUTABLE}
      ARGS        "${PATH}/${SOME_IMG}" "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
      DEPENDS     ${RUN_EXAMPLES_SCRIPT} "${SoftwareGuide_BINARY_DIR}/Art/Generated/${SOME_IMG}"
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
  )
ENDMACRO(CONVERT_IMG)

# Convert an image from some file format to EPS for inclusion in Latex using
# ImageMagick.. also flip in the process.
MACRO(CONVERT_AND_FLIP_IMG SOME_IMG EPS_IMG PATH)
  ADD_CUSTOM_COMMAND(
      SOURCE      "${PATH}/${SOME_IMG}"
      COMMAND     ${IMAGEMAGICK_CONVERT_EXECUTABLE}
      ARGS        "-flip" "${PATH}/${SOME_IMG}" "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
      DEPENDS     ${RUN_EXAMPLES_SCRIPT} "${SoftwareGuide_BINARY_DIR}/Art/Generated/${SOME_IMG}"
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
  )
ENDMACRO(CONVERT_AND_FLIP_IMG)

# Convert an image from some file format to EPS for inclusion in Latex using
# ImageMagick.. This image is an input image. A seperate macro is necessary
# cause input images do not have any dependecies
MACRO(CONVERT_INPUT_IMG SOME_IMG EPS_IMG PATH)
  ADD_CUSTOM_COMMAND(
      SOURCE      "${PATH}/${SOME_IMG}"
      COMMAND     ${IMAGEMAGICK_CONVERT_EXECUTABLE}
      ARGS        "${PATH}/${SOME_IMG}" "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
      DEPENDS     ${RUN_EXAMPLES_SCRIPT}
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
  )
ENDMACRO(CONVERT_INPUT_IMG)

# Convert an image from some file format to EPS for inclusion in Latex using
# ImageMagick.. This image is an input image. A seperate macro is necessary
# cause input images do not have any dependecies. Also flip
MACRO(CONVERT_AND_FLIP_INPUT_IMG SOME_IMG EPS_IMG PATH)
  ADD_CUSTOM_COMMAND(
      SOURCE      "${PATH}/${SOME_IMG}"
      COMMAND     ${IMAGEMAGICK_CONVERT_EXECUTABLE}
      ARGS        "-flip" "${PATH}/${SOME_IMG}" "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
      DEPENDS     ${RUN_EXAMPLES_SCRIPT}
      OUTPUT      "${SoftwareGuide_BINARY_DIR}/Art/${EPS_IMG}"
  )
ENDMACRO(CONVERT_AND_FLIP_INPUT_IMG)


# Set/Get macros to set/get dependencies on file foo.tex
MACRO(SET_DEP_FOR_TEXFILE NAME VAL)
  SET(${NAME} ${${NAME}} "${VAL}")
  #MESSAGE("set: ${NAME}: ${${NAME}}")
ENDMACRO(SET_DEP_FOR_TEXFILE)
MACRO(GET_DEP_FOR_TEXFILE NAME VAR)
  SET(${VAR} ${${NAME}})
  #MESSAGE("get: ${NAME}: ${${NAME}}")
ENDMACRO(GET_DEP_FOR_TEXFILE)

# Macro to indicate that foo.tex depends on bar.eps
MACRO(ADD_DEP_TEX_ON_EPS_FIGS TEXFILE EPSIMG)
  GET_FILENAME_COMPONENT(name "${TEXFILE}" NAME_WE)
  SET_DEP_FOR_TEXFILE("${name}-DEPS" "${SoftwareGuide_BINARY_DIR}/Art/${EPSIMG}")
  #MESSAGE("Add dependency to ${TEXFILE} to ${EPSIMG}")
  GET_DEP_TEX_ON_EPS_FIGS("${TEXFILE}" deps)
  #MESSAGE("Stored as ${deps}")
ENDMACRO(ADD_DEP_TEX_ON_EPS_FIGS)

# Get macro to get the list of eps figures that are dependencies of foo.tex
MACRO(GET_DEP_TEX_ON_EPS_FIGS TEXFILE VAR)
  GET_FILENAME_COMPONENT(name "${TEXFILE}" NAME_WE)
  #MESSAGE("-- name: ${name} --")
  GET_DEP_FOR_TEXFILE("${name}-DEPS" ${VAR})
ENDMACRO(GET_DEP_TEX_ON_EPS_FIGS)

#
# Find Perl executable

INCLUDE (${CMAKE_ROOT}/Modules/FindPerl.cmake)
IF( NOT PERL_FOUND )
  MESSAGE("Perl executable was not found")
ENDIF( NOT PERL_FOUND )
FIND_PROGRAM(PERLCXXPARSER
  NAMES ${SoftwareGuide_SOURCE_DIR}/ParseCxxExamples.pl
)


ADD_CUSTOM_TARGET(SoftwareGuideExamples  ALL echo)


#
# At some point we should replace the manual OTB_EXAMPLES_SRCS with
# this FILE GLOB_RECURSE expression.
#
#FILE( GLOB_RECURSE OTB_EXAMPLES_SRCS  ${OTB_SOURCE_DIR}/Examples/*.cxx)


SET( OTB_EXAMPLES_SRCS
  ${OTB_SOURCE_DIR}/Examples/Installation/HelloWorld.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/Image1.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/Image2.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/Image3.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/Image4.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/ImageAdaptor1.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/ImageAdaptor2.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/ImageAdaptor3.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/ImageAdaptor4.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/RGBImage.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/VectorImage.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/Image5.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Image/ImageListExample.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/PointSet1.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/PointSet2.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/PointSet3.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/Mesh1.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/Mesh2.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/Mesh3.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Mesh/PointSetWithVectors.cxx
  ${OTB_SOURCE_DIR}/Examples/DataRepresentation/Path/PolyLineParametricPath1.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ImageReadWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/StreamingImageReadWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ExplicitStreamingExample.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/RGBImageReadWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ImageReadCastWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ImageReadRegionOfInterestWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ComplexImageReadWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/MultibandImageReadWrite.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ExtractROI.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/ImageSeriesIOExample.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/MetadataExample.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/DXFReaderExample.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/VectorDataIOExample.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/DEMToImageGenerator.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/LidarReaderExample.cxx
  ${OTB_SOURCE_DIR}/Examples/IO/LidarToImageExample.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/BinaryThresholdImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/ThresholdImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/CannyEdgeDetectionImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/CompositeFilterExample.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/GradientMagnitudeImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/GradientMagnitudeRecursiveGaussianImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/DerivativeImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/SecondDerivativeRecursiveGaussianImageFilter.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/LaplacianRecursiveGaussianImageFilter1.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/LaplacianRecursiveGaussianImageFilter2.cxx
  ${OTB_SOURCE_DIR}/Examples/Filtering/MeanImageFilter.cxx
{'fraction_non_alphanumeric': 0.11004481940416556, 'fraction_numerical': 0.002214605852886897, 'mean_word_length': 5.381561238223418, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '5883812', 'n_tokens_mistral': 7119, 'n_tokens_neox': 6811, 'n_words': 1148}