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

WIP : Front-End Commissioning (FECOM) library #106

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
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
34 changes: 25 additions & 9 deletions companions/fecom/README.rst
Original file line number Diff line number Diff line change
@@ -1,15 +1,31 @@
====================================================================
===========================================================
SuperNEMO Demonstrator Front-end Electronics Commissioning
====================================================================
===========================================================

Code dedicated to SuperNEMO Demonstrator Front-end Electronics Commissioning.
Code dedicated to SuperNEMO Demonstrator Front-end Electronics Commissioning (FECOM)

* documentation/usage : main documentation to use programs of front-end Electronic
Commissioning (FECOM).
Goal
====

* resources :
* Read Raw Hits obtained during commissioning
* Serialize them in Binary format (data.bz2 for example)
* Do an event builder to 'pack' hits into 'Commissioning Events' and store them into a new bank 'HCRD'
* Read the 'HCRD' bank and do some analysis on hits / events
* Continue the chain from the 'HCRD' bank to the 'CD' Falaise bank

* src : location of all sources / header and testing programs of the library

* programs : Location of the main programs of the library. There is the decoder / serializer
and the histogram builder / analysis.
Repository organization
=======================

* documentation :

* resources : Resources useful for fecom process. Example configuration files for tracker and calo mapping between Front-End boards and Geometry. These files were produced during the commissioning of 02/2016.
An other resource file is : Run_00.dat which is an example of what the DAQ calo and tracker gives during the commissioning. The FECOM library will parse these hits and convert them into C++ structures.

* src : location of all sources / header and testing programs of the FECOM library

* programs : Location of the main programs of the library :
- hc_decode_sort_serialize.cxx : program which read / sort and serialize raw hits. You have to specify the input file. An example input file is provided in 'resources/data/Run_00.dat'. The standard output file produced is : "/tmp/decode_sort-output.data.bz2".
- hc_event_builder.cxx : program which take as serialized hits. (input like "decode_sort-output.data.bz2"). It packs calorimeter and tracker raw hits into event thanks to specific L1 and L2 electronic gates. Calo and tracker mapping files are necessary because this programs do the link between electronich channels and geometric channel (Falaise style). It fills a new bank in a datatools::things call 'HCRD' standing for Half Commissioning Raw Data bank. The standard output produce is : "/tmp/hc_event_builder_serialized.brio".
- hc_raw_data_to_calibrated_data.cxx : program to 'convert' the HCRD bank into the CD bank in order to go through the 'standard' Falaise reconstruction pipeline. Standard output is : "/tmp/output_hc2cd.brio".
- hc_rd_bank_reader.cxx : skeleton program which can read the HCRD bank and browse Commissioning Events contained by the bank. This program does nothing in particular but can be used as a sleeve for an analysis program.
16 changes: 9 additions & 7 deletions companions/fecom/programs/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,10 @@ include_directories(${PROJECT_BINARY_DIR}/src/libs/libfecom)
include_directories(${PROJECT_SOURCE_DIR}/src/libs/libfecom)

set(FeCom_PROGRAMS
decode_sort_serialize.cxx
#hc_trigger_builder.cxx
hc_decode_sort_serialize.cxx
hc_event_builder.cxx
hc_raw_data_to_calibrated_data.cxx
hc_data_quality.cxx
#main_decoder_serializer.cxx
#main_histogram_builder.cxx
hc_rd_bank_reader.cxx
)

option(FECOM_ENABLE_PROGRAMS "Build programs associated to libfecom" ON)
Expand All @@ -38,9 +35,14 @@ if(FECOM_ENABLE_PROGRAMS)
add_executable(${_programname}
${_programsource}
)
target_link_libraries(${_programname} fecom)
#target_link_libraries(${_programname} ${Boost_LIBRARIES})
#target_link_libraries(${_programname} Bayeux::Bayeux)
target_link_libraries(${_programname} fecom
# ${FeCom_OTHER_LIBS}
)

# - Ensure link to internal and external deps
set_target_properties(${_programname} PROPERTIES INSTALL_RPATH_USE_LINK_PATH 1)
target_clang_format(${_programname})

if(UNIX AND NOT APPLE)
set_target_properties(${_programname}
Expand Down
286 changes: 0 additions & 286 deletions companions/fecom/programs/decode_sort_serialize.cxx

This file was deleted.

Loading