@@ -579,3 +579,76 @@ message WavelengthData
579579 //
580580 optional double samples_number = 3 ;
581581}
582+
583+ //
584+ // \brief Distribution of data points and data values
585+ //
586+ // Defines the breakpoints of the corresponding distribution and the corresponding distribution values.
587+ //
588+ message DistributionData
589+ {
590+ // Defines the type of the breakpoints for the distribution function.
591+ //
592+ optional Breakpoints breakpoints = 1 ;
593+
594+ // Defines the value of breakpoints of the distribution function for continuous or not equally distributed cases.
595+ //
596+ repeated double points = 2 ;
597+
598+ // Defines the start value, end value and the sample number if distribution has equally discretized breakpoints.
599+ // In case of BREAKPOINTS_SPHERICAL the first one is azimuth and the second is elevation direction.
600+ // In case of BREAKPOINTS_RECTANGULAR the first one is x and the second is y direction
601+ //
602+ repeated double WaveLengthData = 3 ;
603+
604+ // Defines the type of the distribution.
605+ //
606+ optional Distribution distribution = 4 ;
607+
608+ // Defines the normalized value of the distribution.
609+ // In case of DISTRIBUTION_EQUAL the value of all points is equal to the double data.
610+ // In case of DISTRIBUTION_GAUSSIAN there has to be two values in the following order:
611+ // expected value, variance
612+ // If the type is DISTRIBUTION_CUSTOM data corresponds to a Lookup-Table with points
613+ // defined in the same message:
614+ // E.g. osi_object.proto: Spherical2d is defined before DistributionData and the number
615+ // of elements in data is equal to the discretization in Spheical2d.
616+ //
617+ // Unit: %
618+ //
619+ repeated double data = 5 ;
620+
621+ // Definition of distribution types. The values of the data distribution is defined in the field data.
622+ //
623+ enum Breakpoints
624+ {
625+ // The data points of the distribution is user-defined (e.g. breakpoints Lookup-Table).
626+ //
627+ BREAKPOINTS_CUSTOM = 0 ;
628+
629+ // The distribution corresponds to an equal distribution.
630+ //
631+ BREAKPOINTS_SPHERICAL = 1 ;
632+
633+ // The distribution corresponds to a Gaussian distribution.
634+ //
635+ BREAKPOINTS_RECTANGULAR = 2 ;
636+ }
637+
638+ // Definition of distribution types. The values of the data distribution is defined in the field data.
639+ //
640+ enum Distribution
641+ {
642+ // The distribution corresponds to a user-defined distribution (e.g. Lookup-Table).
643+ //
644+ DISTRIBUTION_CUSTOM = 0 ;
645+
646+ // The distribution corresponds to an equal distribution.
647+ //
648+ DISTRIBUTION_EQUAL = 1 ;
649+
650+ // The distribution corresponds to a Gaussian distribution.
651+ //
652+ DISTRIBUTION_GAUSSIAN = 2 ;
653+ }
654+ }
0 commit comments