blob: 15ca20bbb4fd068aad13a4184b09ca9eab44efd8 [file] [log] [blame]
Chip Boling6e27b352020-02-14 09:10:01 -06001/*
2 * Copyright (c) 2018 - present. Boling Consulting Solutions (bcsw.net)
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 * http://www.apache.org/licenses/LICENSE-2.0
8 * Unless required by applicable law or agreed to in writing, software
9 * distributed under the License is distributed on an "AS IS" BASIS,
10 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 * See the License for the specific language governing permissions and
12 * limitations under the License.
13 */
14/*
15 * NOTE: This file was generated, manual edits will be overwritten!
16 *
17 * Generated by 'goCodeGenerator.py':
18 * https://github.com/cboling/OMCI-parser/README.md
19 */
20
21package generated
22
23import "github.com/deckarep/golang-set"
24
25// PwAtmConfigurationDataClassID is the 16-bit ID for the OMCI
26// Managed entity PW ATM configuration data
27const PwAtmConfigurationDataClassID ClassID = ClassID(337)
28
29var pwatmconfigurationdataBME *ManagedEntityDefinition
30
31// PwAtmConfigurationData (class ID #337)
32// This ME contains generic configuration data for an ATM pseudowire. Definitions of attributes are
33// from PW-ATM-MIB [IETF RFC 5605]. Instances of this ME are created and deleted by the OLT.
34//
35// Relationships
36// An instance of this ME is associated with an instance of the MPLS pseudowire TP ME with a
37// pseudowire type attribute equal to one of the following.//// 2 ATM AAL5 SDU VCC transport//// 3 ATM transparent cell transport//// 9 ATM n-to-one VCC cell transport//// 10 ATM n-to-one VPC cell transport//// 12 ATM one-to-one VCC cell mode//// 13 ATM one-to-one VPC cell mode//// 14 ATM AAL5 PDU VCC transport//// Alternatively, an instance of this ME may be associated with an Ethernet flow TP or a TCP/UDP
38// config data ME, depending on the transport layer of the pseudowire.
39//
40// Attributes
41// Managed Entity Id
42// Managed entity ID: This attribute uniquely identifies each instance of this ME. (R,
43// setbycreate)-(mandatory) (2 bytes)
44//
45// Tp Type
46// 2 TCP/UDP config data
47//
48// Transport Tp Pointer
49// Transport TP pointer: This attribute points to an associated instance of the transport layer TP,
50// whose type is specified by the TP type attribute. (R, W, setbycreate) (mandatory) (2 bytes)
51//
52// Pptp Atm Uni Pointer
53// PPTP ATM UNI pointer: This attribute points to an associated instance of the ITU-T G.983.2 PPTP
54// ATM UNI. Refer to [ITUT G.983.2] for the definition of the target ME. (R, W, setbycreate)
55// (mandatory) (2 bytes)
56//
57// Max C Ell C Oncatenation
58// Max cell concatenation: This attribute specifies the maximum number of ATM cells that can be
59// concatenated into one PW packet in the upstream direction. (R, W, setbycreate) (mandatory) (2
60// bytes)
61//
62// Far End M Ax C Ell C Oncatenation
63// Far-end max cell concatenation: This attribute specifies the maximum number of ATM cells that
64// can be concatenated into one PW packet as provisioned at the far end. This attribute may be used
65// for error checking of downstream traffic. The value 0 specifies that the ONU uses its internal
66// default. (R, W, set-by-create) (optional) (2 bytes)
67//
68// Atm Cell Loss Priority Clp Qos Mapping
69// The value 0 specifies that the ONU uses its internal default. (R, W, setbycreate) (optional) (1
70// byte)
71//
72// Timeout Mode
73// The value 0 specifies that the ONU uses its internal default. (R, W, setbycreate) (optional) (1
74// byte)
75//
76// Pw Atm Mapping Table
77// (R,-W) (mandatory) (21N bytes, where N is the number of entries in the list)
78//
79type PwAtmConfigurationData struct {
80 ManagedEntityDefinition
81 Attributes AttributeValueMap
82}
83
84func init() {
85 pwatmconfigurationdataBME = &ManagedEntityDefinition{
86 Name: "PwAtmConfigurationData",
87 ClassID: 337,
88 MessageTypes: mapset.NewSetWith(
89 Create,
90 Delete,
91 Get,
92 GetNext,
93 Set,
94 ),
95 AllowedAttributeMask: 0xff00,
96 AttributeDefinitions: AttributeDefinitionMap{
97 0: Uint16Field("ManagedEntityId", PointerAttributeType, 0x0000, 0, mapset.NewSetWith(Read, SetByCreate), false, false, false, 0),
98 1: ByteField("TpType", UnsignedIntegerAttributeType, 0x8000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 1),
99 2: Uint16Field("TransportTpPointer", UnsignedIntegerAttributeType, 0x4000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 2),
100 3: Uint16Field("PptpAtmUniPointer", UnsignedIntegerAttributeType, 0x2000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 3),
101 4: Uint16Field("MaxCEllCOncatenation", UnsignedIntegerAttributeType, 0x1000, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, false, false, 4),
102 5: Uint16Field("FarEndMAxCEllCOncatenation", UnsignedIntegerAttributeType, 0x0800, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, true, false, 5),
103 6: ByteField("AtmCellLossPriorityClpQosMapping", UnsignedIntegerAttributeType, 0x0400, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, true, false, 6),
104 7: ByteField("TimeoutMode", UnsignedIntegerAttributeType, 0x0200, 0, mapset.NewSetWith(Read, SetByCreate, Write), false, true, false, 7),
105 8: TableField("PwAtmMappingTable", TableAttributeType, 0x0100, TableInfo{nil, 21}, mapset.NewSetWith(Read, Write), false, false, false, 8),
106 },
107 Access: CreatedByOlt,
108 Support: UnknownSupport,
109 }
110}
111
112// NewPwAtmConfigurationData (class ID 337) creates the basic
113// Managed Entity definition that is used to validate an ME of this type that
114// is received from or transmitted to the OMCC.
115func NewPwAtmConfigurationData(params ...ParamData) (*ManagedEntity, OmciErrors) {
116 return NewManagedEntity(*pwatmconfigurationdataBME, params...)
117}