Struct burst_capture_pending_t¶
ClassList > burst_capture_pending_t
One detection between acquisition and emission. More...
#include <burst_capture_core.h>
Public Attributes¶
| Type | Name |
|---|---|
| uint64_t | anchor |
| double | cn0_dbhz |
| double | doppler_hz |
| double | margin |
| double | peak_mag |
| int | refined |
| int | shadowed |
| uint64_t | start |
Detailed Description¶
A hit cannot always be refined the moment it arrives the refine window reaches BACKWARDS and forwards, so some of it may not have been pushed yet and a detection dropped because its window was incomplete is a lost burst. So a hit is queued here with the event fields acquisition supplied, refined when its window is reachable, and emitted when the burst has fully arrived.
Public Attributes Documentation¶
variable anchor¶
Coarse code epoch from the hit (stream-absolute).
variable cn0_dbhz¶
C/N0 lower bound from the hit, dB-Hz.
variable doppler_hz¶
Signed coarse Doppler, Hz.
variable margin¶
Refine runner-up ratio; valid once refined.
variable peak_mag¶
The hit's RAW CFAR peak. Two detections naming the same preamble keep the stronger, so a weak hit that merely arrived first cannot own the slot a real burst needs (doppler#1004). Deliberately not test_stat: that is peak/noise_est, and the noise estimate is a mean over the surface, so a BARE preamble which raises no floor outscores a real burst whose payload does. The raw peak measures what the comparison actually means, how much preamble the frame holds.
variable refined¶
Non-zero once start is known.
variable shadowed¶
Inside the span of a window already EMITTED. Held rather than dropped, because whether that window was a burst is a consumer's verdict (a CRC), not this object's: burst_capture_release() gives the span back, and the next push() drops whatever is still shadowed (doppler#1181).
variable start¶
Refined preamble start; valid once refined.
The documentation for this class was generated from the following file native/inc/burst_capture/burst_capture_core.h