Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[Feature]: FakeDataProdModule should populate detector ID in fake frame headers

Aperta
#481 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
cpp
Ambito
backend, data

Direzione di ricerca

Inizia con FakeDataProdConf e FakeDataProdModule::process_data_request(), quindi confronta i casi DAQEthHeader e DAQHeader, comprese le relative rappresentazioni dell’ID del rilevatore. Crea dati fittizi per i tipi di header supportati e verifica che ogni frame contenga l’ID del rilevatore configurato, preservando il comportamento predefinito per "Unknown".

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement
Description

Discovered when doing work for https://github.com/DUNE-DAQ/daqsystemtest/pull/304

FakeDataProdModule generates fake frame data by zero-initializing a byte buffer of the correct size, leaving all header fields — including the detector ID — as zero. Downstream frame processors validating the detector ID in the frame header would fail when they receive det_id = 0.

Note that two distinct frame header types need to be considered when implementing the fix:

  • DAQEthHeader — used by Ethernet-based frames (DAPHNEEth, DAPHNEEthStream, WIBEth). Contains det_id of type DetID::Subdetector_t.
  • DAQHeader — used by older/legacy frame types. Needs investigation to determine if the same issue applies and what the correct field/encoding is.
Potential impact radius

Medium

Reason for change

Without this fix, FakeDataProdModule cannot be used as a stand-in for real readout when testing frame types that validate the detector ID.

Suggested implementations

Add a det_id string attribute (using the DetID::subdetector_to_string convention, e.g. "HD_PDS") to FakeDataProdConf in appmodel, defaulting to "Unknown" to preserve existing behavior. In FakeDataProdModule::process_data_request(), after allocating the fake data buffer, iterate over frames and write the correct detector ID into each frame header, conditioned on the configured header type.

Testing suggestions

Create fake data and verify that the det_id is properly set.

Anything else?

This should likely come up as part of the data formats review. (See https://github.com/DUNE-DAQ/daq-deliverables/issues/215)

Lingua principale
C++
Stelle
3
Fork
5
Merge medio
1g 6h
PR unite (30g)
7

Preparare l'ambiente

  • Nessun Dockerfile né file Docker Compose
  • Ha un modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di DUNE-DAQ/dfmodules

Tutte le issue di DUNE-DAQ/dfmodules

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.