plc4go/protocols/s7/readwrite/model/TransportSize.go (1,981 lines of code) (raw):
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package model
import (
"context"
"fmt"
"github.com/pkg/errors"
"github.com/rs/zerolog"
"github.com/apache/plc4x/plc4go/spi/utils"
)
// Code generated by code-generation. DO NOT EDIT.
// TransportSize is an enum
type TransportSize uint8
type ITransportSize interface {
fmt.Stringer
utils.LengthAware
utils.Serializable
Supported_S7_300() bool
Supported_LOGO() bool
Code() uint8
SizeInBytes() uint8
Supported_S7_400() bool
Supported_S7_1200() bool
ShortName() uint8
Supported_S7_1500() bool
DataTransportSize() DataTransportSize
DataProtocolId() string
BaseType() TransportSize
}
const (
TransportSize_BOOL TransportSize = 0x01
TransportSize_BYTE TransportSize = 0x02
TransportSize_WORD TransportSize = 0x03
TransportSize_DWORD TransportSize = 0x04
TransportSize_LWORD TransportSize = 0x05
TransportSize_INT TransportSize = 0x06
TransportSize_UINT TransportSize = 0x07
TransportSize_SINT TransportSize = 0x08
TransportSize_USINT TransportSize = 0x09
TransportSize_DINT TransportSize = 0x0A
TransportSize_UDINT TransportSize = 0x0B
TransportSize_LINT TransportSize = 0x0C
TransportSize_ULINT TransportSize = 0x0D
TransportSize_COUNTER TransportSize = 0x1C
TransportSize_REAL TransportSize = 0x0E
TransportSize_LREAL TransportSize = 0x0F
TransportSize_CHAR TransportSize = 0x10
TransportSize_WCHAR TransportSize = 0x11
TransportSize_STRING TransportSize = 0x12
TransportSize_WSTRING TransportSize = 0x13
TransportSize_S5TIME TransportSize = 0x14
TransportSize_TIME TransportSize = 0x15
TransportSize_LTIME TransportSize = 0x16
TransportSize_DATE TransportSize = 0x17
TransportSize_TIME_OF_DAY TransportSize = 0x18
TransportSize_TOD TransportSize = 0x19
TransportSize_LTIME_OF_DAY TransportSize = 0x1A
TransportSize_LTOD TransportSize = 0x1B
TransportSize_DATE_AND_TIME TransportSize = 0x1C
TransportSize_DT TransportSize = 0x1D
TransportSize_DATE_AND_LTIME TransportSize = 0x1E
TransportSize_LDT TransportSize = 0x1F
TransportSize_DTL TransportSize = 0x21
)
var TransportSizeValues []TransportSize
func init() {
_ = errors.New
TransportSizeValues = []TransportSize{
TransportSize_BOOL,
TransportSize_BYTE,
TransportSize_WORD,
TransportSize_DWORD,
TransportSize_LWORD,
TransportSize_INT,
TransportSize_UINT,
TransportSize_SINT,
TransportSize_USINT,
TransportSize_DINT,
TransportSize_UDINT,
TransportSize_LINT,
TransportSize_ULINT,
TransportSize_COUNTER,
TransportSize_REAL,
TransportSize_LREAL,
TransportSize_CHAR,
TransportSize_WCHAR,
TransportSize_STRING,
TransportSize_WSTRING,
TransportSize_S5TIME,
TransportSize_TIME,
TransportSize_LTIME,
TransportSize_DATE,
TransportSize_TIME_OF_DAY,
TransportSize_TOD,
TransportSize_LTIME_OF_DAY,
TransportSize_LTOD,
TransportSize_DATE_AND_TIME,
TransportSize_DT,
TransportSize_DATE_AND_LTIME,
TransportSize_LDT,
TransportSize_DTL,
}
}
func (e TransportSize) Supported_S7_300() bool {
switch e {
case 0x01:
{ /* '0x01' */
return true
}
case 0x02:
{ /* '0x02' */
return true
}
case 0x03:
{ /* '0x03' */
return true
}
case 0x04:
{ /* '0x04' */
return true
}
case 0x05:
{ /* '0x05' */
return false
}
case 0x06:
{ /* '0x06' */
return true
}
case 0x07:
{ /* '0x07' */
return false
}
case 0x08:
{ /* '0x08' */
return false
}
case 0x09:
{ /* '0x09' */
return false
}
case 0x0A:
{ /* '0x0A' */
return true
}
case 0x0B:
{ /* '0x0B' */
return false
}
case 0x0C:
{ /* '0x0C' */
return false
}
case 0x0D:
{ /* '0x0D' */
return false
}
case 0x0E:
{ /* '0x0E' */
return true
}
case 0x0F:
{ /* '0x0F' */
return false
}
case 0x10:
{ /* '0x10' */
return true
}
case 0x11:
{ /* '0x11' */
return false
}
case 0x12:
{ /* '0x12' */
return true
}
case 0x13:
{ /* '0x13' */
return false
}
case 0x14:
{ /* '0x14' */
return true
}
case 0x15:
{ /* '0x15' */
return true
}
case 0x16:
{ /* '0x16' */
return false
}
case 0x17:
{ /* '0x17' */
return true
}
case 0x18:
{ /* '0x18' */
return true
}
case 0x19:
{ /* '0x19' */
return true
}
case 0x1A:
{ /* '0x1A' */
return false
}
case 0x1B:
{ /* '0x1B' */
return false
}
case 0x1C:
{ /* '0x1C' */
return true
}
case 0x1D:
{ /* '0x1D' */
return true
}
case 0x1E:
{ /* '0x1E' */
return false
}
case 0x1F:
{ /* '0x1F' */
return false
}
case 0x21:
{ /* '0x21' */
return false
}
default:
{
return false
}
}
}
func TransportSizeFirstEnumForFieldSupported_S7_300(value bool) (enum TransportSize, ok bool) {
for _, sizeValue := range TransportSizeValues {
if sizeValue.Supported_S7_300() == value {
return sizeValue, true
}
}
return 0, false
}
func (e TransportSize) Supported_LOGO() bool {
switch e {
case 0x01:
{ /* '0x01' */
return true
}
case 0x02:
{ /* '0x02' */
return true
}
case 0x03:
{ /* '0x03' */
return true
}
case 0x04:
{ /* '0x04' */
return true
}
case 0x05:
{ /* '0x05' */
return false
}
case 0x06:
{ /* '0x06' */
return true
}
case 0x07:
{ /* '0x07' */
return true
}
case 0x08:
{ /* '0x08' */
return true
}
case 0x09:
{ /* '0x09' */
return true
}
case 0x0A:
{ /* '0x0A' */
return true
}
case 0x0B:
{ /* '0x0B' */
return true
}
case 0x0C:
{ /* '0x0C' */
return false
}
case 0x0D:
{ /* '0x0D' */
return false
}
case 0x0E:
{ /* '0x0E' */
return true
}
case 0x0F:
{ /* '0x0F' */
return false
}
case 0x10:
{ /* '0x10' */
return true
}
case 0x11:
{ /* '0x11' */
return true
}
case 0x12:
{ /* '0x12' */
return true
}
case 0x13:
{ /* '0x13' */
return true
}
case 0x14:
{ /* '0x14' */
return false
}
case 0x15:
{ /* '0x15' */
return true
}
case 0x16:
{ /* '0x16' */
return false
}
case 0x17:
{ /* '0x17' */
return true
}
case 0x18:
{ /* '0x18' */
return true
}
case 0x19:
{ /* '0x19' */
return true
}
case 0x1A:
{ /* '0x1A' */
return true
}
case 0x1B:
{ /* '0x1B' */
return true
}
case 0x1C:
{ /* '0x1C' */
return false
}
case 0x1D:
{ /* '0x1D' */
return false
}
case 0x1E:
{ /* '0x1E' */
return false
}
case 0x1F:
{ /* '0x1F' */
return false
}
case 0x21:
{ /* '0x21' */
return false
}
default:
{
return false
}
}
}
func TransportSizeFirstEnumForFieldSupported_LOGO(value bool) (enum TransportSize, ok bool) {
for _, sizeValue := range TransportSizeValues {
if sizeValue.Supported_LOGO() == value {
return sizeValue, true
}
}
return 0, false
}
func (e TransportSize) Code() uint8 {
switch e {
case 0x01:
{ /* '0x01' */
return 0x01
}
case 0x02:
{ /* '0x02' */
return 0x02
}
case 0x03:
{ /* '0x03' */
return 0x04
}
case 0x04:
{ /* '0x04' */
return 0x06
}
case 0x05:
{ /* '0x05' */
return 0x00
}
case 0x06:
{ /* '0x06' */
return 0x05
}
case 0x07:
{ /* '0x07' */
return 0x05
}
case 0x08:
{ /* '0x08' */
return 0x02
}
case 0x09:
{ /* '0x09' */
return 0x02
}
case 0x0A:
{ /* '0x0A' */
return 0x07
}
case 0x0B:
{ /* '0x0B' */
return 0x07
}
case 0x0C:
{ /* '0x0C' */
return 0x00
}
case 0x0D:
{ /* '0x0D' */
return 0x00
}
case 0x0E:
{ /* '0x0E' */
return 0x08
}
case 0x0F:
{ /* '0x0F' */
return 0x00
}
case 0x10:
{ /* '0x10' */
return 0x03
}
case 0x11:
{ /* '0x11' */
return 0x13
}
case 0x12:
{ /* '0x12' */
return 0x03
}
case 0x13:
{ /* '0x13' */
return 0x00
}
case 0x14:
{ /* '0x14' */
return 0x00
}
case 0x15:
{ /* '0x15' */
return 0x00
}
case 0x16:
{ /* '0x16' */
return 0x00
}
case 0x17:
{ /* '0x17' */
return 0x00
}
case 0x18:
{ /* '0x18' */
return 0x00
}
case 0x19:
{ /* '0x19' */
return 0x0A
}
case 0x1A:
{ /* '0x1A' */
return 0x00
}
case 0x1B:
{ /* '0x1B' */
return 0x00
}
case 0x1C:
{ /* '0x1C' */
return 0x1C
}
case 0x1D:
{ /* '0x1D' */
return 0x00
}
case 0x1E:
{ /* '0x1E' */
return 0x00
}
case 0x1F:
{ /* '0x1F' */
return 0x00
}
case 0x21:
{ /* '0x21' */
return 0x00
}
default:
{
return 0
}
}
}
func TransportSizeFirstEnumForFieldCode(value uint8) (enum TransportSize, ok bool) {
for _, sizeValue := range TransportSizeValues {
if sizeValue.Code() == value {
return sizeValue, true
}
}
return 0, false
}
func (e TransportSize) SizeInBytes() uint8 {
switch e {
case 0x01:
{ /* '0x01' */
return 1
}
case 0x02:
{ /* '0x02' */
return 1
}
case 0x03:
{ /* '0x03' */
return 2
}
case 0x04:
{ /* '0x04' */
return 4
}
case 0x05:
{ /* '0x05' */
return 8
}
case 0x06:
{ /* '0x06' */
return 2
}
case 0x07:
{ /* '0x07' */
return 2
}
case 0x08:
{ /* '0x08' */
return 1
}
case 0x09:
{ /* '0x09' */
return 1
}
case 0x0A:
{ /* '0x0A' */
return 4
}
case 0x0B:
{ /* '0x0B' */
return 4
}
case 0x0C:
{ /* '0x0C' */
return 8
}
case 0x0D:
{ /* '0x0D' */
return 8
}
case 0x0E:
{ /* '0x0E' */
return 4
}
case 0x0F:
{ /* '0x0F' */
return 8
}
case 0x10:
{ /* '0x10' */
return 1
}
case 0x11:
{ /* '0x11' */
return 2
}
case 0x12:
{ /* '0x12' */
return 1
}
case 0x13:
{ /* '0x13' */
return 2
}
case 0x14:
{ /* '0x14' */
return 2
}
case 0x15:
{ /* '0x15' */
return 4
}
case 0x16:
{ /* '0x16' */
return 8
}
case 0x17:
{ /* '0x17' */
return 2
}
case 0x18:
{ /* '0x18' */
return 4
}
case 0x19:
{ /* '0x19' */
return 4
}
case 0x1A:
{ /* '0x1A' */
return 8
}
case 0x1B:
{ /* '0x1B' */
return 8
}
case 0x1C:
{ /* '0x1C' */
return 2
}
case 0x1D:
{ /* '0x1D' */
return 8
}
case 0x1E:
{ /* '0x1E' */
return 8
}
case 0x1F:
{ /* '0x1F' */
return 8
}
case 0x21:
{ /* '0x21' */
return 12
}
default:
{
return 0
}
}
}
func TransportSizeFirstEnumForFieldSizeInBytes(value uint8) (enum TransportSize, ok bool) {
for _, sizeValue := range TransportSizeValues {
if sizeValue.SizeInBytes() == value {
return sizeValue, true
}
}
return 0, false
}
func (e TransportSize) Supported_S7_400() bool {
switch e {
case 0x01:
{ /* '0x01' */
return true
}
case 0x02:
{ /* '0x02' */
return true
}
case 0x03:
{ /* '0x03' */
return true
}
case 0x04:
{ /* '0x04' */
return true
}
case 0x05:
{ /* '0x05' */
return false
}
case 0x06:
{ /* '0x06' */
return true
}
case 0x07:
{ /* '0x07' */
return false
}
case 0x08:
{ /* '0x08' */
return false
}
case 0x09:
{ /* '0x09' */
return false
}
case 0x0A:
{ /* '0x0A' */
return true
}
case 0x0B:
{ /* '0x0B' */
return false
}
case 0x0C:
{ /* '0x0C' */
return false
}
case 0x0D:
{ /* '0x0D' */
return false
}
case 0x0E:
{ /* '0x0E' */
return true
}
case 0x0F:
{ /* '0x0F' */
return false
}
case 0x10:
{ /* '0x10' */
return true
}
case 0x11:
{ /* '0x11' */
return false
}
case 0x12:
{ /* '0x12' */
return true
}
case 0x13:
{ /* '0x13' */
return false
}
case 0x14:
{ /* '0x14' */
return true
}
case 0x15:
{ /* '0x15' */
return true
}
case 0x16:
{ /* '0x16' */
return false
}
case 0x17:
{ /* '0x17' */
return true
}
case 0x18:
{ /* '0x18' */
return true
}
case 0x19:
{ /* '0x19' */
return true
}
case 0x1A:
{ /* '0x1A' */
return false
}
case 0x1B:
{ /* '0x1B' */
return false
}
case 0x1C:
{ /* '0x1C' */
return true
}
case 0x1D:
{ /* '0x1D' */
return true
}
case 0x1E:
{ /* '0x1E' */
return false
}
case 0x1F:
{ /* '0x1F' */
return false
}
case 0x21:
{ /* '0x21' */
return false
}
default:
{
return false
}
}
}
func TransportSizeFirstEnumForFieldSupported_S7_400(value bool) (enum TransportSize, ok bool) {
for _, sizeValue := range TransportSizeValues {
if sizeValue.Supported_S7_400() == value {
return sizeValue, true
}
}
return 0, false
}
func (e TransportSize) Supported_S7_1200() bool {
switch e {
case 0x01:
{ /* '0x01' */
return true
}
case 0x02:
{ /* '0x02' */
return true
}
case 0x03:
{ /* '0x03' */
return true
}
case 0x04:
{ /* '0x04' */
return true
}
case 0x05:
{ /* '0x05' */
return false
}
case 0x06:
{ /* '0x06' */
return true
}
case 0x07:
{ /* '0x07' */
return true
}
case 0x08:
{ /* '0x08' */
return true
}
case 0x09:
{ /* '0x09' */
return true
}
case 0x0A:
{ /* '0x0A' */
return true
}
case 0x0B:
{ /* '0x0B' */
return true
}
case 0x0C:
{ /* '0x0C' */
return false
}
case 0x0D:
{ /* '0x0D' */
return false
}
case 0x0E:
{ /* '0x0E' */
return true
}
case 0x0F:
{ /* '0x0F' */
return true
}
case 0x10:
{ /* '0x10' */
return true
}
case 0x11:
{ /* '0x11' */
return true
}
case 0x12:
{ /* '0x12' */
return true
}
case 0x13:
{ /* '0x13' */
return true
}
case 0x14:
{ /* '0x14' */
return false
}
case 0x15:
{ /* '0x15' */
return true
}
case 0x16:
{ /* '0x16' */
return false
}
case 0x17:
{ /* '0x17' */
return true
}
case 0x18:
{ /* '0x18' */
return true
}
case 0x19:
{ /* '0x19' */
return true
}
case 0x1A:
{ /* '0x1A' */
return false
}
case 0x1B:
{ /* '0x1B' */
return false
}
case 0x1C:
{ /* '0x1C' */
return true
}
case 0x1D:
{ /* '0x1D' */
return false
}
case 0x1E:
{ /* '0x1E' */
return false
}
case 0x1F:
{ /* '0x1F' */
return false
}
case 0x21:
{ /* '0x21' */
return true
}
default:
{
return false
}
}
}
func TransportSizeFirstEnumForFieldSupported_S7_1200(value bool) (enum TransportSize, ok bool) {
for _, sizeValue := range TransportSizeValues {
if sizeValue.Supported_S7_1200() == value {
return sizeValue, true
}
}
return 0, false
}
func (e TransportSize) ShortName() uint8 {
switch e {
case 0x01:
{ /* '0x01' */
return 'X'
}
case 0x02:
{ /* '0x02' */
return 'B'
}
case 0x03:
{ /* '0x03' */
return 'W'
}
case 0x04:
{ /* '0x04' */
return 'D'
}
case 0x05:
{ /* '0x05' */
return 'X'
}
case 0x06:
{ /* '0x06' */
return 'W'
}
case 0x07:
{ /* '0x07' */
return 'W'
}
case 0x08:
{ /* '0x08' */
return 'B'
}
case 0x09:
{ /* '0x09' */
return 'B'
}
case 0x0A:
{ /* '0x0A' */
return 'D'
}
case 0x0B:
{ /* '0x0B' */
return 'D'
}
case 0x0C:
{ /* '0x0C' */
return 'X'
}
case 0x0D:
{ /* '0x0D' */
return 'X'
}
case 0x0E:
{ /* '0x0E' */
return 'D'
}
case 0x0F:
{ /* '0x0F' */
return 'X'
}
case 0x10:
{ /* '0x10' */
return 'B'
}
case 0x11:
{ /* '0x11' */
return 'X'
}
case 0x12:
{ /* '0x12' */
return 'X'
}
case 0x13:
{ /* '0x13' */
return 'X'
}
case 0x14:
{ /* '0x14' */
return 'X'
}
case 0x15:
{ /* '0x15' */
return 'X'
}
case 0x16:
{ /* '0x16' */
return 'X'
}
case 0x17:
{ /* '0x17' */
return 'X'
}
case 0x18:
{ /* '0x18' */
return 'X'
}
case 0x19:
{ /* '0x19' */
return 'X'
}
case 0x1A:
{ /* '0x1A' */
return 'X'
}
case 0x1B:
{ /* '0x1B' */
return 'X'
}
case 0x1C:
{ /* '0x1C' */
return 'X'
}
case 0x1D:
{ /* '0x1D' */
return 'X'
}
case 0x1E:
{ /* '0x1E' */
return 'X'
}
case 0x1F:
{ /* '0x1F' */
return 'X'
}
case 0x21:
{ /* '0x21' */
return 'X'
}
default:
{
return 0
}
}
}
func TransportSizeFirstEnumForFieldShortName(value uint8) (enum TransportSize, ok bool) {
for _, sizeValue := range TransportSizeValues {
if sizeValue.ShortName() == value {
return sizeValue, true
}
}
return 0, false
}
func (e TransportSize) Supported_S7_1500() bool {
switch e {
case 0x01:
{ /* '0x01' */
return true
}
case 0x02:
{ /* '0x02' */
return true
}
case 0x03:
{ /* '0x03' */
return true
}
case 0x04:
{ /* '0x04' */
return true
}
case 0x05:
{ /* '0x05' */
return true
}
case 0x06:
{ /* '0x06' */
return true
}
case 0x07:
{ /* '0x07' */
return true
}
case 0x08:
{ /* '0x08' */
return true
}
case 0x09:
{ /* '0x09' */
return true
}
case 0x0A:
{ /* '0x0A' */
return true
}
case 0x0B:
{ /* '0x0B' */
return true
}
case 0x0C:
{ /* '0x0C' */
return true
}
case 0x0D:
{ /* '0x0D' */
return true
}
case 0x0E:
{ /* '0x0E' */
return true
}
case 0x0F:
{ /* '0x0F' */
return true
}
case 0x10:
{ /* '0x10' */
return true
}
case 0x11:
{ /* '0x11' */
return true
}
case 0x12:
{ /* '0x12' */
return true
}
case 0x13:
{ /* '0x13' */
return true
}
case 0x14:
{ /* '0x14' */
return true
}
case 0x15:
{ /* '0x15' */
return true
}
case 0x16:
{ /* '0x16' */
return true
}
case 0x17:
{ /* '0x17' */
return true
}
case 0x18:
{ /* '0x18' */
return true
}
case 0x19:
{ /* '0x19' */
return true
}
case 0x1A:
{ /* '0x1A' */
return true
}
case 0x1B:
{ /* '0x1B' */
return true
}
case 0x1C:
{ /* '0x1C' */
return true
}
case 0x1D:
{ /* '0x1D' */
return true
}
case 0x1E:
{ /* '0x1E' */
return true
}
case 0x1F:
{ /* '0x1F' */
return true
}
case 0x21:
{ /* '0x21' */
return true
}
default:
{
return false
}
}
}
func TransportSizeFirstEnumForFieldSupported_S7_1500(value bool) (enum TransportSize, ok bool) {
for _, sizeValue := range TransportSizeValues {
if sizeValue.Supported_S7_1500() == value {
return sizeValue, true
}
}
return 0, false
}
func (e TransportSize) DataTransportSize() DataTransportSize {
switch e {
case 0x01:
{ /* '0x01' */
return DataTransportSize_BIT
}
case 0x02:
{ /* '0x02' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x03:
{ /* '0x03' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x04:
{ /* '0x04' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x05:
{ /* '0x05' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x06:
{ /* '0x06' */
return DataTransportSize_INTEGER
}
case 0x07:
{ /* '0x07' */
return DataTransportSize_INTEGER
}
case 0x08:
{ /* '0x08' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x09:
{ /* '0x09' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x0A:
{ /* '0x0A' */
return DataTransportSize_INTEGER
}
case 0x0B:
{ /* '0x0B' */
return DataTransportSize_INTEGER
}
case 0x0C:
{ /* '0x0C' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x0D:
{ /* '0x0D' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x0E:
{ /* '0x0E' */
return DataTransportSize_REAL
}
case 0x0F:
{ /* '0x0F' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x10:
{ /* '0x10' */
return DataTransportSize_OCTET_STRING
}
case 0x11:
{ /* '0x11' */
return DataTransportSize_OCTET_STRING
}
case 0x12:
{ /* '0x12' */
return DataTransportSize_OCTET_STRING
}
case 0x13:
{ /* '0x13' */
return DataTransportSize_OCTET_STRING
}
case 0x14:
{ /* '0x14' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x15:
{ /* '0x15' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x16:
{ /* '0x16' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x17:
{ /* '0x17' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x18:
{ /* '0x18' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x19:
{ /* '0x19' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x1A:
{ /* '0x1A' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x1B:
{ /* '0x1B' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x1C:
{ /* '0x1C' */
return DataTransportSize_OCTET_STRING
}
case 0x1D:
{ /* '0x1D' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x1E:
{ /* '0x1E' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x1F:
{ /* '0x1F' */
return DataTransportSize_BYTE_WORD_DWORD
}
case 0x21:
{ /* '0x21' */
return DataTransportSize_BYTE_WORD_DWORD
}
default:
{
return 0
}
}
}
func TransportSizeFirstEnumForFieldDataTransportSize(value DataTransportSize) (enum TransportSize, ok bool) {
for _, sizeValue := range TransportSizeValues {
if sizeValue.DataTransportSize() == value {
return sizeValue, true
}
}
return 0, false
}
func (e TransportSize) DataProtocolId() string {
switch e {
case 0x01:
{ /* '0x01' */
return "IEC61131_BOOL"
}
case 0x02:
{ /* '0x02' */
return "IEC61131_BYTE"
}
case 0x03:
{ /* '0x03' */
return "IEC61131_WORD"
}
case 0x04:
{ /* '0x04' */
return "IEC61131_DWORD"
}
case 0x05:
{ /* '0x05' */
return "IEC61131_LWORD"
}
case 0x06:
{ /* '0x06' */
return "IEC61131_INT"
}
case 0x07:
{ /* '0x07' */
return "IEC61131_UINT"
}
case 0x08:
{ /* '0x08' */
return "IEC61131_SINT"
}
case 0x09:
{ /* '0x09' */
return "IEC61131_USINT"
}
case 0x0A:
{ /* '0x0A' */
return "IEC61131_DINT"
}
case 0x0B:
{ /* '0x0B' */
return "IEC61131_UDINT"
}
case 0x0C:
{ /* '0x0C' */
return "IEC61131_LINT"
}
case 0x0D:
{ /* '0x0D' */
return "IEC61131_ULINT"
}
case 0x0E:
{ /* '0x0E' */
return "IEC61131_REAL"
}
case 0x0F:
{ /* '0x0F' */
return "IEC61131_LREAL"
}
case 0x10:
{ /* '0x10' */
return "IEC61131_CHAR"
}
case 0x11:
{ /* '0x11' */
return "IEC61131_WCHAR"
}
case 0x12:
{ /* '0x12' */
return "IEC61131_STRING"
}
case 0x13:
{ /* '0x13' */
return "IEC61131_WSTRING"
}
case 0x14:
{ /* '0x14' */
return "S7_S5TIME"
}
case 0x15:
{ /* '0x15' */
return "IEC61131_TIME"
}
case 0x16:
{ /* '0x16' */
return "IEC61131_LTIME"
}
case 0x17:
{ /* '0x17' */
return "IEC61131_DATE"
}
case 0x18:
{ /* '0x18' */
return "IEC61131_TIME_OF_DAY"
}
case 0x19:
{ /* '0x19' */
return "IEC61131_TIME_OF_DAY"
}
case 0x1A:
{ /* '0x1A' */
return "IEC61131_LTIME_OF_DAY"
}
case 0x1B:
{ /* '0x1B' */
return "IEC61131_LTIME_OF_DAY"
}
case 0x1C:
{ /* '0x1C' */
return "IEC61131_INT"
}
case 0x1D:
{ /* '0x1D' */
return "IEC61131_DATE_AND_TIME"
}
case 0x1E:
{ /* '0x1E' */
return "IEC61131_DATE_AND_LTIME"
}
case 0x1F:
{ /* '0x1F' */
return "IEC61131_DATE_AND_LTIME"
}
case 0x21:
{ /* '0x21' */
return "IEC61131_DTL"
}
default:
{
return ""
}
}
}
func TransportSizeFirstEnumForFieldDataProtocolId(value string) (enum TransportSize, ok bool) {
for _, sizeValue := range TransportSizeValues {
if sizeValue.DataProtocolId() == value {
return sizeValue, true
}
}
return 0, false
}
func (e TransportSize) BaseType() TransportSize {
switch e {
case 0x01:
{ /* '0x01' */
return 0
}
case 0x02:
{ /* '0x02' */
return 0
}
case 0x03:
{ /* '0x03' */
return 0
}
case 0x04:
{ /* '0x04' */
return TransportSize_WORD
}
case 0x05:
{ /* '0x05' */
return 0
}
case 0x06:
{ /* '0x06' */
return 0
}
case 0x07:
{ /* '0x07' */
return TransportSize_INT
}
case 0x08:
{ /* '0x08' */
return TransportSize_INT
}
case 0x09:
{ /* '0x09' */
return TransportSize_INT
}
case 0x0A:
{ /* '0x0A' */
return TransportSize_INT
}
case 0x0B:
{ /* '0x0B' */
return TransportSize_INT
}
case 0x0C:
{ /* '0x0C' */
return TransportSize_INT
}
case 0x0D:
{ /* '0x0D' */
return TransportSize_INT
}
case 0x0E:
{ /* '0x0E' */
return 0
}
case 0x0F:
{ /* '0x0F' */
return TransportSize_REAL
}
case 0x10:
{ /* '0x10' */
return 0
}
case 0x11:
{ /* '0x11' */
return 0
}
case 0x12:
{ /* '0x12' */
return 0
}
case 0x13:
{ /* '0x13' */
return 0
}
case 0x14:
{ /* '0x14' */
return 0
}
case 0x15:
{ /* '0x15' */
return 0
}
case 0x16:
{ /* '0x16' */
return TransportSize_TIME
}
case 0x17:
{ /* '0x17' */
return 0
}
case 0x18:
{ /* '0x18' */
return 0
}
case 0x19:
{ /* '0x19' */
return 0
}
case 0x1A:
{ /* '0x1A' */
return 0
}
case 0x1B:
{ /* '0x1B' */
return 0
}
case 0x1C:
{ /* '0x1C' */
return 0
}
case 0x1D:
{ /* '0x1D' */
return 0
}
case 0x1E:
{ /* '0x1E' */
return 0
}
case 0x1F:
{ /* '0x1F' */
return 0
}
case 0x21:
{ /* '0x21' */
return 0
}
default:
{
return 0
}
}
}
func TransportSizeFirstEnumForFieldBaseType(value TransportSize) (enum TransportSize, ok bool) {
for _, sizeValue := range TransportSizeValues {
if sizeValue.BaseType() == value {
return sizeValue, true
}
}
return 0, false
}
func TransportSizeByValue(value uint8) (enum TransportSize, ok bool) {
switch value {
case 0x01:
return TransportSize_BOOL, true
case 0x02:
return TransportSize_BYTE, true
case 0x03:
return TransportSize_WORD, true
case 0x04:
return TransportSize_DWORD, true
case 0x05:
return TransportSize_LWORD, true
case 0x06:
return TransportSize_INT, true
case 0x07:
return TransportSize_UINT, true
case 0x08:
return TransportSize_SINT, true
case 0x09:
return TransportSize_USINT, true
case 0x0A:
return TransportSize_DINT, true
case 0x0B:
return TransportSize_UDINT, true
case 0x0C:
return TransportSize_LINT, true
case 0x0D:
return TransportSize_ULINT, true
case 0x0E:
return TransportSize_REAL, true
case 0x0F:
return TransportSize_LREAL, true
case 0x10:
return TransportSize_CHAR, true
case 0x11:
return TransportSize_WCHAR, true
case 0x12:
return TransportSize_STRING, true
case 0x13:
return TransportSize_WSTRING, true
case 0x14:
return TransportSize_S5TIME, true
case 0x15:
return TransportSize_TIME, true
case 0x16:
return TransportSize_LTIME, true
case 0x17:
return TransportSize_DATE, true
case 0x18:
return TransportSize_TIME_OF_DAY, true
case 0x19:
return TransportSize_TOD, true
case 0x1A:
return TransportSize_LTIME_OF_DAY, true
case 0x1B:
return TransportSize_LTOD, true
case 0x1C:
return TransportSize_COUNTER, true
case 0x1D:
return TransportSize_DT, true
case 0x1E:
return TransportSize_DATE_AND_LTIME, true
case 0x1F:
return TransportSize_LDT, true
case 0x21:
return TransportSize_DTL, true
}
return 0, false
}
func TransportSizeByName(value string) (enum TransportSize, ok bool) {
switch value {
case "BOOL":
return TransportSize_BOOL, true
case "BYTE":
return TransportSize_BYTE, true
case "WORD":
return TransportSize_WORD, true
case "DWORD":
return TransportSize_DWORD, true
case "LWORD":
return TransportSize_LWORD, true
case "INT":
return TransportSize_INT, true
case "UINT":
return TransportSize_UINT, true
case "SINT":
return TransportSize_SINT, true
case "USINT":
return TransportSize_USINT, true
case "DINT":
return TransportSize_DINT, true
case "UDINT":
return TransportSize_UDINT, true
case "LINT":
return TransportSize_LINT, true
case "ULINT":
return TransportSize_ULINT, true
case "REAL":
return TransportSize_REAL, true
case "LREAL":
return TransportSize_LREAL, true
case "CHAR":
return TransportSize_CHAR, true
case "WCHAR":
return TransportSize_WCHAR, true
case "STRING":
return TransportSize_STRING, true
case "WSTRING":
return TransportSize_WSTRING, true
case "S5TIME":
return TransportSize_S5TIME, true
case "TIME":
return TransportSize_TIME, true
case "LTIME":
return TransportSize_LTIME, true
case "DATE":
return TransportSize_DATE, true
case "TIME_OF_DAY":
return TransportSize_TIME_OF_DAY, true
case "TOD":
return TransportSize_TOD, true
case "LTIME_OF_DAY":
return TransportSize_LTIME_OF_DAY, true
case "LTOD":
return TransportSize_LTOD, true
case "COUNTER":
return TransportSize_COUNTER, true
case "DT":
return TransportSize_DT, true
case "DATE_AND_LTIME":
return TransportSize_DATE_AND_LTIME, true
case "LDT":
return TransportSize_LDT, true
case "DTL":
return TransportSize_DTL, true
}
return 0, false
}
func TransportSizeKnows(value uint8) bool {
for _, typeValue := range TransportSizeValues {
if uint8(typeValue) == value {
return true
}
}
return false
}
func CastTransportSize(structType any) TransportSize {
castFunc := func(typ any) TransportSize {
if sTransportSize, ok := typ.(TransportSize); ok {
return sTransportSize
}
return 0
}
return castFunc(structType)
}
func (m TransportSize) GetLengthInBits(ctx context.Context) uint16 {
return 8
}
func (m TransportSize) GetLengthInBytes(ctx context.Context) uint16 {
return m.GetLengthInBits(ctx) / 8
}
func TransportSizeParse(ctx context.Context, theBytes []byte) (TransportSize, error) {
return TransportSizeParseWithBuffer(ctx, utils.NewReadBufferByteBased(theBytes))
}
func TransportSizeParseWithBuffer(ctx context.Context, readBuffer utils.ReadBuffer) (TransportSize, error) {
log := zerolog.Ctx(ctx)
_ = log
val, err := /*TODO: migrate me*/ /*TODO: migrate me*/ readBuffer.ReadUint8("TransportSize", 8)
if err != nil {
return 0, errors.Wrap(err, "error reading TransportSize")
}
if enum, ok := TransportSizeByValue(val); !ok {
log.Debug().Interface("val", val).Msg("no value val found for TransportSize")
return TransportSize(val), nil
} else {
return enum, nil
}
}
func (e TransportSize) Serialize() ([]byte, error) {
wb := utils.NewWriteBufferByteBased()
if err := e.SerializeWithWriteBuffer(context.Background(), wb); err != nil {
return nil, err
}
return wb.GetBytes(), nil
}
func (e TransportSize) SerializeWithWriteBuffer(ctx context.Context, writeBuffer utils.WriteBuffer) error {
log := zerolog.Ctx(ctx)
_ = log
return /*TODO: migrate me*/ writeBuffer.WriteUint8("TransportSize", 8, uint8(uint8(e)), utils.WithAdditionalStringRepresentation(e.PLC4XEnumName()))
}
func (e TransportSize) GetValue() uint8 {
return uint8(e)
}
func (e TransportSize) GetSupported_S7_300() bool {
return e.Supported_S7_300()
}
func (e TransportSize) GetSupported_LOGO() bool {
return e.Supported_LOGO()
}
func (e TransportSize) GetCode() uint8 {
return e.Code()
}
func (e TransportSize) GetSizeInBytes() uint8 {
return e.SizeInBytes()
}
func (e TransportSize) GetSupported_S7_400() bool {
return e.Supported_S7_400()
}
func (e TransportSize) GetSupported_S7_1200() bool {
return e.Supported_S7_1200()
}
func (e TransportSize) GetShortName() uint8 {
return e.ShortName()
}
func (e TransportSize) GetSupported_S7_1500() bool {
return e.Supported_S7_1500()
}
func (e TransportSize) GetDataTransportSize() DataTransportSize {
return e.DataTransportSize()
}
func (e TransportSize) GetDataProtocolId() string {
return e.DataProtocolId()
}
func (e TransportSize) GetBaseType() TransportSize {
return e.BaseType()
}
// PLC4XEnumName returns the name that is used in code to identify this enum
func (e TransportSize) PLC4XEnumName() string {
switch e {
case TransportSize_BOOL:
return "BOOL"
case TransportSize_BYTE:
return "BYTE"
case TransportSize_WORD:
return "WORD"
case TransportSize_DWORD:
return "DWORD"
case TransportSize_LWORD:
return "LWORD"
case TransportSize_INT:
return "INT"
case TransportSize_UINT:
return "UINT"
case TransportSize_SINT:
return "SINT"
case TransportSize_USINT:
return "USINT"
case TransportSize_DINT:
return "DINT"
case TransportSize_UDINT:
return "UDINT"
case TransportSize_LINT:
return "LINT"
case TransportSize_ULINT:
return "ULINT"
case TransportSize_REAL:
return "REAL"
case TransportSize_LREAL:
return "LREAL"
case TransportSize_CHAR:
return "CHAR"
case TransportSize_WCHAR:
return "WCHAR"
case TransportSize_STRING:
return "STRING"
case TransportSize_WSTRING:
return "WSTRING"
case TransportSize_S5TIME:
return "S5TIME"
case TransportSize_TIME:
return "TIME"
case TransportSize_LTIME:
return "LTIME"
case TransportSize_DATE:
return "DATE"
case TransportSize_TIME_OF_DAY:
return "TIME_OF_DAY"
case TransportSize_TOD:
return "TOD"
case TransportSize_LTIME_OF_DAY:
return "LTIME_OF_DAY"
case TransportSize_LTOD:
return "LTOD"
case TransportSize_COUNTER:
return "COUNTER"
case TransportSize_DT:
return "DT"
case TransportSize_DATE_AND_LTIME:
return "DATE_AND_LTIME"
case TransportSize_LDT:
return "LDT"
case TransportSize_DTL:
return "DTL"
}
return fmt.Sprintf("Unknown(%v)", uint8(e))
}
func (e TransportSize) String() string {
return e.PLC4XEnumName()
}