+ typedef accumulated-metric-type {
+ type union {
+ type uint64;
+ type decimal64 {
+ fraction-digits 2;
+ }
+ }
+ description
+ "type useable for accumulative-value";
+ }
+
+ grouping effective-freq-slot {
+ /* content copied from ietf-flexi-grid-media-channel, because only M and N are needed
+ from the initial grouping.
+ */
+ description
+ "The effective frequency slot is an attribute
+ of a media channel and, being a frequency slot, it is
+ described by its nominal central frequency and slot
+ width";
+ reference
+ "rfc7698";
+ leaf N {
+ type int32;
+ description
+ "Is used to determine the Nominal Central
+ Frequency. The set of nominal central frequencies
+ can be built using the following expression:
+ f = 193.1 THz + n x 0.00625 THz,
+ where 193.1 THz is ITU-T ''anchor frequency'' for
+ transmission over the C band, n is a positive or
+ negative integer including 0.";
+ reference
+ "rfc7698";
+ }
+ leaf M {
+ type int32;
+ description
+ "Is used to determine the slot width. A slot width
+ is constrained to be M x SWG (that is, M x 12.5 GHz),
+ where M is an integer greater than or equal to 1.";
+ reference
+ "rfc7698";
+ }
+ }
+
+ grouping gnpy-specific-parameters {
+ description
+ "This grouping defines the gnpy specific parameters for requests.";
+ leaf technology {
+ type string;
+ default "flexi-grid";
+ description
+ "Data plane technology type.";
+ }
+ leaf trx_type {
+ type string;
+ mandatory true;
+ description
+ "name of the transponder type (to be read from equipment library";
+ }
+ leaf trx_mode {
+ type string;
+ description
+ "name of the transponder mode (to be read from equipment library";
+ }
+ list effective-freq-slot {
+ key "N";
+ uses effective-freq-slot;
+ }
+ leaf spacing {
+ type decimal64 {
+ fraction-digits 1;
+ }
+ units "Hz";
+ mandatory true;
+ description
+ "It is the spacing between channels assuming full load with
+ same channels as the requested one. multiple of 12.5 GHz";
+ }
+ leaf max-nb-of-channel {
+ type uint32;
+ description
+ "Nb of channel to take into account for the full load case.\n";
+ }
+ leaf output-power {
+ type decimal64 {
+ fraction-digits 5;
+ }
+ units "W";
+ description
+ "optical power setting to be used for the propagation";
+ }
+ leaf path_bandwidth {
+ type decimal64 {
+ fraction-digits 5;