이 프로젝트는 중성자 검출기 이벤트 데이터를 중성자 이벤트로 처리하는 작업을 구현합니다. Gd-GEM, Muli-Grid, Multi-Blade, SoNDe 및 기타 몇 가지 감지기의 원시 데이터 처리를 위한 파이프라인이 구현되었습니다. 대부분 C/C++로 구현됩니다.
파일 구조, 아키텍처, 기본 요소에 대한 자세한 내용은 document/README.md를 참조하세요.
essdaq 저장소에는 이 프로젝트를 자동으로 다운로드하고 컴파일하기 위한 스크립트가 있습니다. 이벤트 형성 장치 소프트웨어를 수동으로 컴파일하기 위한 지침은 다음과 같습니다.
이 소프트웨어를 빌드하고 실행하려면 다음 종속성이 필요합니다.
$PATH
에서 사용할 수 있어야 합니다. 2보다 작은 최신 버전을 사용하세요.Conan은 종속성을 다운로드하는 데 사용됩니다. Conan이 종속성을 다운로드할 수 있는 위치를 파악하려면 다음 명령을 실행하여 ecdc 패키지 저장소를 추가해야 합니다.
conan remote add ecdc-conan-release https://artifactory.esss.lu.se/artifactory/api/conan/ecdc-conan-release
추가 기능을 위해 다음 종속성을 수동으로 설치할 수도 있습니다.
다음 명령을 실행하십시오.
git clone https://github.com/ess-dmsc/event-formation-unit.git
cd event-formation-unit
mkdir build
cd build
cmake ..
make
conan을 사용하여 종속성을 제공하려면 --settings compiler.libcxx=libstdc++11
추가 옵션을 제공해야 합니다. 따라서 conan에 대한 호출은 다음과 같이 변합니다.
conan install --build=outdated .. --settings compiler.libcxx=libstdc++11
이 프로젝트에 대한 단위 테스트를 실행하려면 다음 명령어를 실행하세요.
make runtest
필수 전제조건이 설치된 경우 테스트 적용 범위 보고서를 얻는 것도 가능합니다. 이를 위해서는 cmake를 사용하여 makefile에서 적용 범위 테스트를 활성화해야 합니다. makefile에 대한 적용 범위 테스트를 활성화하려면 다음을 실행하십시오.
cmake -DCOV=Y
그런 다음 적용 범위 보고서를 얻으려면 다음을 실행하십시오.
make coverage
Valgrind를 사용하여 메모리 누수 테스트를 실행하려면 다음을 실행하세요.
make valgrind
이벤트 형성 파이프라인(이 경우 freia 파이프라인)을 실행하는 데 필요한 명령의 예는 다음과 같습니다.
make efu freia
cd bin
./efu -d ../modules/freia --nohwcheck
freia 모듈의 경우에도 구성 파일을 제공해야 합니다.
사용 가능한 명령줄 인수를 얻으려면 -h
또는 --help
사용하세요. 이는 감지기 모듈 인수를 제공할 때도 작동합니다. 예를 들어:
./efu -d ../modules/freia -h
우리의 행동 강령과 끌어오기 요청을 제출하는 프로세스에 대한 자세한 내용은 CONTRIBUTING.md 파일을 읽어보세요.
Github의 기여자 목록도 참조하세요.
이 프로젝트는 BSD-2 라이선스에 따라 라이선스가 부여됩니다. 자세한 내용은 LICENSE 파일을 참조하세요.