The following subroutines have to be used in order to instantiate SIC variables in the structure R%USER%.
subroutine class_user_setvar(usersetvar) external :: usersetvar
subroutine class_user_def_inte(suffix,ndim,dims,error) character(len=*), intent(in) :: suffix ! Component name integer(kind=4), intent(in) :: ndim ! Number of dimensions (0=scalar) integer(kind=4), intent(in) :: dims(4) ! Dimensions (unused if scalar) logical, intent(inout) :: error ! Logical error flag
subroutine class_user_def_real(suffix,ndim,dims,error) character(len=*), intent(in) :: suffix ! Component name integer(kind=4), intent(in) :: ndim ! Number of dimensions (0=scalar) integer(kind=4), intent(in) :: dims(4) ! Dimensions (unused if scalar) logical, intent(inout) :: error ! Logical error flag
subroutine class_user_def_dble(suffix,ndim,dims,error) character(len=*), intent(in) :: suffix ! Component name integer(kind=4), intent(in) :: ndim ! Number of dimensions (0=scalar) integer(kind=4), intent(in) :: dims(4) ! Dimensions (unused if scalar) logical, intent(inout) :: error ! Logical error flag
subroutine class_user_def_char(suffix,lstring,error) character(len=*), intent(in) :: suffix ! Component name integer(kind=4), intent(in) :: lstring ! String length logical, intent(inout) :: error ! Logical error flag
The calling sequence of the user's instantiation routine must be of the following form:
subroutine mysetvar(version,error) integer(kind=4), intent(in) :: version ! The version of the data logical, intent(inout) :: error ! Logical error flagThe name of this subroutine is free.