2 // ========================LICENSE_START=================================
5 // Copyright (C) 2021: Nordix Foundation
7 // Licensed under the Apache License, Version 2.0 (the "License");
8 // you may not use this file except in compliance with the License.
9 // You may obtain a copy of the License at
11 // http://www.apache.org/licenses/LICENSE-2.0
13 // Unless required by applicable law or agreed to in writing, software
14 // distributed under the License is distributed on an "AS IS" BASIS,
15 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 // See the License for the specific language governing permissions and
17 // limitations under the License.
18 // ========================LICENSE_END===================================
23 type ORanDuRestConf struct {
24 DistributedUnitFunction []DistributedUnitFunction `json:"o-ran-sc-du-hello-world:distributed-unit-functions"`
27 type DistributedUnitFunction struct {
29 OperationalState string `json:"operational-state"`
30 AdmState string `json:"administrative-state"`
31 UserLabel string `json:"user-label"`
32 RRMPolicyRatio []RRMPolicyRatio `json:"radio-resource-management-policy-ratio"`
33 Cell []Cell `json:"cell"`
36 type RRMPolicyRatio struct {
38 AdmState string `json:"administrative-state"`
39 UserLabel string `json:"user-label"`
40 RRMPolicyMaxRatio int `json:"radio-resource-management-policy-max-ratio"`
41 RRMPolicyMinRatio int `json:"radio-resource-management-policy-min-ratio"`
42 RRMPolicyDedicatedRatio int `json:"radio-resource-management-policy-dedicated-ratio"`
43 ResourceType string `json:"resource-type"`
44 RRMPolicyMembers []RRMPolicyMember `json:"radio-resource-management-policy-members"`
47 type RRMPolicyMember struct {
48 MobileCountryCode string `json:"mobile-country-code"`
49 MobileNetworkCode string `json:"mobile-network-code"`
50 SliceDifferentiator int `json:"slice-differentiator"`
51 SliceServiceType int `json:"slice-service-type"`
56 LocalId int `json:"local-id"`
57 PhysicalCellId int `json:"physical-cell-id"`
58 BaseStationChannelBandwidth BaseStationChannelBandwidth `json:"base-station-channel-bandwidth"`
59 OperationalState string `json:"operational-state"`
60 TrackingAreaCode int `json:"tracking-area-code"`
61 AdmState string `json:"administrative-state"`
62 PublicLandMobileNetworks []PublicLandMobileNetworks `json:"public-land-mobile-networks"`
63 SupportedMeasurements []SupportedMeasurements `json:"supported-measurements"`
64 TrafficState string `json:"traffic-state"`
65 AbsoluteRadioFrequencyChannelNumber AbsoluteRadioFrequencyChannelNumber `json:"absolute-radio-frequency-channel-number"`
66 UserLabel string `json:"user-label"`
67 SynchronizationSignalBlock SynchronizationSignalBlock `json:"synchronization-signal-block"`
70 type BaseStationChannelBandwidth struct {
71 Uplink int `json:"uplink"`
72 Downlink int `json:"downlink"`
73 SupplementaryUplink int `json:"supplementary-uplink"`
76 type PublicLandMobileNetworks struct {
77 SliceDifferentiator int `json:"slice-differentiator"`
78 SliceServiceType int `json:"slice-service-type"`
79 MobileCountryCode string `json:"mobile-country-code"`
80 MobileNetworkCode string `json:"mobile-network-code"`
83 type SupportedMeasurements struct {
84 PerformanceMeasurementType string `json:"performance-measurement-type"`
85 SupportedSnssaiSubcounterInstances []SupportedSnssaiSubcounterInstances `json:"supported-snssai-subcounter-instances"`
88 type SupportedSnssaiSubcounterInstances struct {
89 SliceDifferentiator int `json:"slice-differentiator"`
90 SliceServiceType int `json:"slice-service-type"`
93 type AbsoluteRadioFrequencyChannelNumber struct {
94 Uplink int `json:"uplink"`
95 Downlink int `json:"downlink"`
96 SupplementaryUplink int `json:"supplementary-uplink"`
99 type SynchronizationSignalBlock struct {
100 Duration int `json:"duration"`
101 FrequencyChannelNumber int `json:"frequency-channel-number"`
102 Periodicity int `json:"periodicity"`
103 SubcarrierSpacing int `json:"subcarrier-spacing"`
104 Offset int `json:"offset"`