Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
85 commits
Select commit Hold shift + click to select a range
fd8ef40
updating for gen2 larlite
twongjirad Sep 4, 2021
c479ab9
modified for gen2 larlite
twongjirad Sep 4, 2021
6f09902
fix larlite incdir, though should change to use cmake
twongjirad Sep 4, 2021
eec451e
Initial FlashMatcher push
polabr Oct 28, 2021
cd1aa2e
Working script that finds ticks
polabr Nov 1, 2021
a005a50
Matches ticks
polabr Nov 5, 2021
293989e
Working FlashMatcher for both Cosmic and Beam
polabr Nov 9, 2021
cbbb765
Cleanup and comments describing methods
polabr Nov 9, 2021
126625f
looks at all tracks in event; accounts for empty flash vector
polabr Nov 10, 2021
9176810
added functionality for showers
polabr Nov 12, 2021
1b89a38
allow one to run the mcpixelpgraph with larlite only
twongjirad Nov 23, 2021
dfdd9c0
Latest commit in preparation for merge
polabr Jan 5, 2022
2abb4fd
Merge branch 'dlgen2' of https://github.com/LArbys/ublarcvapp into dl…
polabr Jan 5, 2022
1268749
Creates output file with FM info
polabr Jan 21, 2022
5b0beb2
bump c++ standard to 14
twongjirad Feb 8, 2022
addb6b4
align with ROOT c++ standard
twongjirad Feb 8, 2022
9ffa446
fix up cxx standard msg
twongjirad Feb 8, 2022
ca3c79e
use detprofile start for mcshower start points
twongjirad Feb 19, 2022
a79893d
fixed most of shower start point
twongjirad Feb 19, 2022
0e2ebcc
added features to trackimagemask
twongjirad Mar 21, 2022
ee17980
small changes to build on cluster
twongjirad Mar 21, 2022
c4ab30b
latest flashmatcher save
polabr Apr 14, 2022
ba2e4d7
Merge branch 'dlgen2' of https://github.com/LArbys/ublarcvapp into dl…
polabr Apr 14, 2022
1348746
made sure to properly initialize node_t variables
twongjirad Apr 24, 2022
c9f2470
add ancestor ids. add initializations
twongjirad Apr 26, 2022
dcddcd5
grabs position of first mcstep in detector, rather than cosmic origin
polabr May 16, 2022
383ce3b
changes to grab pair with opflash tick and index in ev_opflash
polabr May 19, 2022
1f9ff9f
grab ID for showers as well
polabr May 27, 2022
10acd22
added MCPixelPMap class to MCTools to return a simulated particle typ…
mmrosenberg Oct 13, 2022
9cf576c
fixed bug in MCPixelPMap and added python binding
mmrosenberg Oct 17, 2022
7e91fda
updated return info for MCPixelPMap
mmrosenberg Nov 26, 2022
c17421a
Merge branch 'mcPixelDict' into dlgen2
mmrosenberg Dec 12, 2022
378ac68
made no flash match flag -9999 instead of -999
polabr Jan 26, 2023
786585b
Merge branch 'dlgen2' of https://github.com/LArbys/ublarcvapp into dl…
polabr Jan 26, 2023
9c03ff8
fix constructor/destructor; clean print statements
polabr Jun 20, 2023
9d078b1
added v2 version of track-flash matching for petastorm tests
twongjirad Feb 13, 2024
2dc5dff
provide convenience function for outputing set of trackids
twongjirad Feb 22, 2024
2b76fb0
fixed bugs in flashmatcher. removed compilation warnings. created cla…
twongjirad Mar 21, 2024
2cfef2b
update for revised opflash data maker which checks coverage of tracks
twongjirad May 3, 2024
37706cf
added clear functions
twongjirad May 3, 2024
4820d04
fix flashmatcher bugs. example adding tracks to second non-neutrino t…
twongjirad May 4, 2024
87fe255
a more complete accounting of the neutrino interaction is provided. u…
twongjirad May 11, 2024
222dcf3
saved more keypoint positions for on the nodes. maybe useful one day.…
twongjirad May 11, 2024
7ba292f
added start for ub photon vis library interface
twongjirad May 15, 2024
e744fd5
got simple visibility look-up
twongjirad May 15, 2024
9476bc3
finished simple interface to the ubphotonlib data. confirmed visually…
twongjirad May 15, 2024
55a7f5e
add visualization of ubphotonlib output. fix cxx standard cmake error
twongjirad Jun 25, 2024
7afd567
finally fixed start point of electron and photon showers. photon espe…
twongjirad Jul 22, 2024
962deb8
fix mcpixelpgraph bug. add function get get pixel sum
twongjirad Jul 30, 2024
6451f3d
add access function for edep position for a trackid node
twongjirad Jul 30, 2024
b78e3cd
added pixel sum threshold for shower fragments used to determine star…
twongjirad Aug 8, 2024
6bc4c28
updated mcpg to calc and save pixelsum and crop around trunk with ima…
twongjirad Aug 16, 2024
515e1e8
make clear the getter functions for true photon information
twongjirad Aug 17, 2024
f58e2d3
fixed a lot of tabs so it looks good in vscode
twongjirad Aug 19, 2024
85c431c
formatting mostly. some commenting
twongjirad Aug 20, 2024
61a9d20
identify bad image masks
twongjirad Aug 29, 2024
f361d00
save fixes to photon trunk finding. removed the use of the noise clus…
twongjirad Sep 6, 2024
f8bd223
just formatting for vscode maybe
twongjirad Sep 22, 2024
cbcf014
fix exception that occurs when near boundary of the TPC
twongjirad Sep 25, 2024
84a7e40
fixes for ubdl build on cvmfs
Feb 11, 2025
c284c49
store pixel values
twongjirad Mar 7, 2025
a1a5a44
changes to build on fnal and not seg fault
Mar 12, 2025
d2ec3bb
tweaks to not seg fault
Mar 12, 2025
e96f9e1
remove larlite chstatus
twongjirad Mar 23, 2025
10d49e5
fixes to be able to compile with clang 14
Mar 26, 2025
752dc23
removed use of glob commands in cmakelists which has bad behavior wit…
twongjirad Mar 31, 2025
952d7bb
add missing lib needed when linking
twongjirad Apr 14, 2025
ab8840c
added tool to sum pixel values around 3d point projected into larcv i…
twongjirad May 10, 2025
1e72b55
fix bug where threshold cut in wrong direction
twongjirad May 12, 2025
430da2e
added class to employ photonlib given a list of spacepoints with an a…
twongjirad Jun 11, 2025
52f9626
added track to spacepoint with charge utility for optical signal pred…
twongjirad Jun 12, 2025
793a823
added shower to optical detector converter
twongjirad Jun 12, 2025
8e492b5
save examples
twongjirad Jun 12, 2025
3614db7
example script that processes all track and showers in order to make …
twongjirad Jun 12, 2025
b0f603c
add missing constructor and destructors
twongjirad Jul 2, 2025
9916503
turned off deprecated code
twongjirad Jul 2, 2025
f220940
provide python friendly methods to get ancestorid and shower mother ids
twongjirad Nov 12, 2025
a392d71
add access functions for node objects in mcpixelpgraph
twongjirad Nov 17, 2025
fbd2c3f
refactoring mcpixelpgraph. starting by isolating graph part into mcpa…
twongjirad Nov 20, 2025
6689332
added lookup map for finding node by trackid. less weird that old me…
twongjirad Nov 20, 2025
5a4e082
add simch to pixeltriplet labels
twongjirad Nov 21, 2025
e91e937
add hdf5 dependency
twongjirad Nov 21, 2025
6127e27
debugged. support simch from driftWC simpleSC product which makes bet…
twongjirad Dec 2, 2025
403d5c9
add c std lib for size_t
twongjirad Dec 4, 2025
b2bf054
make explicit the hdf5 we link against. this is important to use the …
twongjirad Dec 4, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
126 changes: 126 additions & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,126 @@
# CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

## Project Overview

ublarcvapp is a C++ framework with Python bindings for analyzing Liquid Argon Time Projection Chamber (LArTPC) data from the MicroBooNE neutrino physics experiment. It provides tools for:
- Deep learning-based particle tagging and classification
- 3D reconstruction algorithms
- Image manipulation and processing
- Monte Carlo truth analysis
- Event filtering and selection

## Build Commands

### Prerequisites Setup
Ensure these environment variables are set:
- `LARCV_LIBDIR` - LArCV library directory
- `LARLITE_LIBDIR` and `LARLITE_INCDIR` - larlite directories
- `LARCV_INCDIR` - LArCV include directory
- `LAROPENCV_LIBDIR` and `LAROPENCV_INCDIR` - LArOpenCV directories
- Optional: `GEO2D_BASEDIR` - for Geo2D support

### Building
```bash
mkdir build
cd build
cmake ..
make -j4
make install
source ../configure.sh
```

### Running Tests
Tests are located in individual module `test/` directories. Example:
```bash
cd ublarcvapp/Reco3D/test
python test_astar.py

cd ublarcvapp/UBImageMod/test
python test_ubsplit.py [input_larcv_file] [adc_producer_name]
```

## Code Architecture

### Core Components

1. **Processing Framework** (`LLCVProcessor/`)
- `LLCVProcessBase` - Base class for all processing modules
- `LLCVProcessDriver` - Manages processing chain execution
- Configuration via `.cfg` files

2. **Image Processing** (`UBImageMod/`)
- `UBSplitDetector` - Splits detector images into subregions
- `UBCropLArFlow` - Crops sparse larflow data
- `InfillImageStitcher` - Stitches subimages back together

3. **3D Reconstruction** (`Reco3D/`)
- `AStar3DAlgo` - A* pathfinding for 3D track reconstruction
- Configuration through `AStar3DAlgoConfig`
- Supports both regular and proton-specific tracking

4. **Deep Learning Integration** (`DLTagger/`)
- `DLTagger` - Main interface for DL model predictions
- `MRCNNMatch` - Mask R-CNN matching algorithms
- Integrates with external DL model servers

5. **Monte Carlo Tools** (`MCTools/`)
- Truth matching utilities
- Space charge effect corrections
- Flash matching algorithms

### Key Design Patterns

1. **Factory Pattern**: Most algorithms use factory registration:
```cpp
static LArbysImageFactory __global_LArbysImageFactory__;
```

2. **Configuration**: Algorithms use dedicated config classes:
```cpp
class AlgoConfig : public larcv::PSet {
// Configuration parameters
};
```

3. **Process Chain**: Modules inherit from `LLCVProcessBase` and implement:
- `configure()` - Setup from config file
- `initialize()` - One-time initialization
- `process()` - Per-event processing
- `finalize()` - Cleanup

### Data Flow

1. Input: ROOT files containing larcv::EventImage2D, larlite::event_* objects
2. Processing: Chain of LLCVProcess modules
3. Output: Modified/new data products saved to output ROOT files

## Development Guidelines

### Adding New Modules

1. Create directory under `ublarcvapp/`
2. Add CMakeLists.txt with:
```cmake
set(MODULE_NAME YourModule)
add_subdirectory(${MODULE_NAME})
```
3. Implement classes inheriting from `LLCVProcessBase`
4. Add LinkDef.h for ROOT dictionary generation
5. Register with factory if needed

### Working with Sparse Data

Many algorithms work with sparse representations:
- Use `larcv::EventSparseTensor2D` for sparse image data
- Convert between dense/sparse with utility functions
- Handle coordinate transformations carefully

### Coordinate Systems

Be aware of multiple coordinate systems:
- Wire/tick 2D coordinates per plane
- 3D spatial coordinates (with/without space charge effects)
- Image pixel coordinates
- Detector geometry coordinates
60 changes: 55 additions & 5 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,28 @@ if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT)
endif()

# CFLAGS
SET(CMAKE_C_FLAGS "-std=gnu99 -pedantic -fPIC -pedantic -fopenmp -mtune=native")
SET(CMAKE_CXX_FLAGS "-std=c++11 -Wall -fPIC -pedantic -fopenmp -mtune=native")
#SET(CMAKE_C_FLAGS "-std=gnu99 -pedantic -fPIC -pedantic -fopenmp -mtune=native")
#SET(CMAKE_CXX_FLAGS "-Wall -fPIC -pedantic -fopenmp -mtune=native")

## Dependencies

#---CERN ROOT (required)
find_package(ROOT CONFIG REQUIRED)

# we set the compiler version based on the one used for ROOT
execute_process(
COMMAND bash "-c" "root-config --features"
OUTPUT_VARIABLE TEST_ROOT_CXX_STANDARD )
if (${TEST_ROOT_CXX_STANDARD} MATCHES "cxx17")
message( STATUS "using cxx17")
set(CMAKE_CXX_STANDARD 17)
elseif (${TEST_ROOT_CXX_STANDARD} MATCHES "cxx14")
message( STATUS "using cxx14")
set(CMAKE_CXX_STANDARD 14)
else ()
message( STATUS "using cxx11")
set(CMAKE_CXX_STANDARD 11)
endif()

#---LArCV (required)
set( larcv_DIR "$ENV{LARCV_LIBDIR}/cmake/larcv")
find_package( larcv REQUIRED )
Expand Down Expand Up @@ -55,9 +69,12 @@ endif()

#---Eigen3
find_package(Eigen3 REQUIRED)
get_property(EIGEN3_INCLUDE_DIRS TARGET Eigen3::Eigen PROPERTY INTERFACE_INCLUDE_DIRECTORIES )

#---LArLite
set( LARLITE_INC_DIRS "$ENV{LARLITE_COREDIR}" "$ENV{LARLITE_BASEDIR}" "$ENV{LARLITE_USERDEVDIR}" "$ENV{LARLITE_BASEDIR}/../" )
set( larlite_DIR $ENV{LARLITE_LIBDIR}/cmake/larlite )
find_package( larlite REQUIRED )
set( LARLITE_INC_DIRS "$ENV{LARLITE_INCDIR}" )
set( LARLITE_LIB_DIR "$ENV{LARLITE_LIBDIR}" )
set( HAS_LARLITE 1 )
file( GLOB LARLITE_LIBS "$ENV{LARLITE_LIBDIR}/libLArLite*.so" )
Expand All @@ -83,9 +100,42 @@ if (Boost_FOUND)
message(STATUS "Using boost libraries: ${Boost_LIBRARIES}")
message(STATUS "Using boost thread library: ${Boost_THREAD_LIBRARY}")
link_directories(${Boost_LIBRARY_DIRS})
else()
message(STATUS "Boost not found")
endif (Boost_FOUND)

#INCLUDE_DIRECTORIES( ${Boost_INCLUDE_DIR} )
#---HDF5 (for machine learning data output)
find_package(HDF5 COMPONENTS C CXX QUIET)
if(HDF5_FOUND)
message(STATUS "Found HDF5: ${HDF5_VERSION}")
add_compile_definitions(HAVE_HDF5)
else()
message(STATUS "HDF5 not found, HDF5 output features will be disabled")
endif()

#---HighFive (header-only HDF5 C++ interface)
if(HDF5_FOUND)
# Try to find HighFive as an installed package first
find_package(HighFive QUIET)
if(NOT HighFive_FOUND)
# If not found, check if it exists as a submodule or in a known location
if(EXISTS "$ENV{UBDL_BASEDIR}/extern/highfive/include")
set(HIGHFIVE_INCLUDE_DIR "$ENV{UBDL_BASEDIR}/extern/highfive/include")
message(STATUS "Found HighFive headers at: ${HIGHFIVE_INCLUDE_DIR}")
set(HighFive_FOUND TRUE)
else()
message(STATUS "HighFive not found. To use HDF5 features, please:")
message(STATUS " 1. Install HighFive: https://github.com/highfive-devs/highfive/tree/main ")
message(STATUS " 2. Or add as submodule: git submodule add https://github.com/highfive-devs/highfive/tree/main extern/highfive")
endif()
else()
message(STATUS "Found HighFive package")
endif()

if(HighFive_FOUND)
add_compile_definitions(HAVE_HIGHFIVE)
endif()
endif()

#--- glog
#find_package(glog REQUIRED)
Expand Down
1 change: 1 addition & 0 deletions python/ublarcvapp/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,3 +17,4 @@
ROOT.gSystem.Load(l)

import ROOT.ublarcvapp as ublarcvapp
ublarcvapp.mctools.MCPixelPGraph
25 changes: 11 additions & 14 deletions ublarcvapp/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,22 +1,19 @@
add_subdirectory(LLCVProcessor)
add_subdirectory(dbscan)
add_subdirectory(Reco3D)
add_subdirectory(ContourTools)

#add_subdirectory(Reco3D)
#add_subdirectory(LArOpenCVHandle)
add_subdirectory(ContourTools) # requires opencv, laropencv
if (HAS_LARLITE)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DHAS_LARLITE")
add_subdirectory(LArliteHandler)
add_subdirectory(LLCVProcessor)
add_subdirectory(UBImageMod)
add_subdirectory(UBWireTool)
add_subdirectory(ubdllee)
add_subdirectory(Filter)
# add_subdirectory(Filter)
add_subdirectory(MCTools)
add_subdirectory(UBPhotonLib)
add_subdirectory(ParticleToPixelUtils)
endif()


if (LARCV_USE_GEO2D)
add_subdirectory(LArOpenCVHandle)
endif()

if (Boost_FOUND)
add_subdirectory(DLTagger)
endif()
#if (Boost_FOUND)
# add_subdirectory(DLTagger)
#endif()
66 changes: 48 additions & 18 deletions ublarcvapp/ContourTools/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,31 +1,61 @@
set(MODULE_NAME ContourTools)

set(LIBNAME LArCVApp_${MODULE_NAME})

# Collect the headers
file(GLOB HEADERS "*.h")
set( HEADERS
ContourShapeMeta.h
ContourCluster.h
ContourClusterAlgo.h
#ContourAStarClusterAlgo.h
)

# Remove LinkDef.h
list(FILTER HEADERS EXCLUDE REGEX ".*LinkDef.h$")

# However, the file(GLOB...) allows for wildcard additions:
file(GLOB SOURCES "*.cxx")
# Collect the sources
add_library( ${LIBNAME} SHARED
ContourShapeMeta.cxx
ContourCluster.cxx
ContourClusterAlgo.cxx
#ContourAStarClusterAlgo.cxx
)

# library name
set(LIBNAME LArCVApp_${MODULE_NAME})
#message("opencv libs: ${OpenCV_LIBS}")
#message("laropencv libs: ${LAROPENCV_LIBS}")
#message("opencv inc: ${OpenCV_INCLUDE_DIRS}")
set_target_properties(${LIBNAME} PROPERTIES PUBLIC_HEADER "${HEADERS}")

# includes
include_directories(${LARCV_INCLUDE_DIR} $ENV{LAROPENCV_BASEDIR} $ENV{UBLARCVAPP_BASEDIR} ${OpenCV_INCLUDE_DIRS} ${GEO2D_INC_DIR} $ENV{LARLITE_USERDEVDIR} )
target_include_directories(${LIBNAME}
PUBLIC
$<INSTALL_INTERFACE:include/ublarcvapp/${MODULE_NAME}>
PRIVATE
${PROJECT_SOURCE_DIR}
${LARLITE_INCLUDE_DIR}
${LARCV_INCLUDE_DIR}
${OpenCV_INCLUDE_DIRS}
${GEO2D_INC_DIR}
${LAROPENCV_INC_DIR}
)
#target_include_directories(${LIBNAME} PUBLIC ${LARCV_INCLUDE_DIR} ${LARLITE_INC_DIRS})
target_link_libraries( ${LIBNAME} PUBLIC
opencv_imgcodecs
opencv_core
LArCVCoreBase
LArCVCoreDataFormat
LArCVCoreCVUtil
${GEO2D_LIBS}
${LAROPENCV_LIBS}
#LArCVApp_LArOpenCVHandle
#LArCVApp_Reco3D
)
include_directories( ${CMAKE_CURRENT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}
${LARLITE_INCLUDE_DIR}
${LARCV_INCLUDE_DIR}
${OpenCV_INCLUDE_DIRS}
${GEO2D_INC_DIR}
)

# Generate the dictionary
ROOT_GENERATE_DICTIONARY(G__${LIBNAME} ${HEADERS} LINKDEF LinkDef.h)

# Generate the shared library from the sources
add_library( ${LIBNAME} SHARED ${SOURCES} G__${LIBNAME}.cxx)
set_target_properties(${LIBNAME} PROPERTIES PUBLIC_HEADER "${HEADERS}")
target_include_directories(${LIBNAME} PUBLIC ${LARCV_INCLUDE_DIR} ${OpenCV_INCLUDE_DIRS} )
target_link_libraries(${LIBNAME} LArCVCoreBase LArCVCoreDataFormat LArCVCoreCVUtil LArCVApp_LArOpenCVHandle LArCVApp_Reco3D ${LAROPENCV_LIBS} ${GEO2D_LIBS} opencv_core)
# add dictionary file to sources
target_sources( ${LIBNAME} PRIVATE G__${LIBNAME}.cxx )

# install libraries and headers
install(TARGETS ${LIBNAME}
Expand Down
4 changes: 2 additions & 2 deletions ublarcvapp/ContourTools/ContourAStarClusterAlgo.cxx
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
#include <stdexcept>

// larlite
#include "LArUtil/LArProperties.h"
#include "LArUtil/Geometry.h"
#include "larlite/LArUtil/LArProperties.h"
#include "larlite/LArUtil/Geometry.h"

// larcv
#include "larcv/core/CVUtil/CVUtil.h"
Expand Down
2 changes: 1 addition & 1 deletion ublarcvapp/ContourTools/ContourAStarClusterAlgo.h
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
#include <opencv2/imgproc.hpp>
#include <opencv2/imgcodecs.hpp>

#include "ContourShapeMeta.h"
#include "ublarcvapp/ContourTools/ContourShapeMeta.h"

namespace ublarcvapp {

Expand Down
4 changes: 2 additions & 2 deletions ublarcvapp/ContourTools/ContourCluster.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,13 +4,13 @@
#include <vector>
#include <set>

#include "ContourShapeMeta.h"

#ifdef USE_OPENCV
#include <opencv2/opencv.hpp>
#include <opencv2/core/core.hpp>
#endif

#include "ublarcvapp/ContourTools/ContourShapeMeta.h"

namespace ublarcvapp {

class ContourCluster : public std::vector< std::vector<ContourShapeMeta> > {
Expand Down
2 changes: 1 addition & 1 deletion ublarcvapp/ContourTools/ContourClusterAlgo.h
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

#include <opencv2/core.hpp>

#include "ContourShapeMeta.h"
#include "ublarcvapp/ContourTools/ContourShapeMeta.h"

namespace ublarcvapp {

Expand Down
3 changes: 2 additions & 1 deletion ublarcvapp/DLTagger/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ add_subdirectory( mrcnnmatch )
message("headers: ${HEADERS}")
message("project source dir: ${PROJECT_SOURCE_DIR}")
message("eigen3: ${EIGEN3_INCLUDE_DIRS}")
message("boost include dir: ${Boost_INCLUDE_DIRS}")

get_target_property(ALL_HEADERS ${LIBNAME} PUBLIC_HEADER)

Expand All @@ -57,7 +58,7 @@ target_include_directories(${LIBNAME}
)
target_link_libraries(${LIBNAME} ${LARLITE_LIBS_USED} ${LARCV_LIBS_USED} ${UBLARCVAPP_LIBS_USED} ${LAROPENCV_LIBS} ${GEO2D_LIBS} opencv_core)

include_directories( ${CMAKE_CURRENT_SOURCE_DIR} ${PROJECT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/mrcnnmatch ${LARCV_INCLUDE_DIR} ${LARLITE_INCLUDES} $ENV{CILANTRO_INC_DIR} ${EIGEN3_INCLUDE_DIRS} ${Boost_INCLUDE_DIR} ${OpenCV_INCLUDE_DIRS} )
include_directories( ${CMAKE_CURRENT_SOURCE_DIR} ${PROJECT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/mrcnnmatch ${LARCV_INCLUDE_DIR} ${LARLITE_INCLUDES} $ENV{CILANTRO_INC_DIR} ${EIGEN3_INCLUDE_DIRS} ${Boost_INCLUDE_DIRS} ${OpenCV_INCLUDE_DIRS} )
ROOT_GENERATE_DICTIONARY(G__${LIBNAME} ${ALL_HEADERS} LINKDEF LinkDef.h)
target_sources( ${LIBNAME} PRIVATE G__${LIBNAME}.cxx )

Expand Down
Loading