-
Notifications
You must be signed in to change notification settings - Fork 5
/
redownstreamamplifier.go
163 lines (156 loc) · 8.24 KB
/
redownstreamamplifier.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
/*
* Copyright (c) 2018 - present. Boling Consulting Solutions (bcsw.net)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
* http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*
* NOTE: This file was generated, manual edits will be overwritten!
*
* Generated by 'goCodeGenerator.py':
* https://github.com/cboling/OMCI-parser/README.md
*/
package generated
import "github.com/deckarep/golang-set"
// ReDownstreamAmplifierClassID is the 16-bit ID for the OMCI
// Managed entity RE downstream amplifier
const ReDownstreamAmplifierClassID ClassID = ClassID(316)
var redownstreamamplifierBME *ManagedEntityDefinition
// ReDownstreamAmplifier (class ID #316)
// This ME organizes data associated with each OA for downstream data supported by the RE. The
// management ONU automatically creates one instance of this ME for each downstream OA as follows.
//
// o When the RE has mid-span PON RE downstream OA ports built into its factory configuration.
//
// o When a cardholder is provisioned to expect a circuit pack of the mid-span PON RE downstream OA
// type.
//
// o When a cardholder provisioned for plug-and-play is equipped with a circuit pack of the midspan
// PON RE downstream OA type. Note that the installation of a plug-and-play card may indicate the
// presence of a mid-span PON RE downstream OA via equipment ID as well as its type attribute, and
// indeed may cause the management ONU to instantiate a port-mapping package to specify the ports
// precisely.
//
// The management ONU automatically deletes instances of this ME when a cardholder is neither
// provisioned to expect a mid-span PON RE downstream OA circuit pack, nor is it equipped with a
// mid-span PON RE downstream OA circuit pack.
//
// Relationships
// An instance of this ME is associated with a downstream OA and with an instance of a circuit
// pack. If the RE includes OEO regeneration in either direction, the RE downstream amplifier is
// also associated with an RE ANI-G. Refer to clause-9.14.1 for further discussion.
//
// Attributes
// Managed Entity Id
// NOTE 1 - This ME ID may be identical to that of an RE ANI-G if it shares the same physical slot-
// port.
//
// Administrative State
// NOTE 2- When an RE supports multiple PONs, or protected access to a single PON, its primary
// ANI-G cannot be completely shut down, due to a loss of the management communications capability.
// Complete blocking of service and removal of power may nevertheless be appropriate for secondary
// RE ANI-Gs. Administrative lock suppresses alarms and notifications for both primary and
// secondary RE ANI-Gs. Administrative lock suppresses alarms and notifications for an RE
// downstream amplifier, be it either primary or secondary.
//
// Operational State
// Operational state: This attribute indicates whether the ME is capable of performing its
// function. Valid values are enabled (0) and disabled (1). (R) (optional) (1-byte)
//
// Arc
// ARC: See clause A.1.4.3. (R,-W) (optional) (1-byte)
//
// Arc Interval
// ARC interval: See clause A.1.4.3. (R,-W) (optional) (1-byte)
//
// Operational Mode
// (R,W) (mandatory) (1-byte)
//
// Input Optical Signal Level
// Input optical signal level: This attribute reports the current measurement of the input optical
// signal power of the downstream OA. Its value is a 2s-complement integer referred to 1-mW (i.e.,
// dBm), with 0.002-dB granularity. (R) (optional) (2-bytes)
//
// Lower Input Optical Threshold
// Lower input optical threshold: This attribute specifies the optical level the RE uses to declare
// the low received optical power alarm. Valid values are -127-dBm (coded as 254) to 0-dBm (coded
// as 0) in 0.5-dB increments. The default value 0xFF selects the RE's internal policy. (R,-W)
// (optional) (1-byte)
//
// Upper Input Optical Threshold
// Upper input optical threshold: This attribute specifies the optical level the RE uses to declare
// the high received optical power alarm. Valid values are -127-dBm (coded as 254) to 0-dBm (coded
// as 0) in 0.5-dB increments. The default value 0xFF selects the RE's internal policy. (R,-W)
// (optional) (1-byte)
//
// Output Optical Signal Level
// Output optical signal level: This attribute reports the current measurement of the mean optical
// launch power of the downstream OA. Its value is a 2s-complement integer referred to 1-mW (i.e.,
// dBm), with 0.002-dB granularity. (R) (optional) (2-bytes)
//
// Lower Output Optical Threshold
// Lower output optical threshold: This attribute specifies the minimum mean optical launch power
// that the RE uses to declare the low transmit optical power alarm. Its value is a 2s complement
// integer referred to 1-mW (i.e., dBm), with 0.5-dB granularity. The default value 0x7F selects
// the RE's internal policy. (R,-W) (optional) (1-byte)
//
// Upper Output Optical Threshold
// Upper output optical threshold: This attribute specifies the maximum mean optical launch power
// that the RE uses to declare the high transmit optical power alarm. Its value is a 2s complement
// integer referred to 1-mW (i.e., dBm), with 0.5-dB granularity. The default value 0x7F selects
// the RE's internal policy. (R,-W) (optional) (1-byte)
//
// R'S' Splitter Coupling Ratio
// R'S' splitter coupling ratio: This attribute reports the coupling ratio of the splitter at the
// R'/S' interface that connects the embedded management ONU and the amplifiers to the OTL. Valid
// values are 99:1 (coded as 99-decimal) to 1:99 (coded as 1 decimal), where the first value is the
// value encoded and is the percentage of the optical signal connected to the amplifier. The
// default value 0xFF indicates that there is no splitter connected to this upstream/downstream
// amplifier pair. (R) (optional) (1-byte)
//
type ReDownstreamAmplifier struct {
ManagedEntityDefinition
Attributes AttributeValueMap
}
func init() {
redownstreamamplifierBME = &ManagedEntityDefinition{
Name: "ReDownstreamAmplifier",
ClassID: 316,
MessageTypes: mapset.NewSetWith(
Get,
Set,
Test,
),
AllowedAttributeMask: 0xfff0,
AttributeDefinitions: AttributeDefinitionMap{
0: Uint16Field("ManagedEntityId", 0, mapset.NewSetWith(Read), false, false, false, false, 0),
1: ByteField("AdministrativeState", 0, mapset.NewSetWith(Read, Write), false, false, false, false, 1),
2: ByteField("OperationalState", 0, mapset.NewSetWith(Read), true, false, true, false, 2),
3: ByteField("Arc", 0, mapset.NewSetWith(Read, Write), true, false, true, false, 3),
4: ByteField("ArcInterval", 0, mapset.NewSetWith(Read, Write), false, false, true, false, 4),
5: ByteField("OperationalMode", 0, mapset.NewSetWith(Read, Write), false, false, false, false, 5),
6: Uint16Field("InputOpticalSignalLevel", 0, mapset.NewSetWith(Read), false, false, true, false, 6),
7: ByteField("LowerInputOpticalThreshold", 0, mapset.NewSetWith(Read, Write), false, false, true, false, 7),
8: ByteField("UpperInputOpticalThreshold", 0, mapset.NewSetWith(Read, Write), false, false, true, false, 8),
9: Uint16Field("OutputOpticalSignalLevel", 0, mapset.NewSetWith(Read), false, false, true, false, 9),
10: ByteField("LowerOutputOpticalThreshold", 0, mapset.NewSetWith(Read, Write), false, false, true, false, 10),
11: ByteField("UpperOutputOpticalThreshold", 0, mapset.NewSetWith(Read, Write), false, false, true, false, 11),
12: ByteField("R'S'SplitterCouplingRatio", 0, mapset.NewSetWith(Read), false, false, true, false, 12),
},
Access: UnknownAccess,
Support: UnknownSupport,
}
}
// NewReDownstreamAmplifier (class ID 316) creates the basic
// Managed Entity definition that is used to validate an ME of this type that
// is received from or transmitted to the OMCC.
func NewReDownstreamAmplifier(params ...ParamData) (*ManagedEntity, OmciErrors) {
return NewManagedEntity(*redownstreamamplifierBME, params...)
}