API Documentation: autosar_data.abstraction.software_component

software_component

PortInterface module-attribute

PortInterface: TypeAlias = Union[
    SenderReceiverInterface,
    ClientServerInterface,
    ModeSwitchInterface,
    NvDataInterface,
    ParameterInterface,
    TriggerInterface,
]

PortPrototype module-attribute

PortPrototype: TypeAlias = Union[
    PPortPrototype, PRPortPrototype, RPortPrototype
]

RTEEvent module-attribute

RTEEvent: TypeAlias = Union[
    AsynchronousServerCallReturnsEvent,
    BackgroundEvent,
    DataReceiveErrorEvent,
    DataReceivedEvent,
    DataSendCompletedEvent,
    DataWriteCompletedEvent,
    ExternalTriggerOccurredEvent,
    InitEvent,
    InternalTriggerOccurredEvent,
    ModeSwitchedAckEvent,
    OperationInvokedEvent,
    OsTaskExecutionEvent,
    SwcModeManagerErrorEvent,
    SwcModeSwitchEvent,
    TimingEvent,
    TransformerHardErrorEvent,
]

SwComponentType module-attribute

SwComponentType: TypeAlias = Union[
    ApplicationSwComponentType,
    ComplexDeviceDriverSwComponentType,
    CompositionSwComponentType,
    EcuAbstractionSwComponentType,
    SensorActuatorSwComponentType,
    ServiceSwComponentType,
]

ApplicationError

ApplicationError(element: Element)

An ApplicationError represents an error that can be returned by a client server operation

element instance-attribute

element: Element

error_code instance-attribute

error_code: int

the error code of the application error

name instance-attribute

name: str

ApplicationSwComponentType

ApplicationSwComponentType(element: Element)

An ApplicationSwComponentType is a software component that provides application functionality

Use [ArPackage::create_application_sw_component_type] to create a new application sw component type.

element instance-attribute

element: Element

name instance-attribute

name: str

create_p_port

create_p_port(
    name: str, port_interface: PortInterface
) -> PPortPrototype

create a new provided port with the given name and port interface

create_port_group

create_port_group(name: str) -> PortGroup

create a new port group

create_pr_port

create_pr_port(
    name: str, port_interface: PortInterface
) -> PRPortPrototype

create a new provided required port with the given name and port interface

create_r_port

create_r_port(
    name: str, port_interface: PortInterface
) -> RPortPrototype

create a new required port with the given name and port interface

create_swc_internal_behavior

create_swc_internal_behavior(
    name: str,
) -> SwcInternalBehavior

create an SwcInternalBehavior for the component

A component can have only one internal behavior, but since the internal behavior is a variation point, more than one internal behavior can be created. In this case the variation point settings must ensure that only one internal behavior is active.

instances

instances() -> List[SwComponentPrototype]

list all instances of the component type

parent_compositions

parent_compositions() -> List[CompositionSwComponentType]

list all compositions containing instances of the component type

ports

ports() -> Iterator[PortPrototype]

get an iterator over the ports of the component

swc_internal_behaviors

swc_internal_behaviors() -> Iterator[SwcInternalBehavior]

iterate over all swc internal behaviors - typically zero or one

ArgumentDataPrototype

ArgumentDataPrototype(element: Element)

An ArgumentDataPrototype represents an argument in a ClientServerOperation

data_type instance-attribute

data_type: Optional[AutosarDataType]

data type of the argument

direction instance-attribute

direction: Optional[ArgumentDirection]

direction of the argument

element instance-attribute

element: Element

name instance-attribute

name: str

ArgumentDirection

The ArgumentDirection defines the direction of an argument in a ClientServerOperation

Input arguments are used to pass data from the client to the server and are usualy passed by value. Output arguments are used to pass data from the server to the client and are usually passed by reference. In/Out arguments are used to pass data in both directions and are usually passed by reference.

In instance-attribute

In: ArgumentDirection

InOut instance-attribute

InOut: ArgumentDirection

Out instance-attribute

Out: ArgumentDirection

AssemblySwConnector

AssemblySwConnector(element: Element)

An AssemblySwConnector connects ports of two SwCompositionTypes.

element instance-attribute

element: Element

name instance-attribute

name: str

p_port instance-attribute

p_port: Optional[PortPrototype]

get the provided port of the assembly connector

p_sw_component instance-attribute

p_sw_component: Optional[SwComponentPrototype]

get the software component that contains the provided port of the assembly connector

r_port instance-attribute

r_port: Optional[PortPrototype]

get the required port of the assembly connector

r_sw_component instance-attribute

r_sw_component: Optional[SwComponentPrototype]

get the software component that contains the required port of the assembly connector

AsynchronousServerCallReturnsEvent

AsynchronousServerCallReturnsEvent(element: Element)

an asynchronous server call completed

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

BackgroundEvent

BackgroundEvent(element: Element)

starts a runnable for background processing at low priority

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

ClientServerInterface

ClientServerInterface(element: Element)

A ClientServerInterface defines a set of operations that can be implemented by a server and called by a client

Use [ArPackage::create_client_server_interface] to create a new client server interface

element instance-attribute

element: Element

name instance-attribute

name: str

create_operation

create_operation(name: str) -> ClientServerOperation

add an operation to the client server interface

create_possible_error

create_possible_error(
    name: str, error_code: int
) -> ApplicationError

Create a new ClientServerInterface Add a possible error to the client server interface

operations

operations() -> Iterator[ClientServerOperation]

iterate over all operations

possible_errors

possible_errors() -> Iterator[ApplicationError]

iterate over all application errors

ClientServerOperation

ClientServerOperation(element: Element)

A ClientServerOperation defines an operation in a ClientServerInterface

element instance-attribute

element: Element

name instance-attribute

name: str

add_possible_error

add_possible_error(error: ApplicationError) -> None

add a reference to possible error to the operation

arguments

arguments() -> Iterator[ArgumentDataPrototype]

iterate over all arguments

create_argument

create_argument(
    name: str,
    data_type: AutosarDataType,
    direction: ArgumentDirection,
) -> ArgumentDataPrototype

Create a new ClientServerOperation Add an argument to the operation

possible_errors

possible_errors() -> Iterator[ApplicationError]

Get the possible errors of the operation

ComplexDeviceDriverSwComponentType

ComplexDeviceDriverSwComponentType(element: Element)

A ComplexDeviceDriverSwComponentType is a software component that provides complex device driver functionality

Use [ArPackage::create_complex_device_driver_sw_component_type] to create a new complex device driver sw component type.

element instance-attribute

element: Element

name instance-attribute

name: str

create_p_port

create_p_port(
    name: str, port_interface: PortInterface
) -> PPortPrototype

create a new provided port with the given name and port interface

create_port_group

create_port_group(name: str) -> PortGroup

create a new port group

create_pr_port

create_pr_port(
    name: str, port_interface: PortInterface
) -> PRPortPrototype

create a new provided required port with the given name and port interface

create_r_port

create_r_port(
    name: str, port_interface: PortInterface
) -> RPortPrototype

create a new required port with the given name and port interface

create_swc_internal_behavior

create_swc_internal_behavior(
    name: str,
) -> SwcInternalBehavior

create an SwcInternalBehavior for the component

A component can have only one internal behavior, but since the internal behavior is a variation point, more than one internal behavior can be created. In this case the variation point settings must ensure that only one internal behavior is active.

instances

instances() -> List[SwComponentPrototype]

list of all instances of the component type

parent_compositions

parent_compositions() -> List[CompositionSwComponentType]

list all compositions containing instances of the component type

ports

ports() -> Iterator[PortPrototype]

get an iterator over the ports of the component

swc_internal_behaviors

swc_internal_behaviors() -> Iterator[SwcInternalBehavior]

iterate over all swc internal behaviors - typically zero or one

CompositionSwComponentType

CompositionSwComponentType(element: Element)

A CompositionSwComponentType is a software component that contains other software components

Use [ArPackage::create_composition_sw_component_type] to create a new composition sw component type.

element instance-attribute

element: Element

name instance-attribute

name: str

components

components() -> Iterator[SwComponentPrototype]

get an iterator over the components of the composition

connectors

connectors() -> Iterator[AssemblySwConnector]

iterate over all connectors

create_assembly_connector

create_assembly_connector(
    name: str,
    port_1: PortPrototype,
    sw_prototype_1: SwComponentPrototype,
    port_2: PortPrototype,
    sw_prototype_2: SwComponentPrototype,
) -> AssemblySwConnector

create a new delegation connector between an inner port and an outer port this is the actual implementation of the public method, but without the generic parameters create a new assembly connector between two ports of contained software components

The two ports must be compatible.

create_component

create_component(
    name: str, component_type: SwComponentType
) -> SwComponentPrototype

create a component of type component_type in the composition

It is not allowed to form cycles in the composition hierarchy, and this will return an error

create_delegation_connector

create_delegation_connector(
    name: str,
    inner_port: PortPrototype,
    inner_sw_prototype: SwComponentPrototype,
    outer_port: PortPrototype,
) -> DelegationSwConnector

create a new delegation connector between an inner port and an outer port

The two ports must be compatible.

create_p_port

create_p_port(
    name: str, port_interface: PortInterface
) -> PPortPrototype

create a new provided port with the given name and port interface

create_pass_through_connector

create_pass_through_connector(
    name: str, port_1: PortPrototype, port_2: PortPrototype
) -> PassThroughSwConnector

create a new passthrough connector between two outer ports of the composition

The two ports must be compatible.

create_port_group

create_port_group(name: str) -> PortGroup

create a new port group

create_pr_port

create_pr_port(
    name: str, port_interface: PortInterface
) -> PRPortPrototype

create a new provided required port with the given name and port interface

create_r_port

create_r_port(
    name: str, port_interface: PortInterface
) -> RPortPrototype

create a new required port with the given name and port interface

instances

instances() -> List[SwComponentPrototype]

list of all instances of the component type

is_parent_of

is_parent_of(other: SwComponentType) -> bool

check if the composition is a parent (or grand-parent, etc.) of the component

parent_compositions

parent_compositions() -> Iterator[
    CompositionSwComponentType
]

iterator over all compositions containing instances of the component type

ports

ports() -> Iterator[PortPrototype]

get an iterator over the ports of the component

DataReceiveErrorEvent

DataReceiveErrorEvent(element: Element)

A DataReceiveErrorEvent is a subclass of RTEEvent which triggers a RunnableEntity when a data receive error occurs

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

DataReceivedEvent

DataReceivedEvent(element: Element)

A DataReceivedEvent is a subclass of RTEEvent which triggers a RunnableEntity when data is received

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

DataSendCompletedEvent

DataSendCompletedEvent(element: Element)

A DataSendCompletedEvent is a subclass of RTEEvent which triggers a RunnableEntity when data is sent

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

DataWriteCompletedEvent

DataWriteCompletedEvent(element: Element)

A DataWriteCompletedEvent is a subclass of RTEEvent which triggers a RunnableEntity when data is written

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

DelegationSwConnector

DelegationSwConnector(element: Element)

A DelegationSwConnector connects a port of a software component that is contained inside a SwCompositionType with a port of the SwCompositionType.

element instance-attribute

element: Element

inner_port instance-attribute

inner_port: Optional[PortPrototype]

get the inner port of the delegation connector

inner_sw_component instance-attribute

inner_sw_component: Optional[SwComponentPrototype]

get the software component that contains the inner port of the delegation connector

name instance-attribute

name: str

outer_port instance-attribute

outer_port: Optional[PortPrototype]

get the outer port of the delegation connector

EcuAbstractionSwComponentType

EcuAbstractionSwComponentType(element: Element)

The EcuAbstractionSwComponentType is a special AtomicSwComponentType that resides between a software-component that wants to access ECU periphery and the Microcontroller Abstraction

Use [ArPackage::create_ecu_abstraction_sw_component_type] to create a new ECU abstraction sw component type.

element instance-attribute

element: Element

name instance-attribute

name: str

create_p_port

create_p_port(
    name: str, port_interface: PortInterface
) -> PPortPrototype

create a new provided port with the given name and port interface

create_port_group

create_port_group(name: str) -> PortGroup

create a new port group

create_pr_port

create_pr_port(
    name: str, port_interface: PortInterface
) -> PRPortPrototype

create a new provided required port with the given name and port interface

create_r_port

create_r_port(
    name: str, port_interface: PortInterface
) -> RPortPrototype

create a new required port with the given name and port interface

create_swc_internal_behavior

create_swc_internal_behavior(
    name: str,
) -> SwcInternalBehavior

create an SwcInternalBehavior for the component

A component can have only one internal behavior, but since the internal behavior is a variation point, more than one internal behavior can be created. In this case the variation point settings must ensure that only one internal behavior is active.

instances

instances() -> List[SwComponentPrototype]

list all instances of the component type

parent_compositions

parent_compositions() -> List[CompositionSwComponentType]

list all compositions containing instances of the component type

ports

ports() -> Iterator[PortPrototype]

get an iterator over the ports of the component

swc_internal_behaviors

swc_internal_behaviors() -> Iterator[SwcInternalBehavior]

iterate over all swc internal behaviors - typically zero or one

ExternalTriggerOccurredEvent

ExternalTriggerOccurredEvent(element: Element)

A ExternalTriggerOccurredEvent is a subclass of RTEEvent which triggers a RunnableEntity when an external trigger occurs

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

InitEvent

InitEvent(element: Element)

A InitEvent is a subclass of RTEEvent which triggers a RunnableEntity when the software component is initialized

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

InternalTriggerOccurredEvent

InternalTriggerOccurredEvent(element: Element)

A InternalTriggerOccurredEvent is a subclass of RTEEvent which triggers a RunnableEntity when an internal trigger occurs

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

ModeSwitchInterface

ModeSwitchInterface(element: Element)

A ModeSwitchInterface defines a set of modes that can be switched

Use [ArPackage::create_mode_switch_interface] to create a new mode switch interface

element instance-attribute

element: Element

name instance-attribute

name: str

ModeSwitchedAckEvent

ModeSwitchedAckEvent(element: Element)

A ModeSwitchedAckEvent is a subclass of RTEEvent which triggers a RunnableEntity when a mode switch is acknowledged

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

NvDataInterface

NvDataInterface(element: Element)

An NvDataInterface defines non-volatile data that can be accessed through the interface

Use [ArPackage::create_nv_data_interface] to create a new non-volatile data interface

element instance-attribute

element: Element

name instance-attribute

name: str

OperationInvokedEvent

OperationInvokedEvent(element: Element)

A OperationInvokedEvent is a subclass of RTEEvent which triggers a RunnableEntity when an operation is invoked

client_server_operation instance-attribute

client_server_operation: Tuple[
    ClientServerOperation, PPortPrototype
]

Get the ClientServerOperation that triggers the OperationInvokedEvent

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the OperationInvokedEvent

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

SwcInternalBehavior that contains the event

set_client_server_operation

set_client_server_operation(
    client_server_operation: ClientServerOperation,
    context_p_port: PPortPrototype,
) -> None

Set the ClientServerOperation that is triggers the OperationInvokedEvent

OsTaskExecutionEvent

OsTaskExecutionEvent(element: Element)

A OsTaskExecutionEvent is a subclass of RTEEvent which triggers a RunnableEntity when an OS task is executed

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

PPortPrototype

PPortPrototype(element: Element)

PPortPrototype represents a provided port prototype

component_type instance-attribute

component_type: Optional[SwComponentType]

component type containing the port prototype

element instance-attribute

element: Element

name instance-attribute

name: str

port_interface instance-attribute

port_interface: Optional[PortInterface]

port interface of the port prototype

PRPortPrototype

PRPortPrototype(element: Element)

PRPortPrototype represents a provided and required port prototype

component_type instance-attribute

component_type: Optional[SwComponentType]

component type containing the port prototype

element instance-attribute

element: Element

name instance-attribute

name: str

port_interface instance-attribute

port_interface: Optional[PortInterface]

port interface of the port prototype

ParameterInterface

ParameterInterface(element: Element)

A ParameterInterface defines a set of parameters that can be accessed

Use [ArPackage::create_parameter_interface] to create a new parameter interface

element instance-attribute

element: Element

name instance-attribute

name: str

PassThroughSwConnector

PassThroughSwConnector(element: Element)

A PassThroughSwConnector connects two ports of a SwCompositionType.

element instance-attribute

element: Element

name instance-attribute

name: str

p_port instance-attribute

p_port: Optional[PortPrototype]

get the provided port of the pass-through connector

r_port instance-attribute

r_port: Optional[PortPrototype]

get the required port of the pass-through connector

PortGroup

PortGroup(element: Element)

PortGroup represents a group of ports

element instance-attribute

element: Element

name instance-attribute

name: str

RPortPrototype

RPortPrototype(element: Element)

RPortPrototype represents a required port prototype

component_type instance-attribute

component_type: Optional[SwComponentType]

component type containing the port prototype

element instance-attribute

element: Element

name instance-attribute

name: str

port_interface instance-attribute

port_interface: Optional[PortInterface]

port interface of the port prototype

RootSwCompositionPrototype

RootSwCompositionPrototype(element: Element)

The RootSwCompositionPrototype is a special kind of SwComponentPrototype that represents the root of the composition hierarchy

composition instance-attribute

composition: Optional[CompositionSwComponentType]

composition that this root component is based on

element instance-attribute

element: Element

name instance-attribute

name: str

RunnableEntity

RunnableEntity(element: Element)

A RunnableEntity is a function that can be executed by the RTE

element instance-attribute

element: Element

name instance-attribute

name: str

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

SwcInternalBehavior that contains the RunnableEntity

events

events() -> List[RTEEvent]

Iterate over all events that can trigger the RunnableEntity

SenderReceiverInterface

SenderReceiverInterface(element: Element)

A SenderReceiverInterface defines a set of data elements that can be sent and received

Use [ArPackage::create_sender_receiver_interface] to create a new sender receiver interface

element instance-attribute

element: Element

name instance-attribute

name: str

create_data_element

create_data_element(
    name: str, data_type: AutosarDataType
) -> VariableDataPrototype

Add a new data element to the sender receiver interface

data_elements

data_elements() -> Iterator[VariableDataPrototype]

iterate over all data elements

SensorActuatorSwComponentType

SensorActuatorSwComponentType(element: Element)

SensorActuatorSwComponentType is used to connect sensor/acutator devices to the ECU configuration

Use [ArPackage::create_sensor_actuator_sw_component_type] to create a new sensor/actuator sw component type.

element instance-attribute

element: Element

name instance-attribute

name: str

create_p_port

create_p_port(
    name: str, port_interface: PortInterface
) -> PPortPrototype

create a new provided port with the given name and port interface

create_port_group

create_port_group(name: str) -> PortGroup

create a new port group

create_pr_port

create_pr_port(
    name: str, port_interface: PortInterface
) -> PRPortPrototype

create a new provided required port with the given name and port interface

create_r_port

create_r_port(
    name: str, port_interface: PortInterface
) -> RPortPrototype

create a new required port with the given name and port interface

create_swc_internal_behavior

create_swc_internal_behavior(
    name: str,
) -> SwcInternalBehavior

create an SwcInternalBehavior for the component

A component can have only one internal behavior, but since the internal behavior is a variation point, more than one internal behavior can be created. In this case the variation point settings must ensure that only one internal behavior is active.

instances

instances() -> List[SwComponentPrototype]

list all instances of the component type

parent_compositions

parent_compositions() -> List[CompositionSwComponentType]

list all compositions containing instances of the component type

ports

ports() -> Iterator[PortPrototype]

get an iterator over the ports of the component

swc_internal_behaviors

swc_internal_behaviors() -> Iterator[SwcInternalBehavior]

iterate over all swc internal behaviors - typically zero or one

ServiceSwComponentType

ServiceSwComponentType(element: Element)

ServiceSwComponentType is used for configuring services for a given ECU. Instances of this class should only be created in ECU Configuration phase for the specific purpose of the service configuration.

Use [ArPackage::create_service_sw_component_type] to create a new service sw component type.

element instance-attribute

element: Element

name instance-attribute

name: str

create_p_port

create_p_port(
    name: str, port_interface: PortInterface
) -> PPortPrototype

create a new provided port with the given name and port interface

create_port_group

create_port_group(name: str) -> PortGroup

create a new port group

create_pr_port

create_pr_port(
    name: str, port_interface: PortInterface
) -> PRPortPrototype

create a new provided required port with the given name and port interface

create_r_port

create_r_port(
    name: str, port_interface: PortInterface
) -> RPortPrototype

create a new required port with the given name and port interface

create_swc_internal_behavior

create_swc_internal_behavior(
    name: str,
) -> SwcInternalBehavior

create an SwcInternalBehavior for the component

A component can have only one internal behavior, but since the internal behavior is a variation point, more than one internal behavior can be created. In this case the variation point settings must ensure that only one internal behavior is active.

instances

instances() -> List[SwComponentPrototype]

list all instances of the component type

parent_compositions

parent_compositions() -> List[CompositionSwComponentType]

list all compositions containing instances of the component type

ports

ports() -> Iterator[PortPrototype]

get an iterator over the ports of the component

swc_internal_behaviors

swc_internal_behaviors() -> Iterator[SwcInternalBehavior]

iterate over all swc internal behaviors - typically zero or one

SwComponentPrototype

SwComponentPrototype(element: Element)

A SwComponentPrototype is an instance of a software component type

element instance-attribute

element: Element

name instance-attribute

name: str

SwcInternalBehavior

SwcInternalBehavior(element: Element)

The SwcInternalBehavior of a software component type describes the details that are needed to generate the RTE.

element instance-attribute

element: Element

name instance-attribute

name: str

sw_component_type instance-attribute

sw_component_type: Optional[SwComponentType]

software component type that contains the SwcInternalBehavior

add_data_type_mapping_set

add_data_type_mapping_set(
    data_type_mapping_set: DataTypeMappingSet,
) -> None

Add a reference to a DataTypeMappingSet to the SwcInternalBehavior

create_background_event

create_background_event(
    name: str, runnable: RunnableEntity
) -> BackgroundEvent

Create a new BackgroundEvent in the SwcInternalBehavior that triggers a runnable at low priority

create_init_event

create_init_event(
    name: str, runnable: RunnableEntity
) -> InitEvent

Create a new InitEvent in the SwcInternalBehavior

create_operation_invoked_event

create_operation_invoked_event(
    name: str,
    runnable: RunnableEntity,
    client_server_operation: ClientServerOperation,
    context_p_port: PPortPrototype,
) -> OperationInvokedEvent

Create a new OperationInvokedEvent in the SwcInternalBehavior

create_os_task_execution_event

create_os_task_execution_event(
    name: str, runnable: RunnableEntity
) -> OsTaskExecutionEvent

Create a new OsTaskExecutionEvent in the SwcInternalBehavior that triggers a runnable when an OS task is executed

create_runnable_entity

create_runnable_entity(name: str) -> RunnableEntity

Create a new RunnableEntity in the SwcInternalBehavior

create_timing_event

create_timing_event(
    name: str, runnable: RunnableEntity, period: float
) -> TimingEvent

Create a timing event that triggers a runnable in the SwcInternalBehavior

data_type_mapping_sets

data_type_mapping_sets() -> Iterator[DataTypeMappingSet]

iterator over all DataTypeMappingSet references in the SwcInternalBehavior

events

events() -> Iterator[RTEEvent]

create an iterator over all events in the SwcInternalBehavior

runnable_entities

runnable_entities() -> Iterator[RunnableEntity]

Get an iterator over all RunnableEntities in the SwcInternalBehavior

SwcModeManagerErrorEvent

SwcModeManagerErrorEvent(element: Element)

A SwcModeManagerErrorEvent is a subclass of RTEEvent which triggers a RunnableEntity when a mode manager error occurs

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

SwcModeSwitchEvent

SwcModeSwitchEvent(element: Element)

A SwcModeSwitchEvent is a subclass of RTEEvent which triggers a RunnableEntity when a mode switch occurs

element instance-attribute

element: Element

name instance-attribute

name: str

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

TimingEvent

TimingEvent(element: Element)

A TimingEvent is a subclass of RTEEvent which triggers a RunnableEntity periodically

element instance-attribute

element: Element

name instance-attribute

name: str

period instance-attribute

period: Optional[float]

period of the TimingEvent

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

TransformerHardErrorEvent

TransformerHardErrorEvent(element: Element)

A TransformerHardErrorEvent is a subclass of RTEEvent which triggers a RunnableEntity when a transformer hard error occurs

element instance-attribute

element: Element

element of the TransformerHardErrorEvent

name instance-attribute

name: str

name of the TransformerHardErrorEvent

runnable_entity instance-attribute

runnable_entity: Optional[RunnableEntity]

RunnableEntity that is triggered by the AsynchronousServerCallCompleted

swc_internal_behavior instance-attribute

swc_internal_behavior: Optional[SwcInternalBehavior]

Get the SwcInternalBehavior that contains the event

TriggerInterface

TriggerInterface(element: Element)

A TriggerInterface declares a number of triggers that can be sent by an trigger source

Use [ArPackage::create_trigger_interface] to create a new trigger interface

element instance-attribute

element: Element

name instance-attribute

name: str

VariableDataPrototype

VariableDataPrototype(element: Element)

A VariableDataPrototype represents a data element in a SenderReceiverInterface

data_type instance-attribute

data_type: Optional[AutosarDataType]

data type of the data element

element instance-attribute

element: Element

interface instance-attribute

interface: Optional[SenderReceiverInterface]

Get the interface containing the data element

name instance-attribute

name: str