ClientServerInterface

XML tag

<CLIENT-SERVER-INTERFACE>

Module

autosar.portinterface

Inherits

autosar.portinterface.PortInteface

Client Server interfaces contains a set of callable operations. Operations are called by one or more client SWCs and are (usually) served by a single server SWC.

Usage

import autosar

... #Create packages and port interfaces

NvM_RequestResultType_ref = "/Predefined_DEV/ImplementationDataTypes/NvM_RequestResultType"
boolean_ref = "/AUTOSAR_Platform/ImplementationDataTypes/boolean"
dtRef_const_VOID_ref = "/AUTOSAR_Platform/ImplementationDataTypes/dtRef_const_VOID"
dtRef_VOID_ref = "/AUTOSAR_Platform/ImplementationDataTypes/dtRef_VOID"

package = ws.find('/PortInterfaces')
portInterface=package.createClientServerInterface("NvM_RequestResultType", operations = [
    "EraseBlock",
    "GetErrorStatus",
    "InvalidateNvBlock",
    "ReadBlock",
    "SetRamBlockStatus",
    "WriteBlock"],
    errors = autosar.ApplicationError("E_NOT_OK", 1), isService=True)

portInterface["EraseBlock"].possibleErrors = "E_NOT_OK"
portInterface["GetErrorStatus"].createOutArgument("ErrorStatus", NvM_RequestResultType_ref, "NOT-ACCESSIBLE", "USE-ARGUMENT-TYPE")
portInterface["GetErrorStatus"].possibleErrors = "E_NOT_OK"
portInterface["InvalidateNvBlock"].possibleErrors = "E_NOT_OK"
portInterface["ReadBlock"].createInArgument("DstPtr", dtRef_VOID_ref, "NOT-ACCESSIBLE", "USE-ARGUMENT-TYPE")
portInterface["ReadBlock"].possibleErrors = "E_NOT_OK"
portInterface["SetRamBlockStatus"].createInArgument("RamBlockStatus", boolean_ref, "NOT-ACCESSIBLE", "USE-ARGUMENT-TYPE")
portInterface["SetRamBlockStatus"].possibleErrors = "E_NOT_OK"
portInterface["WriteBlock"].createInArgument("SrcPtr", dtRef_const_VOID_ref, "NOT-ACCESSIBLE", "USE-ARGUMENT-TYPE")
portInterface["WriteBlock"].possibleErrors = "E_NOT_OK"

Factory Methods

Attributes

For inherited attributes see autosar.portinterface.PortInteface.

Name

Type

Description

operations

list(Operation)

Operations in this interface

applicationErrors

list(ApplicationError)

Application errors in this interface

Public Methods

Method Description

append

ClientServerInterface.append(elem)

Adds element to the self.operations or self.applicationErrors lists depending on type.

参数

elem (Operation or ApplicationError) – Element