blob: ba08f36d7810dece1e1a2e22ff12b7f9e37e3d6b [file] [log] [blame]
Holger Hildebrandtfa074992020-03-27 15:42:06 +00001/*
2 * Copyright (c) 2018 - present. Boling Consulting Solutions (bcsw.net)
3 * Copyright 2020-present Open Networking Foundation
Holger Hildebrandt3ac49bd2022-02-07 17:46:43 +00004 *
Holger Hildebrandtfa074992020-03-27 15:42:06 +00005 * 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
Holger Hildebrandt3ac49bd2022-02-07 17:46:43 +00008 *
Holger Hildebrandtfa074992020-03-27 15:42:06 +00009 * http://www.apache.org/licenses/LICENSE-2.0
Holger Hildebrandt3ac49bd2022-02-07 17:46:43 +000010 *
Holger Hildebrandtfa074992020-03-27 15:42:06 +000011 * 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 */
Himani Chawlaac1f5ad2021-02-04 21:21:54 +053017/*
Holger Hildebrandtfa074992020-03-27 15:42:06 +000018 * 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// XgPonTcPerformanceMonitoringHistoryDataClassID is the 16-bit ID for the OMCI
29// Managed entity XG-PON TC performance monitoring history data
mpagenko836a1fd2021-11-01 16:12:42 +000030const XgPonTcPerformanceMonitoringHistoryDataClassID = ClassID(344) // 0x0158
Holger Hildebrandtfa074992020-03-27 15:42:06 +000031
32var xgpontcperformancemonitoringhistorydataBME *ManagedEntityDefinition
33
mpagenko836a1fd2021-11-01 16:12:42 +000034// XgPonTcPerformanceMonitoringHistoryData (Class ID: #344 / 0x0158)
Holger Hildebrandtfa074992020-03-27 15:42:06 +000035// This ME collects PM data associated with the XG-PON TC layer.
36//
37// For a complete discussion of generic PM architecture, refer to clause I.4.
38//
39// Relationships
40// An instance of this ME is associated with an ANI-G.
41//
42// Attributes
43// Managed Entity Id
mpagenko836a1fd2021-11-01 16:12:42 +000044// This attribute uniquely identifies each instance of this ME. Through an identical ID, this ME is
45// implicitly linked to an instance of the ANI-G. (R, set-by-create) (mandatory) (2-bytes)
Holger Hildebrandtfa074992020-03-27 15:42:06 +000046//
47// Interval End Time
mpagenko836a1fd2021-11-01 16:12:42 +000048// This attribute identifies the most recently finished 15-min interval. (R) (mandatory) (1-byte)
Holger Hildebrandtfa074992020-03-27 15:42:06 +000049//
50// Threshold Data 1_2 Id
51// Threshold data 1/2 ID: This attribute points to an instance of the threshold data 1 ME that
52// contains PM threshold values. (R,-W, set-by-create) (mandatory) (2-bytes)
53//
54// Psbd Hec Error Count
mpagenko836a1fd2021-11-01 16:12:42 +000055// This attribute counts HEC errors in any of the fields of the downstream physical sync block. (R)
Holger Hildebrandtfa074992020-03-27 15:42:06 +000056// (optional) (4-bytes)
57//
mpagenko836a1fd2021-11-01 16:12:42 +000058// Xgtc Hec Error Count
59// This attribute counts HEC errors detected in the XGTC header. In [ITU-T G.9807.1], this
60// attribute is used for framing sublayer (FS) HEC error count management. (R) (optional) (4-bytes)
61//
Holger Hildebrandtfa074992020-03-27 15:42:06 +000062// Unknown Profile Count
mpagenko836a1fd2021-11-01 16:12:42 +000063// This attribute counts the number of grants received whose specified profile was not known to the
64// ONU. (R) (optional) (4-bytes)
Holger Hildebrandtfa074992020-03-27 15:42:06 +000065//
66// Transmitted Xg_Pon Encapsulation Method Xgem Frames
67// Transmitted XG-PON encapsulation method (XGEM) frames: This attribute counts the number of non-
68// idle XGEM frames transmitted. If a service data unit (SDU) is fragmented, each fragment is an
69// XGEM frame and is counted as such. (R) (mandatory) (4 bytes)
70//
71// Fragment Xgem Frames
mpagenko836a1fd2021-11-01 16:12:42 +000072// This attribute counts the number of XGEM frames that represent fragmented SDUs, as indicated by
73// the LF bit-= 0. (R) (optional) (4-bytes)
Holger Hildebrandtfa074992020-03-27 15:42:06 +000074//
75// Xgem Hec Lost Words Count
mpagenko836a1fd2021-11-01 16:12:42 +000076// This attribute counts the number of 4-byte words lost because of an XGEM frame HEC error. In
77// general, all XGTC payload following the error is lost, until the next PSBd event. (R) (optional)
78// (4 bytes)
Holger Hildebrandtfa074992020-03-27 15:42:06 +000079//
80// Xgem Key Errors
mpagenko836a1fd2021-11-01 16:12:42 +000081// This attribute counts the number of downstream XGEM frames received with an invalid key
82// specification. The key may be invalid for several reasons, among which are:
83//
84// a) GEM port provisioned for clear text and key index not equal to 00;
85//
86// b) no multicast key of the specified key index has been provided via the OMCI for a multicast
87// GEM port;
88//
89// c) no unicast key of the specified key index has been successfully negotiated (see clause 15.5
90// of [ITU-T G.987.3] or clause C.15.5 of [ITU-T G.9807.1] for key negotiation state machine);
91//
92// d) GEM port specified to be encrypted and key index-= 00;
93//
94// e) key index-= 11, a reserved value.
95//
Holger Hildebrandtfa074992020-03-27 15:42:06 +000096// (R) (mandatory) (4 bytes)
97//
98// Xgem Hec Error Count
mpagenko836a1fd2021-11-01 16:12:42 +000099// This attribute counts the number of instances of an XGEM frame HEC error. (R) (mandatory) (4
100// bytes)
Holger Hildebrandtfa074992020-03-27 15:42:06 +0000101//
102// Transmitted Bytes In Non_Idle Xgem Frames
103// Transmitted bytes in non-idle XGEM frames: This attribute counts the number of transmitted bytes
104// in non-idle XGEM frames. (R) (mandatory) (8 bytes)
105//
106// Received Bytes In Non_Idle Xgem Frames
107// Received bytes in non-idle XGEM frames: This attribute counts the number of received bytes in
108// non-idle XGEM frames. (R) (optional) (8 bytes)
109//
110// Loss Of Downstream Synchronization Lods Event Count
111// Loss of downstream synchronization (LODS) event count: This attribute counts the number of state
112// transitions from O5.1 to O6. (R) (optional) (4-bytes)
113//
114// Lods Event Restored Count
mpagenko836a1fd2021-11-01 16:12:42 +0000115// This attribute counts the number of LODS cleared events. (R) (optional) (4-bytes)
Holger Hildebrandtfa074992020-03-27 15:42:06 +0000116//
117// Onu Reactivation By Lods Events
mpagenko836a1fd2021-11-01 16:12:42 +0000118// This attribute counts the number of LODS events resulting in ONU reactivation without
119// synchronization being reacquired. (R) (optional) (4-bytes)
Holger Hildebrandtfa074992020-03-27 15:42:06 +0000120//
121type XgPonTcPerformanceMonitoringHistoryData struct {
122 ManagedEntityDefinition
123 Attributes AttributeValueMap
124}
125
Holger Hildebrandt3ac49bd2022-02-07 17:46:43 +0000126// Attribute name constants
127
128const XgPonTcPerformanceMonitoringHistoryData_IntervalEndTime = "IntervalEndTime"
129const XgPonTcPerformanceMonitoringHistoryData_ThresholdData12Id = "ThresholdData12Id"
130const XgPonTcPerformanceMonitoringHistoryData_PsbdHecErrorCount = "PsbdHecErrorCount"
131const XgPonTcPerformanceMonitoringHistoryData_XgtcHecErrorCount = "XgtcHecErrorCount"
132const XgPonTcPerformanceMonitoringHistoryData_UnknownProfileCount = "UnknownProfileCount"
133const XgPonTcPerformanceMonitoringHistoryData_TransmittedXgPonEncapsulationMethodXgemFrames = "TransmittedXgPonEncapsulationMethodXgemFrames"
134const XgPonTcPerformanceMonitoringHistoryData_FragmentXgemFrames = "FragmentXgemFrames"
135const XgPonTcPerformanceMonitoringHistoryData_XgemHecLostWordsCount = "XgemHecLostWordsCount"
136const XgPonTcPerformanceMonitoringHistoryData_XgemKeyErrors = "XgemKeyErrors"
137const XgPonTcPerformanceMonitoringHistoryData_XgemHecErrorCount = "XgemHecErrorCount"
138const XgPonTcPerformanceMonitoringHistoryData_TransmittedBytesInNonIdleXgemFrames = "TransmittedBytesInNonIdleXgemFrames"
139const XgPonTcPerformanceMonitoringHistoryData_ReceivedBytesInNonIdleXgemFrames = "ReceivedBytesInNonIdleXgemFrames"
140const XgPonTcPerformanceMonitoringHistoryData_LossOfDownstreamSynchronizationLodsEventCount = "LossOfDownstreamSynchronizationLodsEventCount"
141const XgPonTcPerformanceMonitoringHistoryData_LodsEventRestoredCount = "LodsEventRestoredCount"
142const XgPonTcPerformanceMonitoringHistoryData_OnuReactivationByLodsEvents = "OnuReactivationByLodsEvents"
143
Holger Hildebrandtfa074992020-03-27 15:42:06 +0000144func init() {
145 xgpontcperformancemonitoringhistorydataBME = &ManagedEntityDefinition{
146 Name: "XgPonTcPerformanceMonitoringHistoryData",
Holger Hildebrandt3ac49bd2022-02-07 17:46:43 +0000147 ClassID: XgPonTcPerformanceMonitoringHistoryDataClassID,
Holger Hildebrandtfa074992020-03-27 15:42:06 +0000148 MessageTypes: mapset.NewSetWith(
149 Create,
150 Delete,
151 Get,
152 Set,
Girish Gowdra5c5aaf42021-02-17 19:40:50 -0800153 GetCurrentData,
Holger Hildebrandtfa074992020-03-27 15:42:06 +0000154 ),
155 AllowedAttributeMask: 0xfffe,
156 AttributeDefinitions: AttributeDefinitionMap{
Holger Hildebrandt3ac49bd2022-02-07 17:46:43 +0000157 0: Uint16Field(ManagedEntityID, PointerAttributeType, 0x0000, 0, mapset.NewSetWith(Read, SetByCreate), false, false, false, 0),
158 1: ByteField(XgPonTcPerformanceMonitoringHistoryData_IntervalEndTime, UnsignedIntegerAttributeType, 0x8000, 0, mapset.NewSetWith(Read), false, false, false, 1),
159 2: Uint16Field(XgPonTcPerformanceMonitoringHistoryData_ThresholdData12Id, PointerAttributeType, 0x4000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 2),
160 3: Uint32Field(XgPonTcPerformanceMonitoringHistoryData_PsbdHecErrorCount, CounterAttributeType, 0x2000, 0, mapset.NewSetWith(Read), false, true, false, 3),
161 4: Uint32Field(XgPonTcPerformanceMonitoringHistoryData_XgtcHecErrorCount, CounterAttributeType, 0x1000, 0, mapset.NewSetWith(Read), false, true, false, 4),
162 5: Uint32Field(XgPonTcPerformanceMonitoringHistoryData_UnknownProfileCount, CounterAttributeType, 0x0800, 0, mapset.NewSetWith(Read), false, true, false, 5),
163 6: Uint32Field(XgPonTcPerformanceMonitoringHistoryData_TransmittedXgPonEncapsulationMethodXgemFrames, CounterAttributeType, 0x0400, 0, mapset.NewSetWith(Read), false, false, false, 6),
164 7: Uint32Field(XgPonTcPerformanceMonitoringHistoryData_FragmentXgemFrames, CounterAttributeType, 0x0200, 0, mapset.NewSetWith(Read), false, true, false, 7),
165 8: Uint32Field(XgPonTcPerformanceMonitoringHistoryData_XgemHecLostWordsCount, CounterAttributeType, 0x0100, 0, mapset.NewSetWith(Read), false, true, false, 8),
166 9: Uint32Field(XgPonTcPerformanceMonitoringHistoryData_XgemKeyErrors, CounterAttributeType, 0x0080, 0, mapset.NewSetWith(Read), false, false, false, 9),
167 10: Uint32Field(XgPonTcPerformanceMonitoringHistoryData_XgemHecErrorCount, CounterAttributeType, 0x0040, 0, mapset.NewSetWith(Read), false, false, false, 10),
168 11: Uint64Field(XgPonTcPerformanceMonitoringHistoryData_TransmittedBytesInNonIdleXgemFrames, CounterAttributeType, 0x0020, 0, mapset.NewSetWith(Read), false, false, false, 11),
169 12: Uint64Field(XgPonTcPerformanceMonitoringHistoryData_ReceivedBytesInNonIdleXgemFrames, CounterAttributeType, 0x0010, 0, mapset.NewSetWith(Read), false, true, false, 12),
170 13: Uint32Field(XgPonTcPerformanceMonitoringHistoryData_LossOfDownstreamSynchronizationLodsEventCount, CounterAttributeType, 0x0008, 0, mapset.NewSetWith(Read), false, true, false, 13),
171 14: Uint32Field(XgPonTcPerformanceMonitoringHistoryData_LodsEventRestoredCount, CounterAttributeType, 0x0004, 0, mapset.NewSetWith(Read), false, true, false, 14),
172 15: Uint32Field(XgPonTcPerformanceMonitoringHistoryData_OnuReactivationByLodsEvents, CounterAttributeType, 0x0002, 0, mapset.NewSetWith(Read), false, true, false, 15),
Holger Hildebrandtfa074992020-03-27 15:42:06 +0000173 },
174 Access: CreatedByOlt,
175 Support: UnknownSupport,
Himani Chawlaac1f5ad2021-02-04 21:21:54 +0530176 Alarms: AlarmMap{
177 1: "PSBd HEC error count",
178 2: "XGTC HEC error count",
179 3: "Unknown profile count",
180 4: "XGEM HEC loss count",
181 5: "XGEM key errors",
182 6: "XGEM HEC error count",
183 },
Holger Hildebrandtfa074992020-03-27 15:42:06 +0000184 }
185}
186
187// NewXgPonTcPerformanceMonitoringHistoryData (class ID 344) creates the basic
188// Managed Entity definition that is used to validate an ME of this type that
189// is received from or transmitted to the OMCC.
190func NewXgPonTcPerformanceMonitoringHistoryData(params ...ParamData) (*ManagedEntity, OmciErrors) {
191 return NewManagedEntity(*xgpontcperformancemonitoringhistorydataBME, params...)
192}