Este projeto implementa o processamento de dados de eventos de detectores de nêutrons em eventos de nêutrons. Pipelines para processamento de dados brutos de Gd-GEM, Muli-Grid, Multi-Blade, SoNDe, bem como alguns outros detectores foram implementados. Principalmente implementado em C/C++.
Para obter mais detalhes sobre a estrutura do arquivo, arquitetura e primitivas, consulte documentação/README.md
O repositório essdaq possui scripts para baixar e compilar automaticamente este projeto. Seguem instruções para compilar manualmente o software da unidade de formação de eventos.
Para construir e executar este software, são necessárias as seguintes dependências.
$PATH
atual. Use a versão mais recente menor que 2.Conan é usado para baixar dependências. Para que Conan saiba de onde as dependências podem ser baixadas, o repositório do pacote ecdc deve ser adicionado executando o seguinte comando:
conan remote add ecdc-conan-release https://artifactory.esss.lu.se/artifactory/api/conan/ecdc-conan-release
Observe também que, para obter funcionalidades adicionais, você pode querer instalar manualmente as seguintes dependências:
Execute os seguintes comandos:
git clone https://github.com/ess-dmsc/event-formation-unit.git
cd event-formation-unit
mkdir build
cd build
cmake ..
make
Ao usar conan para fornecer as dependências, uma opção extra deve ser fornecida: --settings compiler.libcxx=libstdc++11
. Assim, a chamada para conan se transforma em:
conan install --build=outdated .. --settings compiler.libcxx=libstdc++11
Para executar os testes de unidade deste projeto, execute os seguintes comandos:
make runtest
Também é possível obter um relatório de cobertura de teste se os pré-requisitos necessários tiverem sido instalados. Para isso você deve habilitar o teste de cobertura no makefile com cmake. Para habilitar o teste de cobertura para makefiles, execute
cmake -DCOV=Y
Então, para obter o relatório de cobertura, execute
make coverage
Para executar um teste de vazamento de memória (usando Valgrind), execute:
make valgrind
Segue um exemplo dos comandos necessários para executar um pipeline de formação de eventos (neste caso o pipeline freia ):
make efu freia
cd bin
./efu -d ../modules/freia --nohwcheck
Observe que você também precisará fornecer um arquivo de configuração no caso do módulo freia .
Para obter os argumentos de linha de comando disponíveis, use -h
ou --help
. Isso também funciona ao fornecer um argumento de módulo detector. Por exemplo:
./efu -d ../modules/freia -h
Leia o arquivo CONTRIBUTING.md para obter detalhes sobre nosso código de conduta e o processo de envio de pull requests para nós.
Veja também a lista de colaboradores no Github.
Este projeto está licenciado sob a licença BSD-2, consulte o arquivo LICENSE para obter detalhes.