@Execute
The method that is tagged with the @Execute annotation provides the implementation logic of the component. In
this method the component Input is being transformed to output. The execution method can have any name, it has
to be non-static, public, void return type, no arguments.
This is required meta data for a component.
Synopsis
@Execute
Type
Execution Annotation
Scope
Method
Example
The following example demonstrates the use of the @Execute annotation prefacing the Plant component method (subroutine).
! @Description("CSMLite Plant Component")
...
! @Execute
SUBROUTINE Plant
USE, INTRINSIC :: ISO_C_BINDING
IMPLICIT NONE
! @Description("Daily maximum temperature in degrees Centigrade")
! @In
REAL(C_FLOAT) :: TMAX
! @Description("Day of Year")
! @In
INTEGER(C_INT) :: DOY
! @Description("Dynamic Control Variable")
! @In
CHARACTER(kind = C_CHAR, len = 5) : DYN
...
! @Description("Leaf Area Index")
! @Out
REAL(C_FLOAT) :: LAI
...