class Controller
Package: swiss.avm.up.core.generic.specification.javamodel.Controller
Direct Known Subclasses:
class Controller extends NamedResource, AControllerDescription, AnnotableComment, DatatypeLibraryOwner, RootVariableLibrary, RootVariableName, AOoDomainRoot, ACallingBaseElement, AResourceWithType
The controller is the central element of a UP application. A controller defines the smallest, intrinsically functional unit.
A controller essentially consists of two main elements: * Interface and data * [UP - Statemachine]
In addition, the controller has the definition of relations to [Child] controllers.
A controller can also be described as an instantiable type that is instantiated in the [UP - ControllerTree].
Properties
actions
ControllerActions[0..1]
Each controller has ControllerActions. These can be implemented without independently of the state machine
child
definition of child controller in relation to this controller
AbstractChild[0..N]
childIterator
ChildIterator[0..N]
comment
Describes the intent of this Resource.
TextLiteral[0..1]
A Literal that accepts multiple lines of text.
controllerInterface
interface for this controller
ControllerInterface[1..1]
Definition of public informations of a [Controller].
A Controller interface can implement other interfaces and inherits all its elements.
controllerLogbook
ControllerLogbook[0..N]
The controller logbook contains all elements of a controller to be logged.
datatypeLibrary
DatatypeLibrary[0..N]
description
detailed information about the function of this controller
TextLiteral[0..1]
A Literal that accepts multiple lines of text.
extends
Resource[0..N]
The base class of any Resource in the system.
extends
AOoDomain[0..N]
extends
Controller[0..1]
The controller is the central element of a UP application. A controller defines the smallest, intrinsically functional unit.
A controller essentially consists of two main elements:
Interface and data
[UP - Statemachine]
In addition, the controller has the definition of relations to [Child] controllers.
A controller can also be described as an instantiable type that is instantiated in the [UP - ControllerTree].
functionLibrary
FunctionLibrary[0..N]
globalVariableLibrary
GlobalVariableLibrary[0..N]
interfaceLocal
InterfaceLocal[1..1]
The local interface holds all the private data of a controller.
interfaceSpecific
specific controller data that are reachable for parent controller
InterfaceSpecific[1..1]
locMsgClusterInstance
Local instance of an instantiable cluster.
LocalMessageClusterInstance[0..N]
messageReaction
Functions can be defined which are triggered by reactions.
AbstractMessageReactionFunctions[0..1]
name
The name of this Resource.
StringLiteral[1..1]
overrides
Here objects of extensions can be overwritten.
OverrideableObjects[0..1]
statemachine
definition of statemachine in uml style
AStatemachine[0..1]
textList
ATextListDefinition[0..N]
userObjectLink
UserObjectLink[0..N]
variableLibrary
VariableLibrary[0..N]
Method Summary
accept
@FCodeSnippet
Parameters:
ValidatableTypeVisitorLiteral
Return:
Void
asyncEventImplementationGeneric
@FAsyncEvent
Parameters:
PlatformType
className
@TemplateNameFunctions
FB class name at PLC.
controllerFunctionCallInOutParameter
Parameters:
Build
PlatformType
ControllerTree
controllerVariableNameFieldRef
@VariableName
Parameters:
AFieldRef
MainVariable
controllerVariableNameFieldRef
@FVariableName
Parameters:
AFieldRef
AMainVariable
PlatformType
createIfSpecificHashMapTree
@BrControllerTreeFunctionSpace
Parameters:
Model
BR_Config
ControllerTree
IntegerLiteral
Return:
OpcUaNodeLiteral
createLocal
curDefaultValue
@ControllerFunctionSpace
Return:
List<BaseDefaultValue>
declaration
Parameters:
PlatformType
documentationTable
@PCD_Documentation
generateSingelAnswer
Parameters:
HardwareConfig
Return:
BooleanLiteral
generateStatemachine
Parameters:
HardwareConfig
Return:
BooleanLiteral
getActionFunctions
@FController
init-, alwaysBefore-, alwaysAfter-, notExistBehaviourFunctions
Return:
List<Function>
getActions
@FController
Returns all actions of a controller from the entire inheritance hierarchy.
Return:
List<ControllerActions>
getActionsInverse
@FController
Return:
List<ControllerActions>
getAllBaseDataVariable
@VariableFunctionSpace
Return:
List<BaseDataVariable>
getAllControllerInstanceWrappersByController
@ControllerInstanceWrapperFunctionSpace
Parameters:
BaseControllerTree
Return:
List<ControllerInstanceWrapper>
getAllInstanceableCluster
@MessageFunctions
Return:
List<MessageClusterDefinitionInstanceable>
getAllLimitDefinitions
@FLimitMonitoring
returns all limit definitions of a controller
Parameters:
PlatformType
Config
ModelConfig
Return:
List<DataLimitLiteral>
getAllMainVariable
@VariableFunctionSpace
Return:
List<AMainVariable>
getAllPublicVariables
@VariableFunctionSpace
Return:
List<Variable>
getAllPublishedMessages
@MessageFunctions
Return:
List<MessageDefinition>
getAllVariable
@VariableFunctionSpace
Return:
List<Variable>
getAlwaysAfterFunctions
@FController
Return:
List<Function>
getAlwaysBeforeFunctions
@FController
Return:
List<Function>
getChildIterators
@FChildIterator
Return:
List<ChildIterator>
getChildren
@FController
Returns all child controllers of the entire inheritance hierarchy.
Return:
List<AbstractChild>
getClassTypes
@FAsyncEvent
Return:
List<TextLiteral>
getCommonFunctionResources
@ControllerFunctionSpace
Return:
List<Resource>
getControllerIndex
@ControllerTreeFunctionSpace
Parameters:
ControllerTree
Return:
IntegerLiteral
getControllerInstanceWrapperArraySizeByController
@ControllerInstanceWrapperFunctionSpace
Parameters:
BaseControllerTree
Return:
IntegerLiteral
getControllerInstanceWrapperSizeByController
@ControllerInstanceWrapperFunctionSpace
Parameters:
BaseControllerTree
Return:
IntegerLiteral
getControllerLogbooks
@FController
Return:
List<ControllerLogbook>
getControllerTypeInjection
Parameters:
Model
PlatformType
getDatatypeLibraries
@FDatatypeLibrary
Returns a recursive non-cyclic list of all datatype libraries. Starting from the current controller including the implemented interface.
Return:
List<DatatypeLibrary>
getDigitalInputs
@FController
Return:
List<DigitalInput>
getExecParameter
getExtendableObjects
@FController
Return:
List<Controller>
getFunctionBlocks
@FController
Return:
List<AFunctionBlock>
getFunctionLibraries
@FController
Return:
List<FunctionLibrary>
getFunctions
@FController
returns all functions in a controller
Return:
List<Function>
getGlobalVariableLibraries
@FController
Return:
List<GlobalVariableLibrary>
getIfsSpecificData
@FController
Returns all specific data of controller interface specific. Including inheritance elements.
Return:
List<DataSpecification>
getIfsSpecificInputOutput
@FController
Returns all specific data of controller interface specific. Including inheritance elements.
Return:
List<AInputOutputSpecific>
getInitFunctions
@FController
Return:
List<Function>
getInputOutputSpecifications
@FController
Parameters:
InputOutput
TypePathLiteral
Return:
List<AInputOutputSpecification>
getInputsOutputs_depr
@FController
Use interface.getInputsOutputs directly.
Return:
List<InputOutput>
getInterlockFunctions
@FController
false-, trueFunctions
Return:
List<Function>
getInterlocks
@FController
Return:
List<AbstractInterlock>
getLocMsgClusterDefinitions
@FController
Return:
List<LocalMessageClusterInstance>
getLocalVariables
@FController
Return:
List<LocalVariable>
getMaxHierarchicalStateLevelCount
@FController
returns the maximum depth of hierarchical state levels of this statemachine
Return:
IntegerLiteral
getMaxMsgId
@InterfaceLocalFunctionspace
highest message id
Return:
IntegerLiteral
getMessageDefinitions
@FController
Return:
List<MessageDefinition>
getMessageLastIndex
@MessageFunctions
Return:
IntegerLiteral
getMessageReactionFunctions
@FController
Return:
List<MessageReactionFunctions>
getMessagesInLimitDefinitions
@FLimitMonitoring
returns all messages, wich are defined in a limit definition
-> for local flag
Parameters:
PlatformType
Config
ModelConfig
Return:
List<AbstractMessageDefinition>
getMethods
@FController
Return:
List<AControllerMethod>
getNonRemanentNonReferenceVariables
@InterfaceLocalFunctionspace
Return:
List<LocalVariable>
getNotExistBehavoiurFunctions
@FController
Return:
List<Function>
getOverwrittenObjects
@FController
Return:
List<AOverrideableObject>
getPathDotSeparated
@TemplateFunction
Parameters:
ControllerTree
Return:
StringLiteral
getPathPrefix
getReferenceVariables
getRelativePackage
@TemplateFunction
returns relative package name
Parameters:
ControllerTree
Return:
StringLiteral
getSharedGuards
@FController
Return:
List<GuardImpl>
getSimulationVariables
@FController
Return:
List<Simulation>
getSpecifications
@FController
returns all specifications
including specifications of array objects with empty array indices
Parameters:
AInterfaceData
TypePathLiteral
Return:
List<ASpecification>
getSpecificationsStruct
@FController
returns all specifications
including specifications of struct
Parameters:
AInterfaceData
TypePathLiteral
Return:
List<ASpecification>
getStatefullComponentElement
@AnimationFunctions
Return:
List<Resource>
getStatefullComponentElementMaxId
@AnimationFunctions
Parameters:
BaseControllerTree
Return:
IntegerLiteral
getStatefullComponentElementUnique
@AnimationFunctions
Return:
List<Resource>
getStatefullComponentNumberOfElements
@AnimationFunctions
Return:
IntegerLiteral
getStatefullComponentTransitionMaxId
@AnimationFunctions
Return:
IntegerLiteral
getStatefullComponentTransitionUnique
@AnimationFunctions
Return:
List<Resource>
getStatemachineInitTemplate
@FTemplateFunctions
Parameters:
Model
ControllerTree
PlatformType
Resources
getStatemachineTemplate
@FTemplateFunctions
Parameters:
Model
ControllerTree
ACallingBaseElement
PlatformType
Resources
getStatemachineWrapper
@FController
Return:
StatemachineWrapper
getTransitionFunctionId
@FTemplateFunctions
Parameters:
TransitionWrapper
Return:
IntegerLiteral
getTransitionWrappersWithTransitionFun
@FController
Return:
List<TransitionWrapper>
getTransitions
@FStatemachineSequence
Return:
List<Transition>
getUniqueMessagesInLimitDefinitions
@FLimitMonitoring
returns all unique messages, wich are defined in a limit definition
-> for local flag
Parameters:
PlatformType
Config
ModelConfig
Return:
List<AbstractMessageDefinition>
getUserObjectLinks
@FController
Return:
List<UserObjectLink>
getUserTaskLinkIfaceVarListCs
@ControllerFunctionSpace
getVariableLibrary
@FController
returns all variable libraries from shared functions and controllers
Return:
List<VariableLibrary>
getVariableLibraryUnique
@TemplateFunction
Return:
List<VariableLibrary>
globalVariableNameParamList
@TemplateFunction
returns a comma separated list of all global variable names
ifCtrlClassName
@TemplateNameFunctions
controller interface class name at PLC.
ilkClassName
@TemplateNameFunctions
interlock class name at PLC.
inOut
initCommon
@TemplateFunction
input
inputBridge
@FTemplateFunctions
Parameters:
PlatformType
internal_getDatatypeLibraries
@FDatatypeLibrary
Return:
List<DatatypeLibrary>
internal_getExtendedControllers
@FController
Return:
List<Controller>
internal_getFullInheritance
@FController
Return:
List<Controller>
internal_getFullInheritanceInverse
@FController
Return:
List<Controller>
internal_getMethods
@FController
Return:
List<AControllerMethod>
internal_getRootStatemachine
@FController
Return:
Statemachine
internal_getStateBases
@FController
Return:
List<StateBase>
internal_getStatemachines
@FController
get root statemachine and all its extension statemaschines
Return:
List<Statemachine>
internal_getStatemachinesExtensions
@FController
get all extensions of the current root statemachine
Return:
List<StatemachineExtension>
internal_outputBridge
@FTemplateFunctions
Parameters:
PlatformType
isInSamePackage
@TemplateFunction
Parameters:
StringLiteral
ControllerTree
Return:
BooleanLiteral
isWithControllerTreeInSamePackage
@TemplateFunction
controller and the controller tree are in the same package
Parameters:
ControllerTree
Return:
BooleanLiteral
limitMonitoring
@FLimitMonitoring
Parameters:
PlatformType
Config
maxInstanceNrOfController
@ControllerTreeFunctionSpace
Parameters:
ControllerTree
Return:
IntegerLiteral
maxInstanceNrOfControllerArraySize
@ControllerTreeFunctionSpace
Parameters:
ControllerTree
Return:
IntegerLiteral
maxInstanceNrOfControllerArraySizeNull
@ControllerTreeFunctionSpace
Parameters:
BaseControllerTree
Return:
BooleanLiteral
modeAll
@FTemplateFunctions
Parameters:
PlatformType
Resources
output
Parameters:
PlatformType
outputBridge
@FTemplateFunctions
Parameters:
PlatformType
remanentClassName
@TemplateNameFunctions
remanent struct name at PLC.
resetAll
@FTemplateFunctions
Parameters:
PlatformType
Resources
simulationAll
@FTemplateFunctions
Parameters:
PlatformType
Resources
unusedVariableWorkaround
@FTemplateFunctions
Parameters:
ControllerTree