blob: 72d15d666ffc30caa466949e27a49b903786d4ee [file] [log] [blame]
Chip Boling6e27b352020-02-14 09:10:01 -06001/*
2 * Copyright (c) 2018 - present. Boling Consulting Solutions (bcsw.net)
Andrea Campanella7167ebb2020-02-24 09:56:38 +01003 * Copyright 2020-present Open Networking Foundation
4
Chip Boling6e27b352020-02-14 09:10:01 -06005 * 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
Andrea Campanella7167ebb2020-02-24 09:56:38 +01008
Chip Boling6e27b352020-02-14 09:10:01 -06009 * http://www.apache.org/licenses/LICENSE-2.0
Andrea Campanella7167ebb2020-02-24 09:56:38 +010010
Chip Boling6e27b352020-02-14 09:10:01 -060011 * 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 */
David K. Bainbridgeadf422d2021-04-09 16:06:41 +000017/*
Chip Boling6e27b352020-02-14 09:10:01 -060018 * 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// FastChannelConfigurationProfileClassID is the 16-bit ID for the OMCI
29// Managed entity FAST channel configuration profile
Chip Boling610117d2021-09-09 11:24:34 -050030const FastChannelConfigurationProfileClassID = ClassID(432) // 0x01b0
Chip Boling6e27b352020-02-14 09:10:01 -060031
32var fastchannelconfigurationprofileBME *ManagedEntityDefinition
33
Chip Boling610117d2021-09-09 11:24:34 -050034// FastChannelConfigurationProfile (Class ID: #432 / 0x01b0)
Chip Boling6e27b352020-02-14 09:10:01 -060035// This ME contains the FAST channel configuration profile for an xDSL UNI. An instance of this ME
36// is created and deleted by the OLT.
37//
38// Relationships
39// An instance of this ME may be associated with zero or more instances of the PPTP xDSL UNI part
40// 1.
41//
42// Attributes
43// Maximum Net Data Rate Maxndr
44// Maximum net data rate (MAXNDR): This attribute specifies the value of the maximum net data rate.
45// See clause 11.4.2.2 of [ITU-T G.9701]. Valid values range from 0 (0-kbit/s) to 4294967295
46// (2^32-1-kbit/s). See clause 7.2.1.1 of [ITUT-G.997.2]. (R, W) (mandatory) (4 bytes)
47//
48// Minimum Expected Throughput Minetr
49// Minimum expected throughput (MINETR): This attribute specifies the value of the minimum expected
50// throughput. See clause 11.4.2.1 of [ITU-T G.9701]. Valid values range from 0 (0-kbit/s) to
51// 4294967295 (2^32-1-kbit/s). See clause-7.2.1.2 of [ITU-T G.997.2]. (R, W) (mandatory) (4 bytes)
52//
53// Maximum Gamma Data Rate Maxgdr
54// Maximum gamma data rate (MAXGDR): This attribute specifies the maximum value of the GDR (see
55// clause 7.11.1.3). The GDR shall not exceed MAXGDR at the start of showtime and during showtime.
56// Valid values range from 0 (0-kbit/s) to 4294967295 (2^32-1-kbit/s). See clause 7.2.1.3 of [ITU-T
57// G.997.2]. (R, W) (mandatory) (4 bytes)
58//
59// Minimum Gamma Data Rate Mingdr
60// Minimum gamma data rate (MINGDR): This attribute specifies the minimum value of the GDR (see
61// clause 7.11.1.3). The GDR may be lower than MINGDR. If the GDR is lower than MINGDR at
62// initialization or when GDR becomes lower than MINGDR during showtime, a TCA occurs. Valid values
63// range from 0 (0-kbit/s) to 4294967295 (2^32-1-kbit/s). See clause 7.2.1.4 of [ITU-T G.997.2].
64// (R, W) (mandatory) (4 bytes)
65//
66// Maximum Delay Delaymax
67// Maximum delay (DELAYMAX): This attribute specifies the maximum allowed delay for retransmission.
68// See clause 9.8 of [ITU-T G.9701]. The ITUT-G.9701 control parameter delay_max is set to the same
69// value as the maximum delay. See clause 11.4.2.3 of [ITU-T G.9701]. Valid values range from 4
70// (1-ms) to 252 (63-ms) in steps of 0.25-ms. See clause 7.2.2.1 of [ITUT-G.997.2]. (R, W)
71// (mandatory) (4 bytes)
72//
73// Minimum Impulse Noise Protection Against Shine Inpmin_Shine
74// Minimum impulse noise protection against SHINE (INPMIN_SHINE): This attribute specifies the
75// minimum INP against SHINE. See clause 9.8 of [ITU-T G.9701]. The ITU-T G.9701 control parameter
76// INP_min_shine is set to the same value as the minimum INP against SHINE. See clause 11.4.2.4 of
77// [ITU-T G.9701]. Valid values range from 0 to 520 (520 symbol periods). See clause 7.2.2.2 of
78// [ITUT G.997.2]. (R, W) (mandatory) (2-bytes)
79//
80// Shine Ratio Shineratio
81// SHINE ratio (SHINERATIO): This attribute specifies the SHINE ratio that is used in the
82// definition of the expected throughput rate (ETR). See clause 9.8 of [ITUT-G.9701]. The ITU-T
83// G.9701 control parameter SHINEratio is set to the same value as the SHINE ratio. See clause
84// 11.4.2.5 of [ITU-T G.9701]. The value is expressed in units of 0.001, Valid values range from 0
85// to 100 (0.01) in steps of 0.001. See clause 7.2.2.3 of [ITU-T G.997.2]. (R, W) (mandatory)
86// (1-byte)
87//
88// Minimum Impulse Noise Protection Against Rein Inpmin_Rein
89// Minimum impulse noise protection against REIN (INPMIN_REIN): This attribute specifies the
90// minimum INP against REIN. See clause 9.8 of [ITU-T G.9701]. The ITU-T G.9701 control parameter
91// INP_min_rein is set to the same value as the minimum INP against REIN. See clause 11.4.2.6 of
92// [ITU-T G.9701]. Valid values range from 0 to 63 (63-symbol periods). See clause 7.2.2.4 of
93// [ITU-T G.997.2]. (R, W) (mandatory) (1 byte)
94//
95// Rein Inter_Arrival Time Iat_Rein
Chip Boling610117d2021-09-09 11:24:34 -050096// REIN Inter-arrival time (IAT_REIN): This attribute specifies the REIN IAT. See clause 9.8 of
97// [ITU-T G.9701]. The ITU-T G.9701 control parameter iat_rein_flag is set to the same value as the
98// REIN IAT. See clause 11.4.2.7 of [ITU-T G.9701].
99//
100// The REIN IAT is specified via the following values:
101//
102// 1 100 Hz;
103//
104// 2 120 Hz;
105//
106// 3 360 Hz.
107//
108// See clause 7.2.2.5 of [ITU-T G.997.2].
109//
Chip Boling6e27b352020-02-14 09:10:01 -0600110// (R, W) (mandatory) (1 byte)
111//
112// Minimum Reed_Solomon Rfec_Nfec Ratio Rnratio
113// Minimum Reed-Solomon RFEC/NFEC ratio (RNRATIO): This attribute specifies the minimal required
114// ratio, RFEC/NFEC, of Reed-Solomon code parameters. The ITU-T G.9701 control parameter rnratio is
115// set to the same value as the minimum Reed-Solomon RFEC/NFEC ratio. See clause 11.4.2.8 of
116// [ITUT-G.9701]. The value is expressed in units of 1/32, Valid values range from 0 to 8 (1/4).
117// See clause 7.2.2.6 of [ITU-T G.997.2]. (R, W) (mandatory) (1 byte)
118//
119// Rtx_Tc Testmode Rtx_Testmode
120// RTX-TC testmode (RTX_TESTMODE): This Boolean attribute specifies whether the retransmission test
121// mode defined in clause 9.8.3.1.2 [ITU-T G.9701] is enabled-(true) or disabled (disabled). See
122// clause 7.2.2.7 of [ITU-T G.997.2]. (R,-W) (optional) (1 byte)
123//
124type FastChannelConfigurationProfile struct {
125 ManagedEntityDefinition
126 Attributes AttributeValueMap
127}
128
129func init() {
130 fastchannelconfigurationprofileBME = &ManagedEntityDefinition{
131 Name: "FastChannelConfigurationProfile",
132 ClassID: 432,
133 MessageTypes: mapset.NewSetWith(
134 Create,
135 Delete,
136 Get,
137 Set,
138 ),
139 AllowedAttributeMask: 0xffc0,
140 AttributeDefinitions: AttributeDefinitionMap{
141 0: Uint32Field("MaximumNetDataRateMaxndr", UnknownAttributeType, 0x0000, 0, mapset.NewSetWith(Read, Write), false, false, false, 0),
142 1: Uint32Field("MinimumExpectedThroughputMinetr", UnsignedIntegerAttributeType, 0x8000, 0, mapset.NewSetWith(Read, Write), false, false, false, 1),
143 2: Uint32Field("MaximumGammaDataRateMaxgdr", UnsignedIntegerAttributeType, 0x4000, 0, mapset.NewSetWith(Read, Write), false, false, false, 2),
144 3: Uint32Field("MinimumGammaDataRateMingdr", UnsignedIntegerAttributeType, 0x2000, 0, mapset.NewSetWith(Read, Write), false, false, false, 3),
145 4: Uint32Field("MaximumDelayDelaymax", UnsignedIntegerAttributeType, 0x1000, 0, mapset.NewSetWith(Read, Write), false, false, false, 4),
146 5: Uint16Field("MinimumImpulseNoiseProtectionAgainstShineInpminShine", UnsignedIntegerAttributeType, 0x0800, 0, mapset.NewSetWith(Read, Write), false, false, false, 5),
147 6: ByteField("ShineRatioShineratio", UnsignedIntegerAttributeType, 0x0400, 0, mapset.NewSetWith(Read, Write), false, false, false, 6),
148 7: ByteField("MinimumImpulseNoiseProtectionAgainstReinInpminRein", UnsignedIntegerAttributeType, 0x0200, 0, mapset.NewSetWith(Read, Write), false, false, false, 7),
149 8: ByteField("ReinInterArrivalTimeIatRein", UnsignedIntegerAttributeType, 0x0100, 0, mapset.NewSetWith(Read, Write), false, false, false, 8),
150 9: ByteField("MinimumReedSolomonRfecNfecRatioRnratio", UnsignedIntegerAttributeType, 0x0080, 0, mapset.NewSetWith(Read, Write), false, false, false, 9),
151 10: ByteField("RtxTcTestmodeRtxTestmode", UnsignedIntegerAttributeType, 0x0040, 0, mapset.NewSetWith(Read, Write), false, true, false, 10),
152 },
153 Access: CreatedByOlt,
154 Support: UnknownSupport,
155 }
156}
157
158// NewFastChannelConfigurationProfile (class ID 432) creates the basic
159// Managed Entity definition that is used to validate an ME of this type that
160// is received from or transmitted to the OMCC.
161func NewFastChannelConfigurationProfile(params ...ParamData) (*ManagedEntity, OmciErrors) {
162 return NewManagedEntity(*fastchannelconfigurationprofileBME, params...)
163}