ينفذ هذا المشروع معالجة بيانات أحداث كاشف النيوترونات وتحويلها إلى أحداث نيوترونية. تم تنفيذ خطوط الأنابيب لمعالجة البيانات الأولية من Gd-GEM وMuli-Grid وMulti-Blade وSoNDe بالإضافة إلى عدد قليل من أجهزة الكشف الأخرى. يتم تنفيذه في الغالب في C/C++.
لمزيد من التفاصيل حول بنية الملف وهندسته والأوليات، راجع الوثائق/README.md
يحتوي مستودع essdaq على نصوص برمجية لتنزيل هذا المشروع وتجميعه تلقائيًا. اتبع تعليمات تجميع برنامج وحدة تشكيل الحدث يدويًا.
لإنشاء هذا البرنامج وتشغيله، يلزم توفر التبعيات التالية.
$PATH
الحالي. استخدم أحدث إصدار أصغر من 2.يستخدم كونان لتنزيل التبعيات. لكي يعرف كونان من أين يمكن تنزيل التبعيات، يجب إضافة مستودع حزم 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 install --build=outdated .. --settings compiler.libcxx=libstdc++11
لتشغيل اختبارات الوحدة لهذا المشروع، قم بتشغيل الأوامر التالية:
make runtest
ومن الممكن أيضًا الحصول على تقرير تغطية الاختبار إذا تم تثبيت المتطلبات الأساسية المطلوبة. لهذا عليك تمكين اختبار التغطية في ملف makefile باستخدام cmake. لتمكين اختبار التغطية لملفات التعريف، قم بتشغيل
cmake -DCOV=Y
ثم للحصول على تقرير التغطية، قم بتشغيل
make coverage
لإجراء اختبار تسرب الذاكرة (باستخدام Valgrind)، قم بتشغيل:
make valgrind
فيما يلي مثال للأوامر المطلوبة لتشغيل خط أنابيب تكوين الحدث (في هذه الحالة خط أنابيب فريا ):
make efu freia
cd bin
./efu -d ../modules/freia --nohwcheck
لاحظ أنك ستحتاج إلى توفير ملف تكوين في حالة وحدة freia أيضًا.
للحصول على وسيطات سطر الأوامر المتاحة، استخدم -h
أو --help
. يعمل هذا عند توفير وسيطة وحدة الكاشف أيضًا. على سبيل المثال:
./efu -d ../modules/freia -h
يرجى قراءة ملف CONTRIBUTING.md للحصول على تفاصيل حول قواعد السلوك لدينا وعملية إرسال طلبات السحب إلينا.
انظر أيضًا قائمة المساهمين على جيثب.
هذا المشروع مرخص بموجب ترخيص BSD-2، راجع ملف الترخيص للحصول على التفاصيل.