blob: 8aa8f0a2bc08298a56b115e70c54919e1715b225 [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
4
5 * 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
8
9 * http://www.apache.org/licenses/LICENSE-2.0
10
11 * 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// TwdmChannelPloamPerformanceMonitoringHistoryDataPart2ClassID is the 16-bit ID for the OMCI
29// Managed entity TWDM channel PLOAM performance monitoring history data part 2
Andrea Campanella10426e22021-10-15 17:58:04 +020030const TwdmChannelPloamPerformanceMonitoringHistoryDataPart2ClassID = ClassID(447) // 0x01bf
Matteo Scandolof9d43412021-01-12 11:11:34 -080031
32var twdmchannelploamperformancemonitoringhistorydatapart2BME *ManagedEntityDefinition
33
Andrea Campanella10426e22021-10-15 17:58:04 +020034// TwdmChannelPloamPerformanceMonitoringHistoryDataPart2 (Class ID: #447 / 0x01bf)
Matteo Scandolof9d43412021-01-12 11:11:34 -080035// This ME collects additional PLOAM-related PM data associated with the slot/circuit pack, hosting
36// one or more ANI-G MEs, for a specific TWDM channel. Instances of this ME are created and deleted
37// by the OLT.
38//
39// The downstream PLOAM message counts of this ME include only the received PLOAM messages
40// pertaining to the given ONU, i.e.:
41//
42// - unicast PLOAM messages, addressed by ONU-ID;
43//
44// - broadcast PLOAM messages, addressed by serial number;
45//
46// - broadcast PLOAM messages, addressed to all ONUs on the PON.
47//
48// All these counters are characterized as optional in clause 14 of [ITU-T- G.989.3].
49//
50// For a complete discussion of generic PM architecture, refer to clause I.4.
51//
52// Relationships
53// An instance of this ME is associated with an instance of TWDM channel ME.
54//
55// Attributes
56// Managed Entity Id
Andrea Campanella10426e22021-10-15 17:58:04 +020057// This attribute uniquely identifies each instance of this ME. Through an identical ID, this ME is
58// implicitly linked to an instance of the TWDM channel ME. (R, setbycreate) (mandatory) (2-bytes)
Matteo Scandolof9d43412021-01-12 11:11:34 -080059//
60// Interval End Time
Andrea Campanella10426e22021-10-15 17:58:04 +020061// This attribute identifies the most recently finished 15-min interval. (R) (mandatory) (1-byte)
Matteo Scandolof9d43412021-01-12 11:11:34 -080062//
63// Threshold Data 1_2 Id
64// Threshold data 1/2 ID: This attribute points to an instance of the threshold data 1 and 2 MEs
65// that contains PM threshold values. (R,-W, setbycreate) (mandatory) (2-bytes)
66//
67// System_Profile Message Count
Andrea Campanella10426e22021-10-15 17:58:04 +020068// The counter of received System_Profile PLOAM messages. (R) (mandatory) (4-byte)
Matteo Scandolof9d43412021-01-12 11:11:34 -080069//
70// Channel_Profile Message Count
Andrea Campanella10426e22021-10-15 17:58:04 +020071// The counter of received Channel_Profile PLOAM messages. (R) (mandatory) (4-byte)
Matteo Scandolof9d43412021-01-12 11:11:34 -080072//
73// Burst_Profile Message Count
Andrea Campanella10426e22021-10-15 17:58:04 +020074// The counter of received Burst_Profile PLOAM messages. (R) (mandatory) (4-byte)
Matteo Scandolof9d43412021-01-12 11:11:34 -080075//
76// Assign_Onu_Id Message Count
77// Assign_ONU-ID message count: The counter of received Assign_ONU-ID PLOAM messages. (R)
78// (mandatory) (4-byte)
79//
80// Unsatisfied Adjust_Tx_Wavelength Requests
Andrea Campanella10426e22021-10-15 17:58:04 +020081// The counter of Adjust_Tx_Wavelength requests not applied or partially applied due to target US
82// wavelength being out of Tx tuning range. (R) (mandatory) (4-byte)
Matteo Scandolof9d43412021-01-12 11:11:34 -080083//
84// Deactivate_Onu_Id Message Count
85// Deactivate_ONU-ID message count: The counter of received Deactivate_ONU-ID PLOAM messages. (R)
86// (mandatory) (4-byte)
87//
88// Disable_Serial_Number Message Count
Andrea Campanella10426e22021-10-15 17:58:04 +020089// The counter of received Disable_Serial_Number PLOAM messages. (R) (mandatory) (4-byte)
Matteo Scandolof9d43412021-01-12 11:11:34 -080090//
91// Request_Registration Message Count
Andrea Campanella10426e22021-10-15 17:58:04 +020092// The counter of received Request_Registration PLOAM messages. (R) (mandatory) (4-byte)
Matteo Scandolof9d43412021-01-12 11:11:34 -080093//
94// Assign_Alloc_Id Message Count
95// Assign_Alloc-ID message count: The counter of received Assign_Alloc-ID PLOAM messages. (R)
96// (mandatory) (4-byte)
97//
98// Key_Control Message Count
Andrea Campanella10426e22021-10-15 17:58:04 +020099// The counter of received Key_Control PLOAM messages. (R) (mandatory) (4-byte)
Matteo Scandolof9d43412021-01-12 11:11:34 -0800100//
101// Sleep_Allow Message Count
Andrea Campanella10426e22021-10-15 17:58:04 +0200102// The counter of received Sleep_Allow PLOAM messages. (R) (mandatory) (4-byte)
Matteo Scandolof9d43412021-01-12 11:11:34 -0800103//
104// Tuning_Control_Request Message Count
105// Tuning_Control/Request message count: The counter of received Tuning_Control PLOAM messages with
106// Request operation code. (R) (mandatory) (4-byte)
107//
108// Tuning_Control_Complete_D Message Count
109// Tuning_Control/Complete_d message count: The counter of received Tuning_Control PLOAM messages
110// with Complete_d operation code. (R) (mandatory) (4-byte)
111//
112// Calibration_Request Message Count
Andrea Campanella10426e22021-10-15 17:58:04 +0200113// The counter of received Calibration_Request PLOAM messages. (R) (mandatory) (4-byte)
Matteo Scandolof9d43412021-01-12 11:11:34 -0800114//
115type TwdmChannelPloamPerformanceMonitoringHistoryDataPart2 struct {
116 ManagedEntityDefinition
117 Attributes AttributeValueMap
118}
119
120func init() {
121 twdmchannelploamperformancemonitoringhistorydatapart2BME = &ManagedEntityDefinition{
122 Name: "TwdmChannelPloamPerformanceMonitoringHistoryDataPart2",
123 ClassID: 447,
124 MessageTypes: mapset.NewSetWith(
125 Create,
126 Delete,
127 Get,
Matteo Scandolof9d43412021-01-12 11:11:34 -0800128 Set,
Andrea Campanella10426e22021-10-15 17:58:04 +0200129 GetCurrentData,
Matteo Scandolof9d43412021-01-12 11:11:34 -0800130 ),
131 AllowedAttributeMask: 0xffff,
132 AttributeDefinitions: AttributeDefinitionMap{
133 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: Uint32Field("SystemProfileMessageCount", CounterAttributeType, 0x2000, 0, mapset.NewSetWith(Read), false, false, false, 3),
137 4: Uint32Field("ChannelProfileMessageCount", CounterAttributeType, 0x1000, 0, mapset.NewSetWith(Read), false, false, false, 4),
138 5: Uint32Field("BurstProfileMessageCount", CounterAttributeType, 0x0800, 0, mapset.NewSetWith(Read), false, false, false, 5),
139 6: Uint32Field("AssignOnuIdMessageCount", CounterAttributeType, 0x0400, 0, mapset.NewSetWith(Read), false, false, false, 6),
140 7: Uint32Field("UnsatisfiedAdjustTxWavelengthRequests", CounterAttributeType, 0x0200, 0, mapset.NewSetWith(Read), false, false, false, 7),
141 8: Uint32Field("DeactivateOnuIdMessageCount", CounterAttributeType, 0x0100, 0, mapset.NewSetWith(Read), false, false, false, 8),
142 9: Uint32Field("DisableSerialNumberMessageCount", CounterAttributeType, 0x0080, 0, mapset.NewSetWith(Read), false, false, false, 9),
143 10: Uint32Field("RequestRegistrationMessageCount", CounterAttributeType, 0x0040, 0, mapset.NewSetWith(Read), false, false, false, 10),
144 11: Uint32Field("AssignAllocIdMessageCount", CounterAttributeType, 0x0020, 0, mapset.NewSetWith(Read), false, false, false, 11),
145 12: Uint32Field("KeyControlMessageCount", CounterAttributeType, 0x0010, 0, mapset.NewSetWith(Read), false, false, false, 12),
146 13: Uint32Field("SleepAllowMessageCount", CounterAttributeType, 0x0008, 0, mapset.NewSetWith(Read), false, false, false, 13),
147 14: Uint32Field("TuningControlRequestMessageCount", CounterAttributeType, 0x0004, 0, mapset.NewSetWith(Read), false, false, false, 14),
148 15: Uint32Field("TuningControlCompleteDMessageCount", CounterAttributeType, 0x0002, 0, mapset.NewSetWith(Read), false, false, false, 15),
149 16: Uint32Field("CalibrationRequestMessageCount", CounterAttributeType, 0x0001, 0, mapset.NewSetWith(Read), false, false, false, 16),
150 },
151 Access: CreatedByOlt,
152 Support: UnknownSupport,
153 Alarms: AlarmMap{
154 0: "Unsatisfied Adjust_Tx_Wavelength requests",
155 },
156 }
157}
158
159// NewTwdmChannelPloamPerformanceMonitoringHistoryDataPart2 (class ID 447) creates the basic
160// Managed Entity definition that is used to validate an ME of this type that
161// is received from or transmitted to the OMCC.
162func NewTwdmChannelPloamPerformanceMonitoringHistoryDataPart2(params ...ParamData) (*ManagedEntity, OmciErrors) {
163 return NewManagedEntity(*twdmchannelploamperformancemonitoringhistorydatapart2BME, params...)
164}