Skip to main content

selectApplier

  • Return type: BOOL

Parameters

NameTypeCommentKind
applierCNM_CollectionInterfaces.IApplier-input
applierIndexUDINT-inout
nextApplierCNM_CollectionInterfaces.IApplier-inout

Code

Declaration

METHOD PRIVATE selectApplier :BOOL
VAR_INPUT
applier : CNM_CollectionInterfaces.IApplier;
END_VAR
VAR_IN_OUT
applierIndex : UDINT;
nextApplier :CNM_CollectionInterfaces.IApplier;
END_VAR
VAR
chained :CNM_CollectionInterfaces.IChainedApplier;
END_VAR
VAR CONSTANT
NULL : __XWORD := 0;
END_VAR

Implementation

selectApplier := FALSE;
IF (__QUERYINTERFACE(applier, chained) AND_THEN (chained.actions.count > applierIndex)) THEN
nextApplier := chained.actions.getApplier(index := applierIndex);
selectApplier := TRUE;
applierIndex := (applierIndex + 1);
ELSIF (THIS^.isObjectNull(nextApplier)) THEN
nextApplier := applier;
selectApplier := TRUE;
END_IF