From c9936c593aacf88d28317625a22b458f351cb57d Mon Sep 17 00:00:00 2001 From: Freddie Akeroyd Date: Mon, 6 Oct 2025 01:57:19 +0100 Subject: [PATCH 1/7] Add stub --- schemas/pu00_pulse_metadata.fbs | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 schemas/pu00_pulse_metadata.fbs diff --git a/schemas/pu00_pulse_metadata.fbs b/schemas/pu00_pulse_metadata.fbs new file mode 100644 index 0000000..fb90a88 --- /dev/null +++ b/schemas/pu00_pulse_metadata.fbs @@ -0,0 +1,27 @@ +// Schema for neutron pulse information + +file_identifier "pu00"; + +table Pu00Message { + message_id : long; // Consecutive numbers, to detect missing or unordered messages. + reference_time : [long] (required); // Nanoseconds since Unix epoch (1 Jan 1970) + // If pulse times are available in the aquisition system, this field holds + // those timestamps. Holds wall time otherwise. + +// old is84 bits + period_number : uint; + proton_charge : float; + + +// however more general alternatie woudl be + name : [string] + value : [some union] + +// or + + name : [ soem agrreed enum list] + value : [ some union ] + +} + +root_type Pu00Message; From 19e3dbd468ddb783b17fef39e36a00bfda26d7da Mon Sep 17 00:00:00 2001 From: Tom Willemsen Date: Wed, 4 Mar 2026 10:32:04 +0000 Subject: [PATCH 2/7] tidy --- schemas/pu00_pulse_metadata.fbs | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/schemas/pu00_pulse_metadata.fbs b/schemas/pu00_pulse_metadata.fbs index fb90a88..84ec36d 100644 --- a/schemas/pu00_pulse_metadata.fbs +++ b/schemas/pu00_pulse_metadata.fbs @@ -8,20 +8,8 @@ table Pu00Message { // If pulse times are available in the aquisition system, this field holds // those timestamps. Holds wall time otherwise. -// old is84 bits - period_number : uint; - proton_charge : float; - - -// however more general alternatie woudl be - name : [string] - value : [some union] - -// or - - name : [ soem agrreed enum list] - value : [ some union ] - + period_number : uint; // Period number into which this pulse was collected + proton_charge : float; // Proton charge for this frame } root_type Pu00Message; From cfc8d8d8846ad7ad64ac67d80d3f187dfaa0ff3b Mon Sep 17 00:00:00 2001 From: Tom Willemsen Date: Wed, 4 Mar 2026 13:00:57 +0000 Subject: [PATCH 3/7] Reference time not an array --- schemas/pu00_pulse_metadata.fbs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/schemas/pu00_pulse_metadata.fbs b/schemas/pu00_pulse_metadata.fbs index 84ec36d..f63fdc5 100644 --- a/schemas/pu00_pulse_metadata.fbs +++ b/schemas/pu00_pulse_metadata.fbs @@ -4,7 +4,7 @@ file_identifier "pu00"; table Pu00Message { message_id : long; // Consecutive numbers, to detect missing or unordered messages. - reference_time : [long] (required); // Nanoseconds since Unix epoch (1 Jan 1970) + reference_time : long (required); // Nanoseconds since Unix epoch (1 Jan 1970) // If pulse times are available in the aquisition system, this field holds // those timestamps. Holds wall time otherwise. From 911678a1f66ebd5bc1303ba5b5515fd87ef2d490 Mon Sep 17 00:00:00 2001 From: Tom Willemsen Date: Wed, 4 Mar 2026 13:26:25 +0000 Subject: [PATCH 4/7] Add units --- schemas/pu00_pulse_metadata.fbs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/schemas/pu00_pulse_metadata.fbs b/schemas/pu00_pulse_metadata.fbs index f63fdc5..391e6e8 100644 --- a/schemas/pu00_pulse_metadata.fbs +++ b/schemas/pu00_pulse_metadata.fbs @@ -9,7 +9,7 @@ table Pu00Message { // those timestamps. Holds wall time otherwise. period_number : uint; // Period number into which this pulse was collected - proton_charge : float; // Proton charge for this frame + proton_charge : float; // Proton charge for this frame (uAh per frame) } root_type Pu00Message; From 90603ba4df23d580b23e287e5d9f7ebb0e05842b Mon Sep 17 00:00:00 2001 From: Tom Willemsen Date: Wed, 4 Mar 2026 13:36:05 +0000 Subject: [PATCH 5/7] vetos --- schemas/pu00_pulse_metadata.fbs | 1 + 1 file changed, 1 insertion(+) diff --git a/schemas/pu00_pulse_metadata.fbs b/schemas/pu00_pulse_metadata.fbs index 391e6e8..2760fdc 100644 --- a/schemas/pu00_pulse_metadata.fbs +++ b/schemas/pu00_pulse_metadata.fbs @@ -8,6 +8,7 @@ table Pu00Message { // If pulse times are available in the aquisition system, this field holds // those timestamps. Holds wall time otherwise. + vetos : uint; // Vetos for this frame period_number : uint; // Period number into which this pulse was collected proton_charge : float; // Proton charge for this frame (uAh per frame) } From 667b2c8925c89a86e894881a180fbd61e000ee04 Mon Sep 17 00:00:00 2001 From: Tom Willemsen Date: Wed, 4 Mar 2026 14:02:52 +0000 Subject: [PATCH 6/7] Add source name --- schemas/pu00_pulse_metadata.fbs | 1 + 1 file changed, 1 insertion(+) diff --git a/schemas/pu00_pulse_metadata.fbs b/schemas/pu00_pulse_metadata.fbs index 2760fdc..69241b8 100644 --- a/schemas/pu00_pulse_metadata.fbs +++ b/schemas/pu00_pulse_metadata.fbs @@ -3,6 +3,7 @@ file_identifier "pu00"; table Pu00Message { + source_name : string (required); // Field identifying the producer type, for example detector type message_id : long; // Consecutive numbers, to detect missing or unordered messages. reference_time : long (required); // Nanoseconds since Unix epoch (1 Jan 1970) // If pulse times are available in the aquisition system, this field holds From 8f5c35855e9ae05145a53bfd3f267574deec2695 Mon Sep 17 00:00:00 2001 From: Tom Willemsen Date: Wed, 4 Mar 2026 14:11:22 +0000 Subject: [PATCH 7/7] doc --- schemas/pu00_pulse_metadata.fbs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/schemas/pu00_pulse_metadata.fbs b/schemas/pu00_pulse_metadata.fbs index 69241b8..ce26e27 100644 --- a/schemas/pu00_pulse_metadata.fbs +++ b/schemas/pu00_pulse_metadata.fbs @@ -9,7 +9,7 @@ table Pu00Message { // If pulse times are available in the aquisition system, this field holds // those timestamps. Holds wall time otherwise. - vetos : uint; // Vetos for this frame + vetos : uint; // Veto bitmask for this frame period_number : uint; // Period number into which this pulse was collected proton_charge : float; // Proton charge for this frame (uAh per frame) }