blob: 3436761df113536776b4d67a3d01411c04caa4e7 [file] [log] [blame]
Matteo Scandolof9d43412021-01-12 11:11:34 -08001/*
2 * Copyright (c) 2018 - present. Boling Consulting Solutions (bcsw.net)
3 * Copyright 2020-present Open Networking Foundation
Elia Battiston9bfe1102022-02-03 10:38:03 +01004 *
Matteo Scandolof9d43412021-01-12 11:11:34 -08005 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
Elia Battiston9bfe1102022-02-03 10:38:03 +01008 *
Matteo Scandolof9d43412021-01-12 11:11:34 -08009 * http://www.apache.org/licenses/LICENSE-2.0
Elia Battiston9bfe1102022-02-03 10:38:03 +010010 *
Matteo Scandolof9d43412021-01-12 11:11:34 -080011 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17/*
18 * NOTE: This file was generated, manual edits will be overwritten!
19 *
20 * Generated by 'goCodeGenerator.py':
21 * https://github.com/cboling/OMCI-parser/README.md
22 */
23
24package generated
25
26import "github.com/deckarep/golang-set"
27
28// XdslXtuCPerformanceMonitoringHistoryDataClassID is the 16-bit ID for the OMCI
29// Managed entity xDSL xTU-C performance monitoring history data
Andrea Campanella10426e22021-10-15 17:58:04 +020030const XdslXtuCPerformanceMonitoringHistoryDataClassID = ClassID(112) // 0x0070
Matteo Scandolof9d43412021-01-12 11:11:34 -080031
32var xdslxtucperformancemonitoringhistorydataBME *ManagedEntityDefinition
33
Andrea Campanella10426e22021-10-15 17:58:04 +020034// XdslXtuCPerformanceMonitoringHistoryData (Class ID: #112 / 0x0070)
Matteo Scandolof9d43412021-01-12 11:11:34 -080035// This ME collects PM data on the xTUC to xTUR path as seen from the xTU-C. Instances of this ME
36// are created and deleted by the OLT.
37//
38// For a complete discussion of generic PM architecture, refer to clause I.4.
39//
40// Relationships
41// An instance of this ME is associated with an xDSL UNI.
42//
43// Attributes
44// Managed Entity Id
Andrea Campanella10426e22021-10-15 17:58:04 +020045// This attribute uniquely identifies each instance of this ME. Through an identical ID, this ME is
46// implicitly linked to an instance of the PPTP xDSL UNI part 1. (R, setbycreate) (mandatory)
47// (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -080048//
49// Interval End Time
Andrea Campanella10426e22021-10-15 17:58:04 +020050// This attribute identifies the most recently finished 15-min interval. (R) (mandatory) (1-byte)
Matteo Scandolof9d43412021-01-12 11:11:34 -080051//
52// Threshold Data 1_2 Id
53// Threshold data 1/2 ID: This attribute points to an instance of the threshold data 1 and 2 MEs
54// that contain PM threshold values. (R,-W, setbycreate) (mandatory) (2-bytes)
55//
56// Loss Of Frame Seconds
Andrea Campanella10426e22021-10-15 17:58:04 +020057// (R) (mandatory) (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -080058//
59// Loss Of Signal Seconds
Andrea Campanella10426e22021-10-15 17:58:04 +020060// (R) (mandatory) (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -080061//
62// Loss Of Link Seconds
Andrea Campanella10426e22021-10-15 17:58:04 +020063// (R) (mandatory) (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -080064//
65// Loss Of Power Seconds
Andrea Campanella10426e22021-10-15 17:58:04 +020066// (R) (mandatory) (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -080067//
68// Errored Seconds Es
69// Errored seconds (ES): This attribute counts 1-s intervals with one or more CRC8 anomalies summed
70// over all received bearer channels, or one or more loss of signal (LOS) defects, or one or more
71// SEF defects, or one or more LPR defects. (R) (mandatory) (2-bytes)
72//
73// Severely Errored Seconds
Andrea Campanella10426e22021-10-15 17:58:04 +020074// This attribute counts severely errored seconds (SES-L). An SES is declared if, during a 1-s
75// interval, there were 18 or more CRC8 anomalies in one or more of the received bearer channels,
76// or one or more LOS defects, or one or more SEF defects, or one or more LPR defects.
77//
78// If the relevant Recommendation ([ITUT G.992.3], [ITUT G.992.5] or [ITUT G.993.2]) supports a 1-s
79// normalized CRC-8 anomaly counter increment, the 1-s SES counter follows this value instead of
80// counting CRC-8 anomalies directly.
81//
82// If a common CRC is applied over multiple bearer channels, then each related CRC-8 anomaly is
83// counted only once for the whole set of bearer channels over which the CRC is applied.
84//
Matteo Scandolof9d43412021-01-12 11:11:34 -080085// (R) (mandatory) (2-bytes)
86//
87// Line Initializations
Andrea Campanella10426e22021-10-15 17:58:04 +020088// This attribute counts the total number of full initializations attempted on the line, both
89// successful and failed. (R) (mandatory) (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -080090//
91// Failed Line Initializations
Andrea Campanella10426e22021-10-15 17:58:04 +020092// This attribute counts the total number of failed full initializations during the accumulation
93// period. A failed full initialization occurs when showtime is not reached at the end of the full
94// initialization procedure. (R) (mandatory) (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -080095//
96// Short Initializations
Andrea Campanella10426e22021-10-15 17:58:04 +020097// This attribute counts the total number of fast retrains or short initializations attempted on
98// the line, successful and failed. Fast retrain is defined in [ITUT G.992.2]. Short initialization
99// is defined in [ITUT-G.992.3] and [ITUT G.992.4]. (R) (optional) (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -0800100//
101// Failed Short Initializations
Andrea Campanella10426e22021-10-15 17:58:04 +0200102// This attribute counts the total number of failed fast retrains or short initializations during
103// the accumulation period, e.g., when:
104//
105// - a CRC error is detected;
106//
107// - a timeout occurs;
108//
109// - a fast retrain profile is unknown.
110//
Matteo Scandolof9d43412021-01-12 11:11:34 -0800111// (R) (optional) (2-bytes)
112//
113// Fec Seconds
Andrea Campanella10426e22021-10-15 17:58:04 +0200114// This attribute counts seconds during which there was an FEC anomaly. (R) (mandatory) (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -0800115//
116// Unavailable Seconds
Andrea Campanella10426e22021-10-15 17:58:04 +0200117// This attribute counts 1-s intervals during which the xDSL UNI is unavailable. The line becomes
118// unavailable at the onset of 10 contiguous SES-Ls. The 10 SES-Ls are included in unavailable
119// time. Once unavailable, the line becomes available at the onset of 10-contiguous seconds that
120// are not severely errored. The 10-s with no SESLs are excluded from unavailable time. Some
121// attribute counts are inhibited during unavailability - see clause 7.2.7.13 of [ITUT G.997.1].
122// (R) (mandatory) (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -0800123//
Elia Battiston9bfe1102022-02-03 10:38:03 +0100124// Sos Success Count Near End
125// SOS success count, near end: The SOS-SUCCESS-NE attribute is a count of the total number of
126// successful SOS procedures initiated by the near-end xTU on the line during the accumulation
127// period. Successful SOS is defined in clause-12.1.4 of [ITUT G.993.2]. (R) (optional) (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -0800128//
Elia Battiston9bfe1102022-02-03 10:38:03 +0100129// Sos Success Count Far End
130// SOS success count, far end: The SOS-SUCCESS-FE attribute is a count of the total number of
131// successful SOS procedures initiated by the far-end xTU on the line during the accumulation
132// period. Successful SOS is defined in clause 12.1.4 of [ITUT-G.993.2]. (R) (optional) (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -0800133//
134type XdslXtuCPerformanceMonitoringHistoryData struct {
135 ManagedEntityDefinition
136 Attributes AttributeValueMap
137}
138
Elia Battiston9bfe1102022-02-03 10:38:03 +0100139// Attribute name constants
140
141const XdslXtuCPerformanceMonitoringHistoryData_IntervalEndTime = "IntervalEndTime"
142const XdslXtuCPerformanceMonitoringHistoryData_ThresholdData12Id = "ThresholdData12Id"
143const XdslXtuCPerformanceMonitoringHistoryData_LossOfFrameSeconds = "LossOfFrameSeconds"
144const XdslXtuCPerformanceMonitoringHistoryData_LossOfSignalSeconds = "LossOfSignalSeconds"
145const XdslXtuCPerformanceMonitoringHistoryData_LossOfLinkSeconds = "LossOfLinkSeconds"
146const XdslXtuCPerformanceMonitoringHistoryData_LossOfPowerSeconds = "LossOfPowerSeconds"
147const XdslXtuCPerformanceMonitoringHistoryData_ErroredSecondsEs = "ErroredSecondsEs"
148const XdslXtuCPerformanceMonitoringHistoryData_SeverelyErroredSeconds = "SeverelyErroredSeconds"
149const XdslXtuCPerformanceMonitoringHistoryData_LineInitializations = "LineInitializations"
150const XdslXtuCPerformanceMonitoringHistoryData_FailedLineInitializations = "FailedLineInitializations"
151const XdslXtuCPerformanceMonitoringHistoryData_ShortInitializations = "ShortInitializations"
152const XdslXtuCPerformanceMonitoringHistoryData_FailedShortInitializations = "FailedShortInitializations"
153const XdslXtuCPerformanceMonitoringHistoryData_FecSeconds = "FecSeconds"
154const XdslXtuCPerformanceMonitoringHistoryData_UnavailableSeconds = "UnavailableSeconds"
155const XdslXtuCPerformanceMonitoringHistoryData_SosSuccessCountNearEnd = "SosSuccessCountNearEnd"
156const XdslXtuCPerformanceMonitoringHistoryData_SosSuccessCountFarEnd = "SosSuccessCountFarEnd"
157
Matteo Scandolof9d43412021-01-12 11:11:34 -0800158func init() {
159 xdslxtucperformancemonitoringhistorydataBME = &ManagedEntityDefinition{
160 Name: "XdslXtuCPerformanceMonitoringHistoryData",
Elia Battiston9bfe1102022-02-03 10:38:03 +0100161 ClassID: XdslXtuCPerformanceMonitoringHistoryDataClassID,
Matteo Scandolof9d43412021-01-12 11:11:34 -0800162 MessageTypes: mapset.NewSetWith(
163 Create,
164 Delete,
165 Get,
166 Set,
Girish Gowdrae2683102021-03-05 08:24:26 -0800167 GetCurrentData,
Matteo Scandolof9d43412021-01-12 11:11:34 -0800168 ),
169 AllowedAttributeMask: 0xffff,
170 AttributeDefinitions: AttributeDefinitionMap{
Elia Battiston9bfe1102022-02-03 10:38:03 +0100171 0: Uint16Field(ManagedEntityID, PointerAttributeType, 0x0000, 0, mapset.NewSetWith(Read, SetByCreate), false, false, false, 0),
172 1: ByteField(XdslXtuCPerformanceMonitoringHistoryData_IntervalEndTime, UnsignedIntegerAttributeType, 0x8000, 0, mapset.NewSetWith(Read), false, false, false, 1),
173 2: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_ThresholdData12Id, UnsignedIntegerAttributeType, 0x4000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 2),
174 3: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_LossOfFrameSeconds, CounterAttributeType, 0x2000, 0, mapset.NewSetWith(Read), false, false, false, 3),
175 4: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_LossOfSignalSeconds, CounterAttributeType, 0x1000, 0, mapset.NewSetWith(Read), false, false, false, 4),
176 5: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_LossOfLinkSeconds, CounterAttributeType, 0x0800, 0, mapset.NewSetWith(Read), false, false, false, 5),
177 6: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_LossOfPowerSeconds, CounterAttributeType, 0x0400, 0, mapset.NewSetWith(Read), false, false, false, 6),
178 7: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_ErroredSecondsEs, CounterAttributeType, 0x0200, 0, mapset.NewSetWith(Read), false, false, false, 7),
179 8: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_SeverelyErroredSeconds, CounterAttributeType, 0x0100, 0, mapset.NewSetWith(Read), false, false, false, 8),
180 9: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_LineInitializations, CounterAttributeType, 0x0080, 0, mapset.NewSetWith(Read), false, false, false, 9),
181 10: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_FailedLineInitializations, CounterAttributeType, 0x0040, 0, mapset.NewSetWith(Read), false, false, false, 10),
182 11: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_ShortInitializations, CounterAttributeType, 0x0020, 0, mapset.NewSetWith(Read), false, true, false, 11),
183 12: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_FailedShortInitializations, CounterAttributeType, 0x0010, 0, mapset.NewSetWith(Read), false, true, false, 12),
184 13: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_FecSeconds, CounterAttributeType, 0x0008, 0, mapset.NewSetWith(Read), false, false, false, 13),
185 14: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_UnavailableSeconds, CounterAttributeType, 0x0004, 0, mapset.NewSetWith(Read), false, false, false, 14),
186 15: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_SosSuccessCountNearEnd, CounterAttributeType, 0x0002, 0, mapset.NewSetWith(Read), false, true, false, 15),
187 16: Uint16Field(XdslXtuCPerformanceMonitoringHistoryData_SosSuccessCountFarEnd, CounterAttributeType, 0x0001, 0, mapset.NewSetWith(Read), false, true, false, 16),
Matteo Scandolof9d43412021-01-12 11:11:34 -0800188 },
189 Access: CreatedByOlt,
190 Support: UnknownSupport,
191 Alarms: AlarmMap{
192 0: "Loss of frame seconds",
193 1: "Loss of signal seconds",
194 2: "Loss of link seconds",
195 3: "Loss of power seconds",
196 4: "Errored seconds",
197 5: "Severely errored seconds",
198 6: "Line initializations",
199 7: "Failed line initializations",
200 8: "Short initializations",
201 9: "Failed short initializations",
202 10: "FEC seconds",
203 11: "Unavailable seconds",
204 },
205 }
206}
207
208// NewXdslXtuCPerformanceMonitoringHistoryData (class ID 112) creates the basic
209// Managed Entity definition that is used to validate an ME of this type that
210// is received from or transmitted to the OMCC.
211func NewXdslXtuCPerformanceMonitoringHistoryData(params ...ParamData) (*ManagedEntity, OmciErrors) {
212 return NewManagedEntity(*xdslxtucperformancemonitoringhistorydataBME, params...)
213}