5 Commits

Author SHA1 Message Date
EstherLerouzic
f8e349763a fix: restore save_json as generic
and create a save_gnpy_json for specific gnpy exports.
because save_json is used as dependency in other projects

Fix example and test file.

Signed-off-by: EstherLerouzic <esther.lerouzic@orange.com>
Change-Id: I9af07a13510658dece0685a3bce7589efd57e259
2026-01-21 15:07:15 +01:00
EstherLerouzic
41bc9a6f2a feat: support library metadata when loading equipment
Make sure that a library which includes metada (library-information)
is correctly loaded, and these metada ignored.

Signed-off-by: EstherLerouzic <esther.lerouzic@orange.com>
Change-Id: I9c3dc46d502f061b2b31aa430865aa265f1631ad
2026-01-21 15:07:15 +01:00
EstherLerouzic
2132ba8ab2 fix: do not crash when exporting loss_coeff per frequency lists
to_json export includes a round that makes the export crash when
loss_coef is an array. This patch includes a test on the data to
correctly export per frequency loss coeff.

legacy format supports
"loss_coef": {"value": [0.29, 0.28, 0.29], "frequency": [186.3e12, 194e12, 197e12]},
yang format should be:
"loss_coef_per_frequency": [
{"frequency": "186300000000000.0", "loss_coef_value": "0.29"},
{"frequency": "194000000000000.0", "loss_coef_value": "0.28"},
{"frequency": "197000000000000.0", "loss_coef_value": "0.29"}]

Signed-off-by: EstherLerouzic <esther.lerouzic@orange.com>
Change-Id: Id4e49d2b3cce22b85228fe790c15c5a93dea7e06
2025-12-04 09:33:23 +00:00
EstherLerouzic
6c5d11d86c Implement in_voa of amplifiers
Signed-off-by: EstherLerouzic <esther.lerouzic@orange.com>
Change-Id: I24feed756586a104e829275244f0868a272e5f6b
2025-09-03 10:34:15 +02:00
EstherLerouzic
1a795639c7 feat: Add conversion utilities for YANG and legacy formats in GNPy
This commit introduces new functions for converting between YANG formatted files and
legacy formats. The conversion processes adhere to RFC7951 for encoding YANG data.

Key changes include:
- Conversion of float and empty type representations.
- Transformation of Span and SI lists xx_power_range into dictionaries.
- Addition of necessary namespaces.
- use of oopt-gnpy-libyang to enforce compliancy to yang models

These utilities enable full compatibility with GNPy.

Co-authored-by: Renato Ambrosone <renato.ambrosone@polito.it>

Signed-off-by: EstherLerouzic <esther.lerouzic@orange.com>
Change-Id: Ia004113bca2b0631d1648564e5ccb60504fe80f8
2025-09-03 10:34:14 +02:00