Ce projet met en œuvre le traitement des données d'événements du détecteur de neutrons en événements neutroniques. Des pipelines pour le traitement des données brutes de Gd-GEM, Muli-Grid, Multi-Blade, SoNDe ainsi que quelques autres détecteurs ont été mis en œuvre. Principalement implémenté en C/C++.
Pour plus de détails sur la structure des fichiers, l'architecture et les primitives, voir documentation/README.md
Le référentiel essdaq contient des scripts pour télécharger et compiler automatiquement ce projet. Les instructions pour compiler manuellement le logiciel de l’unité de formation d’événements suivent.
Pour créer et exécuter ce logiciel, les dépendances suivantes sont requises.
$PATH
actuel. Utilisez la dernière version inférieure à 2.Conan est utilisé pour télécharger des dépendances. Pour que Conan sache d'où les dépendances peuvent être téléchargées, le référentiel de packages ecdc doit être ajouté en exécutant la commande suivante :
conan remote add ecdc-conan-release https://artifactory.esss.lu.se/artifactory/api/conan/ecdc-conan-release
Notez également que pour des fonctionnalités supplémentaires, vous souhaiterez peut-être installer manuellement les dépendances suivantes :
Exécutez les commandes suivantes :
git clone https://github.com/ess-dmsc/event-formation-unit.git
cd event-formation-unit
mkdir build
cd build
cmake ..
make
Lorsque vous utilisez conan pour fournir les dépendances, une option supplémentaire doit être fournie : --settings compiler.libcxx=libstdc++11
. Ainsi l'appel à conan se transforme en :
conan install --build=outdated .. --settings compiler.libcxx=libstdc++11
Pour exécuter les tests unitaires pour ce projet, exécutez les commandes suivantes :
make runtest
Il est également possible d'obtenir un rapport de couverture des tests si les prérequis requis ont été installés. Pour cela, vous devez activer le test de couverture dans le makefile avec cmake. Pour activer le test de couverture pour les makefiles, exécutez
cmake -DCOV=Y
Ensuite, pour obtenir le rapport de couverture, exécutez
make coverage
Pour exécuter un test de fuite de mémoire (à l'aide de Valgrind), exécutez :
make valgrind
Un exemple des commandes requises pour exécuter un pipeline de formation d'événements (dans ce cas, le pipeline freia ) suit :
make efu freia
cd bin
./efu -d ../modules/freia --nohwcheck
Notez que vous devrez également fournir un fichier de configuration dans le cas du module freia .
Pour obtenir les arguments de ligne de commande disponibles, utilisez -h
ou --help
. Cela fonctionne également lorsque vous fournissez un argument de module de détection. Par exemple:
./efu -d ../modules/freia -h
Veuillez lire le fichier CONTRIBUTING.md pour plus de détails sur notre code de conduite et le processus de soumission des demandes de tirage.
Voir aussi la liste des contributeurs sur Github.
Ce projet est sous licence BSD-2, voir le fichier LICENSE pour plus de détails.