flync_4_someip

SOME/IP Configuration

Note

Any SOME/IP related configuration such as service descriptions or timings profiles are placed in the directory 📁 general/someip/. This is a non-mandatory directory for the FLYNC configuration.

class SOMEIPConfig

Bases: FLYNCBaseModel

Basic configuration of SOME/IP for a target system.

Parameters

version: Literal[ “1.0” ]

The version of this config.

services: list[ SOMEIPServiceInterface ]

List of SOME/IP Services.

sd_config: SDConfig

Configuration of the Service-Discovery.

Service Discovery

Expand for a YAML example - 📄 sd_config.flync.yaml

Note

This file contains the list of SOME/IP-SD timing profiles that can be imported and used when deploying a service on an ECU socket.

ip_address: "224.224.224.255"
sd_timings:
- profile_id: server_default
  initial_delay_min: 50
  initial_delay_max: 100
  repetitions_base_delay: 300
  repetitions_max: 3
  request_response_delay_min: 50
  request_response_delay_max: 100
  offer_cyclic_delay: 1
  offer_ttl: 3
- profile_id: client_default
  initial_delay_min: 50
  initial_delay_max: 100
  repetitions_base_delay: 300
  repetitions_max: 3
  request_response_delay_min: 50
  request_response_delay_max: 100
  find_ttl: 3
  subscribe_ttl: 3
class SDConfig

Bases: FLYNCBaseModel

allows to configure the SOME/IP Service-Discovery. Represent from the Chapter SD, the Endpoint and SD Endpoint.

Parameters

ip_addressIPvAnyAddress

IP on which the service discovery operates.

portint

Port which the service discovery operates on. Must be greater than 0 and lower than 0xFFFF.

sd_timingsList[ SDTimings ]

Timing Configurations for SOME/IP-SD.

class SDTimings

Bases: DictInstances

Configurations for SOME/IP-SD Timings.

Parameters

profile_idstr

A unique ID for the SOME/IP-SD timings profile.

initial_delay_minint

Initial delay in milliseconds: This parameter keeps back service offers to pack more entries together. Must be greater or equal to 0. Defaults to 10.

initial_delay_maxint

Initial delay in milliseconds: This parameter keeps back service offers to pack more entries together. Must be greater or equal to 0. Defaults to 10.

repetitions_base_delayint

Repetitions Base delay in milliseconds: This parameter helps in fast startup and to make startup more robust.Loss of the first offer results in this delay. Must be greater or equal to 0. Defaults to 30.

repetitions_maxint

Number of repetitions while doubling delay. Must be greater or equal to 0. Defaults to 3.

request_response_delay_minint

Request response delay in milliseconds: This parameter keeps back subscribes to pack more entries together. Must be greater or equal to 0. Defaults to 10.

request_response_delay_maxint

Request response delay in milliseconds: This parameter keeps back subscribes to pack more entries together.”, Must be greater or equal to 0. Defaults to 10.

offer_cyclic_delay: int, optional

Offer cyclic delay in milliseconds: This parameter keeps system alive with cyclic offer. Must be greater or equal to 0. Defaults to 1000.

offer_ttlint, optional

Time to live in milliseconds: This parameter determines how fast to age out state. Must be greater or equal to 0. Defaults to 3000.

find_ttlint, optional

Offer cyclic delay in milliseconds: This parameter keeps system alive with cyclic offer. Must be greater or equal to 0. Defaults to 1000.

subscribe_ttl: int, optional

Time to live in milliseconds: This parameter determines how fast to age out state. Must be greater or equal to 0. Defaults to 3.

Service Interface

Expand for Schematic
        classDiagram

    class SOMEIPTP {
        enabled: bool = False
        max_segment_length: int = 0
    }

    class SOMEIPServiceInterface {
        name: str
        description: str | None = ''
        id: int
        major_version: int = 0
        minor_version: int = 0
        fields: list[SOMEIPField] | None = []
        events: list[SOMEIPEvent] | None = []
        eventgroups: list[SOMEIPEventgroup] | None = []
        methods: list[SOMEIPFireAndForgetMethod | SOMEIPRequestResponseMethod] = []
        meta: SOMEIPServiceMetadata
    }

    class SOMEIPMethodTimings {
        profile_id: str
        type: Literal['method'] = 'method'
        req_debounce: int = 0
        req_max_retention: int = 0
        res_max_retention: int = 0
    }

    class SOMEIPEventTimings {
        profile_id: str
        type: Literal['event']
        debounce: int = 0
        max_retention: int = 0
    }

    class SDTimings {
        profile_id: str
        initial_delay_min: int = 10
        initial_delay_max: int = 10
        repetitions_base_delay: int = 30
        repetitions_max: int = 3
        request_response_delay_min: int = 10
        request_response_delay_max: int = 10
        offer_cyclic_delay: int | None = 1000
        offer_ttl: int | None = 3000
        find_ttl: int | None = 1000
        subscribe_ttl: int | None = 3000
    }

    class E2EConfig {
        profile: str
        data_id: int
    }

    class SOMEIPFieldTimings {
        profile_id: str
        type: Literal['field']
        getter_req_debounce: int = 0
        getter_req_max_retention: int = 0
        getter_res_max_retention: int = 0
        setter_req_debounce: int = 0
        setter_req_max_retention: int = 0
        setter_res_max_retention: int = 0
        notifier_debounce: int = 0
        notifier_max_retention: int = 0
    }

    class SOMEIPConfig {
        version: Literal['1.0'] = '1.0'
        sd_config: SDConfig
        services: list[SOMEIPServiceInterface]
        someip_timings: SOMEIPTimingProfile
    }

    class SOMEIPEventgroup {
        name: str
        description: str | None = ''
        id: int
        multicast_threshold: int | None = 0
        events: list[SOMEIPEvent | SOMEIPField]
    }

    class OutputStrategy {
        <<Enumeration>>
        AUTO: int = 1
        FOLDER: int = 1
        SINGLE_FILE: int = 2
        OMMIT_ROOT: int = 4
        FIXED_ROOT: int = 8
    }

    class SOMEIPParameter {
        name: str
        description: str | None = ''
        datatype: Int8 | Int16 | Int32 | Int64 | UInt8 | UInt16 | UInt32 | UInt64 | Float32 | Float64 | Enum | Boolean | Struct | Union | ArrayType | DynamicLengthString | FixedLengthString | Bitfield
    }

    class SOMEIPTimingProfile {
        profiles: list[SOMEIPEventTimings | SOMEIPFieldTimings | SOMEIPMethodTimings] = list
        defaults: list[SOMEIPEventTimings | SOMEIPFieldTimings | SOMEIPMethodTimings] = list
    }

    class FLYNCBaseModel {
    }

    class SDConfig {
        ip_address: IPvAnyAddress
        port: int = 30490
        sd_timings: list[SDTimings]
    }

    class DictInstances {
    }

    class SOMEIPField {
        name: str
        parameters: list[SOMEIPParameter] | None = []
        description: str | None = ''
        notifier_id: int | None = None
        setter_id: int | None = None
        getter_id: int | None = None
        reliable: bool = False
        notifier_e2e: E2EConfig | None = None
        someip_timing: str | None = 'field_default'
    }

    class SOMEIPEvent {
        name: str
        description: str | None = ''
        id: int
        reliable: bool = False
        e2e: E2EConfig | None = None
        parameters: list[SOMEIPParameter] | None = []
        someip_timing: str | None = 'event_default'
    }

    class SOMEIPMethod {
        name: str
        description: str | None = ''
        type: Literal['request_response', 'fire_and_forget']
        id: int
        reliable: bool = False
        someip_tp: SOMEIPTP | None = None
        input_parameters: list[SOMEIPParameter] | None = []
        someip_timing: str | None = 'method_default'
    }

    class SOMEIPRequestResponseMethod {
        name: str
        description: str | None = ''
        type: Literal['request_response'] = 'request_response'
        id: int
        reliable: bool = False
        someip_tp: SOMEIPTP | None = None
        input_parameters: list[SOMEIPParameter] | None = []
        someip_timing: str | None = 'method_default'
        output_parameters: list[SOMEIPParameter] | None = []
    }

    class SOMEIPServiceMetadata {
        type: Literal['someip_service'] = 'someip_service'
        author: str
        compatible_flync_version: BaseVersion
        extensions: dict[str, str] | None = None
    }

    class SOMEIPFireAndForgetMethod {
        name: str
        description: str | None = ''
        type: Literal['fire_and_forget'] = 'fire_and_forget'
        id: int
        reliable: bool = False
        someip_tp: SOMEIPTP | None = None
        input_parameters: list[SOMEIPParameter] | None = []
        someip_timing: str | None = 'method_default'
    }

    SOMEIPServiceMetadata ..> BaseVersion
    SOMEIPTimingProfile ..> SOMEIPEventTimings
    SOMEIPTimingProfile ..> SOMEIPFieldTimings
    SOMEIPTimingProfile ..> SOMEIPMethodTimings
    SOMEIPField ..> E2EConfig
    SOMEIPParameter ..> UInt32
    SOMEIPParameter ..> Int8
    SOMEIPParameter ..> DynamicLengthString
    SOMEIPParameter ..> Float64
    SOMEIPParameter ..> UInt64
    SOMEIPParameter ..> UInt8
    SOMEIPParameter ..> Int32
    SOMEIPParameter ..> Float32
    SOMEIPParameter ..> ArrayType
    SOMEIPParameter ..> Bitfield
    SOMEIPParameter ..> Boolean
    SOMEIPParameter ..> Int64
    SOMEIPParameter ..> UInt16
    SOMEIPParameter ..> Enum
    SOMEIPParameter ..> Struct
    SOMEIPParameter ..> Int16
    SOMEIPParameter ..> FixedLengthString
    SOMEIPParameter ..> Union
    SOMEIPEvent ..> E2EConfig
    SOMEIPEvent ..> SOMEIPParameter
    SOMEIPEventgroup ..> SOMEIPField
    SOMEIPEventgroup ..> SOMEIPEvent
    SOMEIPMethod ..> SOMEIPTP
    SOMEIPMethod ..> SOMEIPParameter
    SOMEIPRequestResponseMethod ..> SOMEIPTP
    SOMEIPRequestResponseMethod ..> SOMEIPParameter
    SOMEIPFireAndForgetMethod ..> SOMEIPTP
    SOMEIPFireAndForgetMethod ..> SOMEIPParameter
    SOMEIPServiceInterface ..> SOMEIPServiceMetadata
    SOMEIPServiceInterface ..> SOMEIPFireAndForgetMethod
    SOMEIPServiceInterface ..> SOMEIPEventgroup
    SOMEIPServiceInterface ..> SOMEIPField
    SOMEIPServiceInterface ..> SOMEIPEvent
    SOMEIPServiceInterface ..> SOMEIPRequestResponseMethod
    SDConfig ..> SDTimings
    SDConfig ..> IPvAnyAddress
    SOMEIPConfig ..> SDConfig
    SOMEIPConfig ..> SOMEIPServiceInterface
    SOMEIPConfig ..> SOMEIPTimingProfile


    
Expand for a YAML example - 📁 services/

Note

All the SOME/IP services used in the system are configured in this directory. Each file contains following configuration parameters required to create a manifest of a SOME/IP service used in the system:

  • Name of the SOME/IP Service

  • Unique Service Identifier of the SOME/IP Service

  • Optional configuration for the Fields used in the SOME/IP Service

  • Optional configuration for the Events used in the SOME/IP Service

  • Optional configuration for the Eventgroups used in the SOME/IP Service

  • Optional configuration for the Methods used in the SOME/IP Service

The example file below shows the Enhanced Testability from TC8.

meta:
  author: "Dev"
  compatible_flync_version:
    version_schema: semver
    version: 0.9.0

name: Enhanced Testability Services
id: 0x0101
major_version: 1
minor_version: 1
fields:
- &field_0x8005
  name: InterfaceVersion
  someip_timing: field_default
  parameters:
  - name: MajorVersion
    datatype:
      type: uint8
  - name: MinorVersion
    datatype:
      type: uint32
  notifier_id: 0x8005
  getter_id: 0x25
- &field_0x8006
  name: TestFieldUINT8
  notifier_id: 0x8006
  setter_id: 0x26
  getter_id: 0x27
  parameters:
  - name: uint8_value
    datatype:
      type: uint8
- &field_0x8007
  name: TestFieldUINT8Array
  notifier_id: 0x8007
  setter_id: 0x28
  getter_id: 0x29
  parameters:
  - name: uint8_array_value
    datatype:
      type: array
      dimensions:
      - kind: dynamic
        length_of_length_field: 32
        lower_limit: 0
        upper_limit: 5
      element_type:
        type: uint8
- &field_0x8008
  name: TestFieldUINT8Reliable
  notifier_id: 0x8008
  setter_id: 0x2A
  getter_id: 0x2B
  reliable: true
  parameters:
  - name: uint8_value
    datatype:
      type: uint8
events:
- &event_0x8001
  name: TestEventUINT8
  id: 0x8001
  e2e:
    profile: AUTOSAR_Profile_4
    data_id: 0x12345670
  someip_timing: event_default
  parameters:
  - name: uint8_value
    datatype:
      type: uint8
- &event_0x8002
  name: TestEventUINT8Array
  id: 0x8002
  e2e:
    profile: AUTOSAR_Profile_4
    data_id: 0x12345678
  parameters:
  - name: uint8_array_value
    datatype:
      type: array
      dimensions:
      - kind: dynamic
        length_of_length_field: 32
        lower_limit: 0
        upper_limit: 5
      element_type:
        type: uint8
- &event_0x8004
  name: TestEventUINT8E2E
  id: 0x8004
  e2e:
    profile: AUTOSAR_Profile_7
    data_id: 0x12345679
  parameters:
  - name: length
    datatype:
      type: uint16
  - name: counter
    datatype:
      type: uint16
  - name: dataID
    datatype:
      type: uint32
  - name: crc
    datatype:
      type: uint32
  - name: uint8_value
    datatype:
      type: uint8
- &event_0x8003
  name: TestEventUINT8Reliable
  id: 0x8003
  reliable: true
  e2e:
    profile: AUTOSAR_Profile_4
    data_id: 0x12345671
  parameters:
  - name: uint8_value
    datatype:
      type: uint8
- &event_0x800b
  name: TestEventUINT8Multicast
  id: 0x800b
  parameters:
  - name: uint8_value
    datatype:
      type: uint8
eventgroups:
- name: eg2_all
  id: 2
  multicast_threshold: 2
  events:
  - *event_0x8001
  - *event_0x8002
  - *event_0x8003
  - *event_0x8004
  - *field_0x8005
  - *field_0x8006
  - *field_0x8007
  - *field_0x8008
  - *event_0x800b
- name: eg5_events_and_fields_unreliable
  id: 5
  multicast_threshold: 2
  events:
  - *event_0x8001
  - *event_0x8002
  - *event_0x8004
  - *event_0x800b
  - *field_0x8005
  - *field_0x8006
  - *field_0x8007
- name: eg6_events_multicast
  id: 6
  multicast_threshold: 2
  events:
  - *event_0x800b
methods:
- name: checkByteOrder
  type: request_response
  id: 0x1F
  someip_timing: method_default
  input_parameters:
  - name: arg1
    datatype:
      type: uint8
  - name: arg2
    datatype:
      type: uint16
  output_parameters:
  - name: sum
    datatype:
      type: uint32
    description: "Sum of arg1 and arg2."
- name: clientServiceActivate
  type: fire_and_forget
  id: 0x2F
  input_parameters:
  - name: delay
    datatype:
      type: uint8
    description: "Delay in s before Client Service is activated."
- name: clientServiceDeactivate
  type: fire_and_forget
  id: 0x30
  input_parameters:
  - name: delay
    datatype:
      type: uint8
    description: "Delay in s before Client Service is deactivated."
- name: clientServiceSubscribeEventgroup
  type: fire_and_forget
  id: 0x32
  input_parameters:
  - name: delay
    datatype:
      type: uint32
    description: "Delay in s before Eventgroup shall be subcribed."
  - name: duration
    datatype:
      type: uint32
    description: "Duration in s for sending Subscribe Eventgroups."
- name: echoCommonDatatypes
  type: request_response
  id: 0x32
  input_parameters:
  - name: boolean_in
    datatype:
      type: boolean
  - name: uint8_in
    datatype:
      type: uint8
  - name: uint16_in
    datatype:
      type: uint16
  - name: uint32_in
    datatype:
      type: uint32
  - name: int8_in
    datatype:
      type: int8
  - name: int16_in
    datatype:
      type: int16
  - name: int32_in
    datatype:
      type: int32
  - name: float32_in
    datatype:
      type: float32
  - name: float64_in
    datatype:
      type: float64
  output_parameters:
  - name: float64_out
    datatype:
      type: float64
  - name: float32_out
    datatype:
      type: float32
  - name: int32_out
    datatype:
      type: int32
  - name: int16_out
    datatype:
      type: int16
  - name: int8_out
    datatype:
      type: int8
  - name: uint32_out
    datatype:
      type: uint32
  - name: uint16_out
    datatype:
      type: uint16
  - name: uint8_out
    datatype:
      type: uint8
  - name: boolean_out
    datatype:
      type: boolean
- name: echoENUM
  type: request_response
  id: 0x17
  input_parameters:
  - name: enum_value_in
    datatype:
      type: enum
      base_type:
        type: uint8
      entries:
      - value: 0
        name: enum_zero
      - value: 1
        name: enum_one
      - value: 2
        name: enum_two
      - value: 3
        name: enum_three
  output_parameters:
  - name: enum_value_out
    datatype:
      type: enum
      base_type:
        type: uint8
      entries:
      - value: 0
        name: enum_zero
      - value: 1
        name: enum_one
      - value: 2
        name: enum_two
      - value: 3
        name: enum_three
- name: echoFLOAT64
  type: request_response
  id: 0x12
  input_parameters:
  - name: float64_in
    datatype:
      type: float64
  output_parameters:
  - name: float64_out
    datatype:
      type: float64
- name: echoINT64
  type: request_response
  id: 0x34
  input_parameters:
  - name: int64_in
    datatype:
      type: int64
  output_parameters:
  - name: int64_out
    datatype:
      type: int64
- name: echoINT8
  type: request_response
  id: 0x0E
  input_parameters:
  - name: int8_in
    datatype:
      type: int8
  output_parameters:
  - name: int8_out
    datatype:
      type: int8
- name: echoStaticUINT8Array
  type: request_response
  id: 0x36
  input_parameters:
  - name: uint8array_in
    datatype:
      type: array
      dimensions:
      - kind: fixed
        length: 5
      element_type:
        type: uint8
  output_parameters:
  - name: uint8array_out
    datatype:
      type: array
      dimensions:
      - kind: fixed
        length: 5
      element_type:
        type: uint8
- name: echoUINT8
  type: request_response
  id: 0x08
  input_parameters:
  - name: uint8_in
    datatype:
      type: uint8
  output_parameters:
  - name: uint8_out
    datatype:
      type: uint8
- name: echoUINT8Array
  type: request_response
  id: 0x09
  input_parameters:
  - name: uint8array_in
    datatype:
      type: array
      dimensions:
      - kind: dynamic
        length_of_length_field: 32
      element_type:
        type: uint8
    description: array
  output_parameters:
  - name: uint8array_in
    datatype:
      type: array
      dimensions:
      - kind: dynamic
        length_of_length_field: 32
      element_type:
        type: uint8
    description: array
- name: echoUINT8Array8BitLength
  type: request_response
  id: 0x3E
  input_parameters:
  - name: uint8array_in
    datatype:
      type: array
      dimensions:
      - kind: dynamic
        length_of_length_field: 8
      element_type:
        type: uint8
    description: array
  output_parameters:
  - name: uint8array_out
    datatype:
      type: array
      element_type:
        type: uint8
      dimensions:
      - kind: dynamic
        length_of_length_field: 8
    description: array
- name: echoUINT8Array16BitLength
  type: request_response
  id: 0x3F
  input_parameters:
  - name: uint8array_in
    datatype:
      type: array
      dimensions:
      - kind: dynamic
        length_of_length_field: 16
      element_type:
        type: uint8
    description: array
  output_parameters:
  - name: uint8array_out
    datatype:
      type: array
      dimensions:
      - kind: dynamic
        length_of_length_field: 16
      element_type:
        type: uint8
    description: array
- name: echoUINT8Array2Dim
  type: request_response
  id: 0x35
  input_parameters:
  - name: uint8array_in
    datatype:
      type: array
      dimensions:
      - kind: dynamic
        length_of_length_field: 32
      - kind: dynamic
        length_of_length_field: 32
      element_type:
        type: uint8
    description: array
  output_parameters:
  - name: uint8array_out
    datatype:
      type: array
      dimensions:
      - kind: dynamic
        length_of_length_field: 32
      - kind: dynamic
        length_of_length_field: 32
      element_type:
        type: uint8
    description: array
- name: echoUINT8ArrayMinSize
  type: request_response
  id: 0x37
  input_parameters:
  - name: uint8array_in
    datatype:
      type: array
      dimensions:
      - kind: dynamic
        length_of_length_field: 32
        lower_limit: 3
        upper_limit: 5
      element_type:
        type: uint8
    description: array
  output_parameters:
  - name: uint8array_out
    datatype:
      type: array
      dimensions:
      - kind: dynamic
        length_of_length_field: 32
        lower_limit: 3
        upper_limit: 5
      element_type:
        type: uint8
    description: array
- name: echoUINT8E2E
  type: request_response
  id: 0x0B
  input_parameters:
  - name: length
    datatype:
      type: uint16
  - name: counter
    datatype:
      type: uint16
  - name: dataID
    datatype:
      type: uint32
  - name: crc
    datatype:
      type: uint32
  - name: uint8_value
    datatype:
      type: uint8
  output_parameters:
  - name: length
    datatype:
      type: uint16
  - name: counter
    datatype:
      type: uint16
  - name: dataID
    datatype:
      type: uint32
  - name: crc
    datatype:
      type: uint32
  - name: uint8_value
    datatype:
      type: uint8
- name: echoUINT8RELIABLE
  type: request_response
  id: 0x0A
  input_parameters:
  - name: uint8_value
    datatype:
      type: uint8
  output_parameters:
  - name: uint8_value
    datatype:
      type: uint8
- name: echoUNION
  type: request_response
  id: 0x19
  input_parameters:
  - name: union_in
    datatype:
      type: union
      members:
      - type: boolean
        index: 1
        name: boolean
      - type: uint8
        index: 2
        name: uint8
      - type: uint16
        index: 3
        name: uint16
      - type: uint32
        index: 4
        name: uint32
      - type: int8
        index: 5
        name: int8
      - type: int16
        index: 6
        name: int16
      - type: int32
        index: 7
        name: int32
      - type: float32
        index: 8
        name: Float32
  output_parameters:
  - name: echoUNION_ResArg3
    datatype:
      type: union
      members:
      - type: boolean
        index: 1
        name: Boolean
      - type: uint8
        index: 2
        name: uint8
      - type: uint16
        index: 3
        name: uint16
      - type: uint32
        index: 4
        name: uint32
      - type: int8
        index: 5
        name: int8
      - type: int16
        index: 6
        name: int16
      - type: int32
        index: 7
        name: int32
      - type: float32
        index: 8
        name: float32
    description: value
- name: echoUTF16DYNAMIC
  type: request_response
  id: 0x16
  input_parameters:
  - name: utf16_in
    datatype:
      type: dynamic_length_string
      encoding: UTF-16BE
    description: string
  output_parameters:
  - name: utf16_out
    datatype:
      type: dynamic_length_string
      encoding: UTF-16BE
    description: string
- name: echoUTF16FIXED
  type: request_response
  id: 0x14
  input_parameters:
  - name: echoUTF16FIXED_ReqArg1
    datatype:
      type: fixed_length_string
      encoding: UTF-16BE
      length: 64
    description: string
  output_parameters:
  - name: echoUTF16FIXED_ResArg1
    datatype:
      type: fixed_length_string
      encoding: UTF-16BE
      length: 64
    description: string
- name: echoUTF8DYNAMIC
  type: request_response
  id: 0x15
  input_parameters:
  - name: echoUTF8DYNAMIC_ReqArg1
    datatype:
      type: dynamic_length_string
      encoding: UTF-8
    description: string
  output_parameters:
  - name: echoUTF8DYNAMIC_ResArg1
    datatype:
      type: dynamic_length_string
      encoding: UTF-8
    description: string
- name: echoUTF8FIXED
  type: request_response
  id: 0x13
  input_parameters:
  - name: echoUTF8FIXED_ReqArg1
    datatype:
      type: fixed_length_string
      encoding: UTF-8
      length: 64
    description: string
  output_parameters:
  - name: echoUTF8FIXED_ResArg1
    datatype:
      type: fixed_length_string
      encoding: UTF-8
      length: 64
    description: string
- name: resetInterface
  type: fire_and_forget
  id: 0x01
- name: suspendInterface
  type: fire_and_forget
  id: 0x02
  input_parameters:
  - name: delay
    datatype:
      type: uint32
    description: "Time in seconds to wait until interface is being suspended."
  - name: duration
    datatype:
      type: uint32
    description: "Time in seconds for how long the interface is suspended."
- name: triggerEventUINT8
  type: fire_and_forget
  id: 0x03
  input_parameters:
  - name: delay
    datatype:
      type: uint32
    description: "Time in seconds to wait until sending TestEventUINT8."
  - name: duration
    datatype:
      type: uint32
    description: "Duration in seconds for sending TestEventUINT8."
  - name: debounceTime
    datatype:
      type: uint32
    description: "Debounce Time in seconds for sending TestEventUINT8."
- name: triggerEventUINT8Array
  type: fire_and_forget
  id: 0x04
  input_parameters:
  - name: delay
    datatype:
      type: uint32
    description: "Time in seconds to wait until sending TestEventUINT8Array."
  - name: duration
    datatype:
      type: uint32
    description: "Duration in seconds for sending TestEventUINT8Array."
  - name: debounceTime
    datatype:
      type: uint32
    description: "Debounce Time in seconds for sending TestEventUINT8Array."
- name: triggerEventUINT8E2E
  type: fire_and_forget
  id: 0x06
  input_parameters:
  - name: delay
    datatype:
      type: uint32
    description: "Time in seconds to wait until sending TestEventUINT8E2E."
  - name: duration
    datatype:
      type: uint32
    description: "Duration in seconds for sending TestEventUINT8E2E."
  - name: debounceTime
    datatype:
      type: uint32
    description: "Debounce Time in seconds for sending TestEventUINT8E2E."
- name: triggerEventUINT8Reliable
  type: fire_and_forget
  id: 0x05
  input_parameters:
  - name: delay
    datatype:
      type: uint32
    description: "Time in seconds to wait until sending TestEventUINT8Reliable."
  - name: duration
    datatype:
      type: uint32
    description: "Duration in seconds for sending TestEventUINT8Reliable."
  - name: debounceTime
    datatype:
      type: uint32
    description: "Debounce Time in seconds for sending TestEventUINT8Reliable."
- name: triggerEventUINT8Multicast
  type: fire_and_forget
  id: 0x3a
  input_parameters:
  - name: delay
    datatype:
      type: uint32
    description: "Time in seconds to wait until sending TestEventUINT8Multicast."
  - name: duration
    datatype:
      type: uint32
    description: "Duration in seconds for sending TestEventUINT8Multicast."
  - name: debounceTime
    datatype:
      type: uint32
    description: "Debounce Time in seconds for sending TestEventUINT8Multicast."
- name: clientServiceGetLastValueOfEventTCP
  type: request_response
  id: 0x3B
  output_parameters:
  - name: uint8_out
    datatype:
      type: uint8
- name: clientServiceGetLastValueOfEventUDPUnicast
  type: request_response
  id: 0x3C
  output_parameters:
  - name: uint8_out
    datatype:
      type: uint8
- name: clientServiceGetLastValueOfEventUDPMulticast
  type: request_response
  id: 0x3D
  output_parameters:
  - name: uint8_out
    datatype:
      type: uint8
- name: echoBitfields
  type: request_response
  id: 0x41
  input_parameters:
  - name: bitfield8_in
    datatype:
      type: bitfield
      length: 8
  - name: bitfield16_in
    datatype:
      type: bitfield
      length: 16
  - name: bitfield32_in
    datatype:
      type: bitfield
      length: 32
  output_parameters:
  - name: bitfield8_out
    datatype:
      type: bitfield
      length: 8
  - name: bitfield16_out
    datatype:
      type: bitfield
      length: 16
  - name: bitfield32_out
    datatype:
      type: bitfield
      length: 32
class SOMEIPServiceInterface

Bases: DictInstances

Class to create a SOME/IP service interface definition.

Parameters

namestr

Name of the service

description : str, optional

idint

Unique identifier for the service. Must be greater than 0 and lower or equal than 0xFFFF.

major_versionint

The major version of this service interface. Must be greater than 0 and lower or equal than 0xFF.

minor_versionint

The minor version of this service interface. Must be greater than 0 and lower or equal than 0xFFFFFFFF.

fieldsList[ SOMEIPField]

Fields of the service.

eventsList[SOMEIPEvent]

Events of the service.

eventgroupsList[SOMEIPEventgroup]

Eventgroups of the service.

methodsList[ SOMEIPFireAndForgetMethod | SOMEIPRequestResponseMethod ]

Methods of the service.

metaSOMEIPServiceMetadata

Metadata for the SOME/IP Service.

Method

class SOMEIPMethod

Bases: FLYNCBaseModel

Datastructure to model SOME/IP methods.

Parameters

namestr

Name of the Method.

descriptionstr, optional

Description of the Method.

typeLiteral[“request_response”, “fire_and_forget”]

Type of the Method.

idint

Unique method identifier for the service interface. Must be greater than 0 and lower or equal than 0xFFFF.

reliablebool

Indicates whether the event is transmitted reliably.

someip_tpSOMEIPTP

SOME/IP Transport Protocol configuration for this method.

input_parameterslist[SOMEIPParameters]

The parameters of the Request

someip_timingstr, optional

Name of the timings definition. Defaults to “method_default”.

class SOMEIPFireAndForgetMethod

Bases: SOMEIPMethod

Allows to model SOME/IP methods which will not return a response.

class SOMEIPRequestResponseMethod

Bases: SOMEIPMethod

Allows to model SOME/IP methods which will return a response.

Parameters

output_parameterslist[SOMEIPParameters], optional

The parameters of the Response

class SOMEIPTP

Bases: FLYNCBaseModel

SOME/IP Transport Protocol configuration.

Parameters

enabledbool

Indicates whether SOME/IP-TP is enabled or not. Defaults to False.

max_segment_lengthint

maximum segment length. Defaults to 0.

Eventgroup

class SOMEIPEventgroup

Bases: FLYNCBaseModel

Main datastructure to model a SOME/IP Eventgroup.

Parameters

namestr

Name of the Eventgroup.

description : str, optional

idint

Identifies the Eventgroup. Must be greater than 0 and lower or equal than 0xFFFF.

multicast_thresholdint, optional

Identifies the multicast threshold. Must be greater than 0. Defaults to 0.

events: list[SOMEIPEvent | SOMEIPField]

The events and fields this eventgroup contains.

Event

class SOMEIPEvent

Bases: FLYNCBaseModel

Defines a SOME/IP event definition.

This model is used to describe a SOME/IP event, including its identifier, reliability settings, optional E2E protection configuration, and the list of parameters that the event transports.

Parameters

namestr

Name of the event.

descriptionstr, optional

Human-readable description of the event.

idint

Unique identifier of the event. Must be greater than 0 and lower or equal than 0xFFFF.

reliablebool

Indicates whether the event is transmitted reliably.

e2eE2EConfig, optional

E2E configuration for the event.

parameters list[SOMEIPParameters]

Parameters of the event

someip_timingstr, optional

Name of the timings definition. Defaults to “event_default”.

Field

class SOMEIPField

Bases: FLYNCBaseModel

Base datastructure to design a SOME/IP Field

Parameters

namestr

Name of the Field.

parameters list[SOMEIPParameters]

List of Parameters of the Field.

descriptionstr, optional

Description of the Field.

notifier_idint, optional

Identifies the Field Notifier. Must be greater than 0 and lower or equal than 0xFFFF. Defaults to 1.

setter_idint, optional

Identifies the Field Setter. Must be greater than 0 and lower or equal than 0xFFFF.

getter_idint, optional

Identifies the Field Getter. Must be greater than 0 and lower or equal than 0xFFFF.

reliablebool

Indicates whether the event is transmitted reliably.

notifier_e2eE2EConfig, optional

E2E configuration for the field notifier.

someip_timingstr, optional

Name of the timings definition. Defaults to “field_default”.

Service Deployment

Expand for Schematic
        classDiagram

    class SOMEIPServiceProvider {
        deployment_type: Literal['someip_provider'] = 'someip_provider'
        service: int
        major_version: int
        instance_id: int
        someip_sd_timings_profile: str
        minor_version: int = 0
    }

    class SOMEIPServiceConsumer {
        deployment_type: Literal['someip_consumer'] = 'someip_consumer'
        service: int
        major_version: int = 0
        instance_id: int
        someip_sd_timings_profile: str
        consumed_eventgroups: list[str] | None = None
    }

    class BaseUDPDeployment {
        protocol: Literal['UDP'] = 'UDP'
        port: int
    }

    class TCPDeployment {
        protocol: Literal['TCP'] = 'TCP'
        port: int
    }

    class FLYNCBaseModel {
    }

    class SOMEIPServiceInterface {
        name: str
        description: str | None = ''
        id: int
        major_version: int = 0
        minor_version: int = 0
        fields: list[SOMEIPField] | None = []
        events: list[SOMEIPEvent] | None = []
        eventgroups: list[SOMEIPEventgroup] | None = []
        methods: list[SOMEIPFireAndForgetMethod | SOMEIPRequestResponseMethod] = []
        meta: SOMEIPServiceMetadata
    }

    class SOMEIPServiceDeployment {
        deployment_type: Literal['someip', 'someip_provider', 'someip_consumer']
        service: int
        major_version: int = 0
        instance_id: int
        someip_sd_timings_profile: str
    }

    class SDTimings {
        profile_id: str
        initial_delay_min: int = 10
        initial_delay_max: int = 10
        repetitions_base_delay: int = 30
        repetitions_max: int = 3
        request_response_delay_min: int = 10
        request_response_delay_max: int = 10
        offer_cyclic_delay: int | None = 1000
        offer_ttl: int | None = 3000
        find_ttl: int | None = 1000
        subscribe_ttl: int | None = 3000
    }

    class MulticastSDEndpoint {
        protocol: Literal['UDP'] = 'UDP'
        port: int
        ip_address: IPvAnyAddress
        ip_ttl: int
    }

    class MulticastEndpoint {
        protocol: Literal['UDP'] = 'UDP'
        port: int
        ip_address: IPvAnyAddress
    }

    class SOMEIPSDDeployment {
        deployment_type: Literal['someip_sd'] = 'someip_sd'
        multicast: MulticastSDEndpoint | None = None
    }

    class Layer4Endpoint {
        protocol: Literal['UDP', 'TCP'] = 'UDP'
        port: int
    }

    class UDPDeployment {
        protocol: Literal['UDP'] = 'UDP'
        port: int
        multicast: MulticastEndpoint | None = None
    }

    SOMEIPServiceInterface ..> SOMEIPServiceMetadata
    SOMEIPServiceInterface ..> SOMEIPFireAndForgetMethod
    SOMEIPServiceInterface ..> SOMEIPEventgroup
    SOMEIPServiceInterface ..> SOMEIPField
    SOMEIPServiceInterface ..> SOMEIPEvent
    SOMEIPServiceInterface ..> SOMEIPRequestResponseMethod
    MulticastEndpoint ..> IPvAnyAddress
    MulticastSDEndpoint ..> IPvAnyAddress
    UDPDeployment ..> MulticastEndpoint
    SOMEIPSDDeployment ..> MulticastSDEndpoint


    

Hint

Service Deployments are directly configured in a socket. For further details on the configuration go to: Socket Config.

class SOMEIPServiceProvider

Bases: SOMEIPServiceDeployment

Defines the provider of a SOME/IP service instance (like offering & sending responses, events).

Parameters

deployment_type : Literal[“someip_provider”]

major_versionint

The major version of this service interface. Must be greater than 0 and less than 255.

minor_versionint

The minor version of this service interface. Must be greater than 0 and less than 0xFFFFFFFF.

class SOMEIPServiceConsumer

Bases: SOMEIPServiceDeployment

Defines the consumer of a SOME/IP service instance (like subscribing & calling methods).

Parameters

deployment_type : Literal[“someip_consumer”]

major_versionint

The major version of this service interface. Must be greater than 0 and less or equal 255.

consumed_eventgroups : List[str], optional

class SOMEIPSDDeployment

Bases: FLYNCBaseModel

Defines the Service Discovery endpoint of SOME/IP.

Parameters

deployment_type: Literal[“someip_sd”]

multicastOptional[MulticastSDEndpoint]

Multicast configuration for an SD endpoint.


class Layer4Endpoint

Bases: FLYNCBaseModel

Layer4Endpoint Class method for Layer4 endpoint .

Parameters

protocolLiteral[“UDP”, “TCP”]

Protocol of the Layer4Endpoint. Defaults to UDP.

portint

Layer4 Port. Must be greater than 0 and less or equal to 65535.

class MulticastEndpoint

Bases: BaseUDPDeployment

MulticastEndpoint for UDP Deployments.

Parameters

ip_addressIPvAnyAddress

IP-Address of the Multicast Endpoint.

class MulticastSDEndpoint

Bases: MulticastEndpoint

MulticastSDEndpoint

Parameters

ip_ttlint

IP Time-to-Live. Must be greater or equal to 0 and less or equal to 255.

class SOMEIPServiceDeployment

Bases: ABC, FLYNCBaseModel

SOMEIPServiceDeployment Create a service deployment that will be used for provided service.

Parameters

deployment_type : Literal[“someip”]

serviceint

Identifies the service. Must be greater than 0 and less than 0xFFFF.

major_versionint

The major version of this service interface. Must be greater than 0 and less or equal 255.

instance_id: int

Id of the Service Instance. Must be greater than 0 and less than 0xFFFF.

someip_sd_timings_profile: str

The SOME/IP timings profile_id used for the deployment.

class BaseUDPDeployment

Bases: Layer4Endpoint

Base class for deploying a SOME/IP service onto a UDP-endpoint.

class UDPDeployment

Bases: BaseUDPDeployment

Allows deploying a SOME/IP service onto a UDP-endpoint (including multicast).

Parameters

multicastMulticastEndpoint, optional

Multicast configuration for this endpoint.

class TCPDeployment

Bases: Layer4Endpoint

Base class for deploying a SOME/IP service onto a TCP-endpoint

SOME/IP Datatypes

Note

SOME/IP Datatypes are used to describe the parameters of messages that are transported in the payload.

class PrimitiveDatatype

Bases: Datatype

Base class for primitive datatypes such as integers, floating-point values, or booleans.

Parameters

namestr

Unique name of the datatype.

descriptionstr, optional

Human-readable description of the datatype.

typestr

Discriminator identifying the concrete primitive datatype kind.

endiannessLiteral[“BE”, “LE”], optional

Byte order used for encoding multi-byte values. Defaults to big-endian (“BE”).

bit_sizeint

Size in bits of the primitive datatype.

class ComplexDatatype

Bases: Datatype

Base class for complex datatypes such as structures, arrays, or unions.

Parameters

namestr

Unique name of the datatype.

descriptionstr, optional

Human-readable description of the datatype.

typestr

Discriminator identifying the concrete complex datatype kind.

endiannessLiteral[“BE”, “LE”], optional

Byte order used for encoding multi-byte values. Defaults to big-endian (“BE”).

class BaseInt

Bases: PrimitiveDatatype

Base class for all integer primitive datatypes.

This class provides shared semantics for signed and unsigned integer representations and defines common descriptive metadata.

class BaseFloat

Bases: PrimitiveDatatype

Base class for all floating-point primitive datatypes.

This class provides shared semantics for floating-point representations and defines common descriptive metadata.

class Typedef

Bases: ComplexDatatype

Alias datatype that references another datatype definition.

A typedef introduces an alternative name for an existing datatype without changing its underlying structure or serialization behavior.

Parameters

namestr

Name of Typedef.

typeLiteral[“typedef”]

Discriminator used to identify this datatype.

namestr

Name of the typedef reference.

datatyperefAllTypes

Referenced datatype definition that this typedef aliases.


class ArrayType

Bases: ComplexDatatype

Generic multidimensional array type.

Parameters

namestr

Name of Array.

typeLiteral[“array”]

Discriminator identifying this datatype as an array.

dimensionsList[ArrayDimension]

Ordered list of array dimensions (outer → inner). Must contain at least one dimension.

element_typeAllTypes

Datatype of the innermost array element. This may itself be a primitive, struct, union, or another array type.

class ArrayDimension

Bases: FLYNCBaseModel

Describes a single array dimension.

Parameters

kindLiteral[“fixed”, “dynamic”]

Specifies whether the dimension has a fixed size or a dynamically encoded length.

lengthint, optional

Number of elements for a fixed-length dimension. Must be greater than 0. Only valid when kind="fixed".

length_of_length_fieldLiteral[0, 8, 16, 32], optional

Size in bits of the length field that precedes the array data for a dynamic dimension. Only valid when kind="dynamic".

upper_limitint, optional

Upper bound on the number of elements. Must be greater than 0.

lower_limitint, optional

Lower bound on the number of elements. Must be greater than or equal to 0.

bit_alignmentLiteral[8, 16, 32, 64, 128, 256], optional

Optional padding alignment in bits applied after this dimension.


class BitfieldEntryValue

Bases: BaseModel

Represents a named value within a bitfield entry.

Parameters

valueint

Numeric value represented by this bitfield entry value.

namestr

Symbolic name associated with the value.

descriptionstr, optional

Human-readable description of the value.

class BitfieldEntry

Bases: BaseModel

Describes a single field within a bitfield.

Parameters

namestr

Name of the individual bitfield.

bitpositionint

Bit position of the individual bitfield within the enclosing bitfield datatype.

descriptionstr, optional

Human-readable description of the field.

valueslist of BitfieldEntryValue, optional

Optional enumeration of named values defined for this bitfield entry.

class Bitfield

Bases: Datatype

Allows modeling of SOME/IP bitfields.

Parameters

namestr

Unique name of the datatype.

descriptionstr, optional

Human-readable description of the datatype.

typeLiteral[“bitfield”]

Discriminator identifying this datatype as a bitfield.

endiannessLiteral[“BE”, “LE”], optional

Byte order used for encoding multi-byte values. Defaults to big-endian (“BE”).

lengthLiteral[8, 16, 32, 64], optional

Size of the bitfield in bits.

fieldslist of BitfieldEntry

List of bitfield entries that define the individual bit ranges.


class EnumEntry

Bases: BaseModel

Represents a single entry in an enumeration.

Parameters

valueint

Numeric value associated with the enumeration entry.

namestr

Symbolic name of the enumeration entry.

descriptionstr, optional

Human-readable description of the enumeration entry.

class Enum

Bases: Datatype

Allows modeling SOME/IP enumerations with value, name, and description.

Parameters

namestr

Unique name of the datatype.

descriptionstr, optional

Human-readable description of the datatype.

typeLiteral[“enum”]

Datatype discriminator identifying this datatype as an enumeration.

endiannessLiteral[“BE”, “LE”], optional

Byte order used for encoding multi-byte values. Defaults to big-endian (“BE”).

base_typeInts, optional

Underlying integer datatype used to encode enumeration values. Defaults to UInt8.

entrieslist of EnumEntry, optional

List of enumeration entries defining the mapping between numeric values and symbolic names.


class Boolean

Bases: PrimitiveDatatype

Boolean primitive datatype.

Parameters

namestr

Datatype name. Defaults to "BOOLEAN".

typeLiteral[“boolean”]

Discriminator identifying the primitive boolean datatype.

signedLiteral[False]

Indicates that the boolean is unsigned.

endiannessLiteral[“BE”]

Byte order used for encoding. Big-Endian (“BE”).

bit_sizeint

Storage size in bits: 8.


class UInt8

Bases: BaseInt

Unsigned 8-bit integer datatype.

Parameters

namestr

Datatype name. Defaults to "UINT8".

typeLiteral[“uint8”]

Discriminator identifying this datatype.

signedLiteral[False]

Indicates that the integer is unsigned.

endiannessLiteral[“BE”]

Byte order used for encoding. Big-Endian (“BE”).

bit_sizeint

Storage size in bits: 8.

class UInt16

Bases: BaseInt

Unsigned 16-bit integer datatype.

Parameters

namestr

Datatype name. Defaults to "UINT16".

typeLiteral[“uint16”]

Discriminator identifying this datatype.

signedLiteral[False]

Indicates that the integer is unsigned.

endiannessLiteral[“BE”, “LE”], optional

Byte order used for encoding multi-byte values. Defaults to big-endian (“BE”).

bit_sizeint

Storage size in bits: 16.

class UInt32

Bases: BaseInt

Unsigned 32-bit integer datatype.

Parameters

namestr

Datatype name. Defaults to "UINT32".

typeLiteral[“uint32”]

Discriminator identifying this datatype.

signedLiteral[False]

Indicates that the integer is unsigned.

endiannessLiteral[“BE”, “LE”], optional

Byte order used for encoding multi-byte values. Defaults to big-endian (“BE”).

bit_sizeint

Storage size in bits: 32.

class UInt64

Bases: BaseInt

Unsigned 64-bit integer datatype.

Parameters

namestr

Datatype name. Defaults to "UINT64".

typeLiteral[“uint64”]

Discriminator identifying this datatype.

signedLiteral[False]

Indicates that the integer is unsigned.

endiannessLiteral[“BE”, “LE”], optional

Byte order used for encoding multi-byte values. Defaults to big-endian (“BE”).

bit_sizeint

Storage size in bits: 64.



class Float32

Bases: PrimitiveDatatype

32-bit floating-point datatype.

Parameters

namestr

Datatype name. Defaults to "FLOAT32".

typeLiteral[“float32”]

Discriminator identifying this datatype.

signedLiteral[True]

Indicates that the float is signed.

endiannessLiteral[“BE”, “LE”], optional

Byte order used for encoding multi-byte values. Defaults to big-endian (“BE”).

bit_sizeint

Storage size in bits: 32.

class Float64

Bases: BaseFloat

64-bit floating-point datatype.

Parameters

namestr

Datatype name. Defaults to "FLOAT64".

typeLiteral[“float64”]

Discriminator identifying this datatype.

signedLiteral[True]

Indicates that the float is signed.

endiannessLiteral[“BE”, “LE”], optional

Byte order used for encoding multi-byte values. Defaults to big-endian (“BE”).

bit_sizeint

Storage size in bits: 64.


class BaseString

Bases: Datatype

Base class for all string datatypes.

Parameters

typestr

Discriminator identifying the concrete string type.

encodingLiteral[“UTF-8”, “UTF-16BE”, “UTF-16LE”]

Character encoding used for the string payload.

class FixedLengthString

Bases: BaseString

Fixed-length string datatype.

This string occupies a fixed number of bytes on the wire. If the actual content is shorter than the configured length, it is padded with zero bytes.

Parameters

namestr

Name of the String.

typeLiteral[“fixed_length_string”]

Discriminator used to identify this datatype.

lengthint

Total length of the string in bytes, including zero-termination and any padding.

length_of_length_fieldLiteral[0, 8, 16, 32]

Size of the optional length field in bits. A value of 0 indicates that no length field is present.

class DynamicLengthString

Bases: BaseString

Dynamic-length string datatype.

The encoded representation starts with a length field, followed by the string content and a zero-termination character.

Parameters

namestr

Name of the String.

typeLiteral[“dynamic_length_string”]

Discriminator used to identify this datatype.

length_of_length_fieldLiteral[8, 16, 32]

Size of the length field in bits that precedes the string data.

bit_alignmentLiteral[8, 16, 32, 64, 128, 256]

Optional padding alignment applied after the string so that the next parameter starts at the specified bit boundary.


class Struct

Bases: ComplexDatatype

Structured datatype composed of multiple ordered members.

A struct groups several datatypes into a single composite element that is serialized in the order the members are defined.

Parameters

typeLiteral[“struct”]

Discriminator used to identify this datatype.

membersList[AllTypes]

Ordered list of datatypes that form the members of the struct.

bit_alignmentLiteral[8, 16, 32, 64, 128, 256]

Optional padding alignment applied after the struct to ensure the next parameter starts at the specified bit boundary.

length_of_length_fieldLiteral[0, 8, 16, 32]

Size of the optional length field in bits that prefixes the struct. A value of 0 indicates that no length field is present.


class UnionMember

Bases: Datatype

Represents a single member entry of an union datatype.

Each union member defines a possible datatype that may be present, together with its selector index and a descriptive name.

Parameters

typeAllTypes

Member datatype (discriminated by its type field).

indexint

Index of the union member. This value is used in the serialized union to indicate which member is currently active. Must be greater than or equal to 0.

namestr

Name of the union member.

class Union

Bases: Datatype

Represents an union datatype.

A union allows exactly one of several possible member datatypes to be encoded at runtime. The active member is identified using a type selector field.

Parameters

namestr

Name of the Union.

typeLiteral[“union”]

Discriminator used to identify this datatype.

memberslist of UnionMember

List of the allowed datatypes a union can contain.

bit_alignmentLiteral[8, 16, 32, 64, 128, 256], optional

Defines the optional alignment padding that can be added after the union to fix the alignment of the next parameter to 8, 16, 32, 64, 128 or 256 bits.

length_of_length_fieldLiteral[0, 8, 16, 32], optional

Defines the length of the length-field in bits for the union.

length_of_type_fieldLiteral[0, 8, 16, 32], optional

Defines the length of the type-selector field in bits for the union.


someip_datatypes.AllTypes

alias of Annotated[Annotated[Annotated[Int8 | Int16 | Int32 | Int64, FieldInfo(annotation=NoneType, required=True, discriminator=’type’)] | Annotated[UInt8 | UInt16 | UInt32 | UInt64, FieldInfo(annotation=NoneType, required=True, discriminator=’type’)], FieldInfo(annotation=NoneType, required=True, discriminator=’type’)] | Annotated[Float32 | Float64, FieldInfo(annotation=NoneType, required=True, discriminator=’type’)] | Enum | Boolean | Struct | Union | ArrayType | DynamicLengthString | FixedLengthString | Bitfield, FieldInfo(annotation=NoneType, required=True, discriminator=’type’)]