Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding dNdX to edm4hep::Track #137

Merged
merged 24 commits into from
May 26, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
2d70253
add EDM4Hep2LCIO_example
clementhelsens Oct 2, 2020
78348d8
fix typo
clementhelsens Oct 2, 2020
75649bc
remove printouts
clementhelsens Oct 2, 2020
c22ee05
bug fix in covariance matrix and remove printout
clementhelsens Oct 5, 2020
4917da8
Merge branch 'master' of https://github.com/key4hep/EDM4hep
clementhelsens Oct 14, 2020
b39eebd
Merge remote-tracking branch 'origin/master'
clementhelsens Oct 23, 2020
21d34d3
Merge remote-tracking branch 'upstream/master'
clementhelsens Nov 8, 2020
3eb56c8
Merge remote-tracking branch 'upstream/master'
clementhelsens Feb 22, 2022
3dcd77b
add dNdX to edm4hep:track
clementhelsens Feb 22, 2022
039b6eb
Merge branch 'master' into dndx
clementhelsens Mar 7, 2022
93b914c
new implementation of quantity for dQ/dX
clementhelsens Mar 14, 2022
df3ff96
Merge remote-tracking branch 'upstream/master' into dndx
clementhelsens Mar 14, 2022
962e0f1
Merge remote-tracking branch 'upstream/master'
clementhelsens Mar 14, 2022
5804a2c
Merge branch 'master' into dndx
clementhelsens Mar 14, 2022
e1a44d4
Merge branch 'dndx' of github.com:clementhelsens/EDM4hep into dndx
clementhelsens Mar 14, 2022
c5605cd
Add members
clementhelsens Mar 14, 2022
8d116a5
Merge branch 'master' into dndx
clementhelsens Mar 29, 2022
1a31eed
add dedx back
clementhelsens Apr 13, 2022
8258dd4
Merge branch 'dndx' of github.com:clementhelsens/EDM4hep into dndx
clementhelsens Apr 13, 2022
bb4a825
Merge branch 'master' into dndx
vvolkl May 24, 2022
e498603
Merge branch 'master' into dndx
tmadlener May 24, 2022
9a1a504
test: set ROOT_INCLUDE_PATH, add regex fail to catch missing dict hea…
vvolkl May 26, 2022
e4ccc92
link test_rdf to podioRootIO
vvolkl May 26, 2022
4f85c04
remove debug env setting
vvolkl May 26, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
9 changes: 8 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cmake_minimum_required(VERSION 3.3)

project(EDM4HEP)
project(EDM4HEP LANGUAGES CXX)

# project version
SET( ${PROJECT_NAME}_VERSION_MAJOR 0 )
Expand All @@ -9,6 +9,13 @@ SET( ${PROJECT_NAME}_VERSION_PATCH 2 )

SET( ${PROJECT_NAME}_VERSION "${${PROJECT_NAME}_VERSION_MAJOR}.${${PROJECT_NAME}_VERSION_MINOR}.${${PROJECT_NAME}_VERSION_PATCH}" )

#- RPATH settings ----------------------------------------------
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE CACHE BOOL "RPATH USE LINK PATH")
option(USE_RUNPATH_INSTEAD_OF_RPATH "Use runpath instead of rpath (allow specifying liked libraries via LD_LIBRARY_PATH)" OFF)
if(USE_RUNPATH_INSTEAD_OF_RPATH)
set(CMAKE_SHARED_LINKER_FLAGS "-Wl,--enable-new-dtags")
endif()


#--- Run the podio class generator and link library -------

Expand Down
7 changes: 7 additions & 0 deletions edm4hep.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,12 @@ components:
ObjectID(const podio::ObjectID& id ): index(id.index), collectionID(id.collectionID) {}\n
"

# quantity with an identifier, a value and an error
edm4hep::Quantity:
Members:
- int16_t type // flag identifying how to interpret the quantity
- float value // value of the quantity
- float error // error on the value of the quantity

datatypes :

Expand Down Expand Up @@ -358,6 +364,7 @@ datatypes :
VectorMembers:
- int32_t subDetectorHitNumbers //number of hits in particular subdetectors.Check/set collection variable TrackSubdetectorNames for decoding the indices
- edm4hep::TrackState trackStates //track states
- edm4hep::Quantity dxQuantities // different measurements of dx quantities
OneToManyRelations:
- edm4hep::TrackerHit trackerHits //hits that have been used to create this track
- edm4hep::Track tracks //tracks (segments) that have been combined to create this track
Expand Down
40 changes: 19 additions & 21 deletions test/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,60 +2,60 @@ IF(NOT BUILD_TESTING)
RETURN()
ENDIF()

function(set_test_env _testname)
set_property(TEST ${_testname} APPEND PROPERTY ENVIRONMENT
LD_LIBRARY_PATH=$<TARGET_FILE_DIR:edm4hep>:$<TARGET_FILE_DIR:podio::podio>:$ENV{LD_LIBRARY_PATH}
ROOT_INCLUDE_PATH=${PROJECT_SOURCE_DIR}/edm4hep:$ENV{ROOT_INCLUDE_PATH}
)
set_tests_properties(${_testname} PROPERTIES
FAIL_REGULAR_EXPRESSION "[^a-z]Error;ERROR;error;Failed"
)
endfunction()

add_executable(write_events write_events.cc)
target_include_directories(write_events PUBLIC ${CMAKE_SOURCE_DIR}/edm4hep )
target_link_libraries(write_events edm4hep podio::podioRootIO)
add_test(NAME write_events COMMAND write_events)
set_tests_properties(write_events PROPERTIES
ENVIRONMENT LD_LIBRARY_PATH=$<TARGET_FILE_DIR:edm4hep>:$<TARGET_FILE_DIR:podio::podio>:$ENV{LD_LIBRARY_PATH}
)
set_test_env(write_events)

add_executable(read_events read_events.cc)
target_include_directories(read_events PUBLIC ${CMAKE_SOURCE_DIR}/edm4hep )
target_link_libraries(read_events edm4hep podio::podioRootIO)
add_test(NAME read_events COMMAND read_events)
set_tests_properties(read_events PROPERTIES
DEPENDS write_events
ENVIRONMENT LD_LIBRARY_PATH=$<TARGET_FILE_DIR:edm4hep>:$<TARGET_FILE_DIR:podio::podio>:$ENV{LD_LIBRARY_PATH}
)
set_test_env(read_events)

IF (podio_VERSION VERSION_GREATER "0.13")
add_executable(reco_particle_ref reco_particle_ref.cc)
target_include_directories(reco_particle_ref PUBLIC ${CMAKE_SOURCE_DIR}/edm4hep)
target_link_libraries(reco_particle_ref edm4hep podio::podioRootIO)
add_test(NAME reco_particle_ref COMMAND reco_particle_ref)
set_tests_properties(reco_particle_ref PROPERTIES
ENVIRONMENT
LD_LIBRARY_PATH=$<TARGET_FILE_DIR:edm4hep>:$<TARGET_FILE_DIR:podio::podio>:$ENV{LD_LIBRARY_PATH}
)
set_test_env(reco_particle_ref)
ENDIF()

IF(TARGET edm4hepSioBlocks)
add_executable(write_events_sio write_events_sio.cc)
target_include_directories(write_events_sio PUBLIC ${CMAKE_SOURCE_DIR}/edm4hep)
target_link_libraries(write_events_sio edm4hep podio::podioSioIO)
add_test(NAME write_events_sio COMMAND write_events_sio)
set_tests_properties(write_events_sio PROPERTIES
ENVIRONMENT LD_LIBRARY_PATH=$<TARGET_FILE_DIR:edm4hep>:$<TARGET_FILE_DIR:podio::podio>:$ENV{LD_LIBRARY_PATH}
)
set_test_env(write_events_sio)

add_executable(read_events_sio read_events_sio.cc)
target_include_directories(read_events_sio PUBLIC ${CMAKE_SOURCE_DIR}/edm4hep)
target_link_libraries(read_events_sio edm4hep podio::podioSioIO)
add_test(NAME read_events_sio COMMAND read_events_sio)
set_test_env(read_events_sio)
set_tests_properties(read_events_sio PROPERTIES
ENVIRONMENT LD_LIBRARY_PATH=$<TARGET_FILE_DIR:edm4hep>:$<TARGET_FILE_DIR:podio::podio>:$ENV{LD_LIBRARY_PATH}
DEPENDS write_events_sio
)
ENDIF()

IF(TARGET ROOT::ROOTDataFrame)
add_executable(test_rdf test_rdf.cc)
target_include_directories(test_rdf PUBLIC ${CMAKE_SOURCE_DIR}/edm4hep ${CMAKE_SOURCE_DIR}/dataframe )
target_link_libraries(test_rdf edm4hepRDF ROOT::ROOTDataFrame)
target_link_libraries(test_rdf edm4hepRDF ROOT::ROOTDataFrame podio::podioRootIO)
add_test(NAME test_rdf COMMAND test_rdf)
set_tests_properties(test_rdf PROPERTIES
ENVIRONMENT LD_LIBRARY_PATH=$<TARGET_FILE_DIR:edm4hep>:$<TARGET_FILE_DIR:podio::podio>:$ENV{LD_LIBRARY_PATH}
set_test_env(test_rdf)
set_property(TEST test_rdf PROPERTY DEPENDS
DEPENDS write_events
)
endif()
Expand All @@ -69,9 +69,7 @@ if(HepMC3_FOUND AND HepPDT_FOUND )
target_include_directories(edm4hep_testhepmc PUBLIC ${HEPMC3_INCLUDE_DIR} ${HEPPDT_INCLUDE_DIR} )
target_link_libraries(edm4hep_testhepmc edm4hep podio::podioRootIO ${HEPPDT_LIBRARIES} ${HEPMC3_LIBRARIES})
add_test(NAME edm4hep_testhepmc COMMAND edm4hep_testhepmc)
set_tests_properties(edm4hep_testhepmc PROPERTIES
ENVIRONMENT LD_LIBRARY_PATH=$<TARGET_FILE_DIR:edm4hep>:$<TARGET_FILE_DIR:podio::podio>:$ENV{LD_LIBRARY_PATH}
)
set_test_env(edm4hep_testhepmc)
endif()

add_subdirectory(utils)