blob: 93fa9d0cdef2f00fe20778b7619db44325c3241c [file] [log] [blame]
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -07001/*
2 * Copyright (c) 2018 - present. Boling Consulting Solutions (bcsw.net)
Matteo Scandolof9d43412021-01-12 11:11:34 -08003 * Copyright 2020-present Open Networking Foundation
4
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -07005 * 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
Matteo Scandolof9d43412021-01-12 11:11:34 -08008
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -07009 * http://www.apache.org/licenses/LICENSE-2.0
Matteo Scandolof9d43412021-01-12 11:11:34 -080010
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070011 * 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 */
Matteo Scandolof9d43412021-01-12 11:11:34 -080023
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070024package generated
25
26import "github.com/deckarep/golang-set"
27
Matteo Scandolof9d43412021-01-12 11:11:34 -080028// TwdmChannelPhyLodsPerformanceMonitoringHistoryDataClassID is the 16-bit ID for the OMCI
29// Managed entity TWDM channel PHY/LODS performance monitoring history data
Andrea Campanella10426e22021-10-15 17:58:04 +020030const TwdmChannelPhyLodsPerformanceMonitoringHistoryDataClassID = ClassID(444) // 0x01bc
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070031
32var twdmchannelphylodsperformancemonitoringhistorydataBME *ManagedEntityDefinition
33
Andrea Campanella10426e22021-10-15 17:58:04 +020034// TwdmChannelPhyLodsPerformanceMonitoringHistoryData (Class ID: #444 / 0x01bc)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070035// This ME collects certain PM data associated with the slot/circuit pack, hosting one or more
36// ANI-G MEs, and a specific TWDM channel. Instances of this ME 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 instance of TWDM channel ME.
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 TWDM channel ME. (R, setbycreate) (mandatory) (2-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070047//
48// Interval End Time
Andrea Campanella10426e22021-10-15 17:58:04 +020049// This attribute identifies the most recently finished 15-min interval. (R) (mandatory) (1-byte)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070050//
51// Threshold Data 1_2 Id
52// Threshold data 1/2 ID: This attribute points to an instance of the threshold data 1 and 2 MEs
Matteo Scandolof9d43412021-01-12 11:11:34 -080053// that contains PM threshold values. (R,-W, setbycreate) (mandatory) (2-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070054//
Andrea Campanella10426e22021-10-15 17:58:04 +020055// Total Received Words Protected By Bit_Interleaved Parity_32 Bip_32
Matteo Scandolof9d43412021-01-12 11:11:34 -080056// Total received words protected by bit-interleaved parity-32 (BIP-32): The count of 4-byte words
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070057// included in BIP-32 check. This is a product of the number of downstream FS frames received by
58// the size of the downstream FS frame after the FEC parity byte, if any, have been removed. The
59// count applies to the entire downstream data flow, whether or not addressed to that ONT. (R)
Matteo Scandolof9d43412021-01-12 11:11:34 -080060// (mandatory) (8-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070061//
62// Bip_32 Bit Error Count
63// BIP-32 bit error count: Count of the bit errors in the received downstream FS frames as measured
64// using BIP-32. If FEC is supported in the downstream direction, the BIP-32 count applies to the
65// downstream FS frame after the FEC correction has been applied and the FEC parity bytes have been
Matteo Scandolof9d43412021-01-12 11:11:34 -080066// removed. (R) (mandatory) (4-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070067//
68// Corrected Psbd Hec Error Count
Andrea Campanella10426e22021-10-15 17:58:04 +020069// The count of the errors in either CFC or OCS fields of the PSBd block that have been corrected
70// using the HEC technique. (R) (mandatory) (4-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070071//
72// Uncorrectable Psbd Hec Error Count
Andrea Campanella10426e22021-10-15 17:58:04 +020073// The count of the errors in either CFC or OCS fields of the PSBd block that could not be
74// corrected using the HEC technique. (R) (mandatory) (4-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070075//
76// Corrected Downstream Fs Header Hec Error Count
Andrea Campanella10426e22021-10-15 17:58:04 +020077// The count of the errors in the downstream FS header that have been corrected using the HEC
78// technique. (R) (mandatory) (4-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070079//
80// Uncorrectable Downstream Fs Header Hec Error Count
Andrea Campanella10426e22021-10-15 17:58:04 +020081// The count of the errors in the downstream FS header that could not be corrected using the HEC
82// technique. (R) (mandatory) (4-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070083//
84// Total Number Of Lods Events
Andrea Campanella10426e22021-10-15 17:58:04 +020085// The count of the state transitions from O5.1/O5.2 to O6, referring to the ONU activation cycle
86// state machine, clause 12 of [ITU-T-G.989.3]. (R) (mandatory) (4-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070087//
88// Lods Events Restored In Operating Twdm Channel
Andrea Campanella10426e22021-10-15 17:58:04 +020089// The count of LODS events cleared automatically without retuning. (R) (mandatory) (4-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070090//
91// Lods Events Restored In Protection Twdm Channel
Andrea Campanella10426e22021-10-15 17:58:04 +020092// The count of LODS events resolved by retuning to a pre-configured protection TWDM channel. The
93// event is counted against the original operating channel. (R) (mandatory) (4-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070094//
95// Lods Events Restored In Discretionary Twdm Channel
Andrea Campanella10426e22021-10-15 17:58:04 +020096// The count of LODS events resolved by retuning to a TWDM channel chosen by the ONU, without
97// retuning. Implies that the wavelength channel protection for the operating channel is not
98// active. The event is counted against the original operating channel (R) (mandatory) (4-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -070099//
100// Lods Events Resulting In Reactivation
Andrea Campanella10426e22021-10-15 17:58:04 +0200101// The count of LODS events resolved through ONU reactivation; that is, either TO2 (without WLCP)
102// or TO3-+ TO4 (with WLCP) expires before the downstream channel is reacquired, referring to the
103// ONU activation cycle state machine, clause 12 of [ITU-T-G.989.3]. The event is counted against
104// the original operating channel (R) (mandatory) (4-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -0700105//
106// Lods Events Resulting In Reactivation After Retuning To Protection Twdm Channel
Andrea Campanella10426e22021-10-15 17:58:04 +0200107// The count of LODS events resolved through ONU reactivation after attempted protection switching,
108// which turns unsuccessful due to a handshake failure. (R) (mandatory) (4-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -0700109//
110// Lods Events Resulting In Reactivation After Retuning To Discretionary Twdm Channel
Andrea Campanella10426e22021-10-15 17:58:04 +0200111// The count of LODS events resolved through ONU reactivation after attempted retuning to a
112// discretionary channel, which turns unsuccessful due to a handshake failure. (R) (mandatory)
113// (4-bytes)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -0700114//
115type TwdmChannelPhyLodsPerformanceMonitoringHistoryData struct {
116 ManagedEntityDefinition
117 Attributes AttributeValueMap
118}
119
120func init() {
121 twdmchannelphylodsperformancemonitoringhistorydataBME = &ManagedEntityDefinition{
122 Name: "TwdmChannelPhyLodsPerformanceMonitoringHistoryData",
123 ClassID: 444,
124 MessageTypes: mapset.NewSetWith(
125 Create,
126 Delete,
127 Get,
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -0700128 Set,
Andrea Campanella10426e22021-10-15 17:58:04 +0200129 GetCurrentData,
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -0700130 ),
Matteo Scandolof9d43412021-01-12 11:11:34 -0800131 AllowedAttributeMask: 0xfffe,
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -0700132 AttributeDefinitions: AttributeDefinitionMap{
Matteo Scandolof9d43412021-01-12 11:11:34 -0800133 0: Uint16Field("ManagedEntityId", PointerAttributeType, 0x0000, 0, mapset.NewSetWith(Read, SetByCreate), false, false, false, 0),
134 1: ByteField("IntervalEndTime", UnsignedIntegerAttributeType, 0x8000, 0, mapset.NewSetWith(Read), false, false, false, 1),
135 2: Uint16Field("ThresholdData12Id", UnsignedIntegerAttributeType, 0x4000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 2),
136 3: Uint64Field("TotalReceivedWordsProtectedByBitInterleavedParity32Bip32", CounterAttributeType, 0x2000, 0, mapset.NewSetWith(Read), false, false, false, 3),
137 4: Uint32Field("Bip32BitErrorCount", CounterAttributeType, 0x1000, 0, mapset.NewSetWith(Read), false, false, false, 4),
138 5: Uint32Field("CorrectedPsbdHecErrorCount", CounterAttributeType, 0x0800, 0, mapset.NewSetWith(Read), false, false, false, 5),
139 6: Uint32Field("UncorrectablePsbdHecErrorCount", CounterAttributeType, 0x0400, 0, mapset.NewSetWith(Read), false, false, false, 6),
140 7: Uint32Field("CorrectedDownstreamFsHeaderHecErrorCount", CounterAttributeType, 0x0200, 0, mapset.NewSetWith(Read), false, false, false, 7),
141 8: Uint32Field("UncorrectableDownstreamFsHeaderHecErrorCount", CounterAttributeType, 0x0100, 0, mapset.NewSetWith(Read), false, false, false, 8),
142 9: Uint32Field("TotalNumberOfLodsEvents", CounterAttributeType, 0x0080, 0, mapset.NewSetWith(Read), false, false, false, 9),
143 10: Uint32Field("LodsEventsRestoredInOperatingTwdmChannel", CounterAttributeType, 0x0040, 0, mapset.NewSetWith(Read), false, false, false, 10),
144 11: Uint32Field("LodsEventsRestoredInProtectionTwdmChannel", CounterAttributeType, 0x0020, 0, mapset.NewSetWith(Read), false, false, false, 11),
145 12: Uint32Field("LodsEventsRestoredInDiscretionaryTwdmChannel", CounterAttributeType, 0x0010, 0, mapset.NewSetWith(Read), false, false, false, 12),
146 13: Uint32Field("LodsEventsResultingInReactivation", CounterAttributeType, 0x0008, 0, mapset.NewSetWith(Read), false, false, false, 13),
147 14: Uint32Field("LodsEventsResultingInReactivationAfterRetuningToProtectionTwdmChannel", CounterAttributeType, 0x0004, 0, mapset.NewSetWith(Read), false, false, false, 14),
148 15: Uint32Field("LodsEventsResultingInReactivationAfterRetuningToDiscretionaryTwdmChannel", CounterAttributeType, 0x0002, 0, mapset.NewSetWith(Read), false, false, false, 15),
149 },
150 Access: CreatedByOlt,
151 Support: UnknownSupport,
152 Alarms: AlarmMap{
153 1: "BIP-32 bit error count",
154 2: "PSBd HEC errors - corrected",
155 3: "PSBd HEC errors - uncorrectable",
156 4: "FS header errors - corrected",
157 5: "FS header errors - uncorrectable",
158 6: "Total LODS event count",
159 7: "LODS - restored in operating TWDM channel",
160 8: "LODS - restored in protection TWDM channel",
161 9: "LODS - restored in discretionary TWDM channel",
162 10: "LODS - reactivations",
163 11: "LODS - handshake failure in protection channel",
164 12: "LODS - handshake failure in discretionary channel",
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -0700165 },
166 }
167}
168
Matteo Scandolof9d43412021-01-12 11:11:34 -0800169// NewTwdmChannelPhyLodsPerformanceMonitoringHistoryData (class ID 444) creates the basic
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -0700170// Managed Entity definition that is used to validate an ME of this type that
Matteo Scandolof9d43412021-01-12 11:11:34 -0800171// is received from or transmitted to the OMCC.
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -0700172func NewTwdmChannelPhyLodsPerformanceMonitoringHistoryData(params ...ParamData) (*ManagedEntity, OmciErrors) {
Matteo Scandolof9d43412021-01-12 11:11:34 -0800173 return NewManagedEntity(*twdmchannelphylodsperformancemonitoringhistorydataBME, params...)
Matteo Scandoloa6a3aee2019-11-26 13:30:14 -0700174}