15 character(len=7) :: typename
16 character(len=LENEXCHANGENAME) :: name
17 character(len=LENMEMPATH) :: memorypath
18 character(len=LENMEMPATH) :: input_mempath
88 logical(LGP) :: is_connected
89 is_connected = .false.
95 class(*),
pointer,
intent(inout) :: obj
100 if (.not.
associated(obj))
return
111 type(
listtype),
intent(inout) :: list
114 class(*),
pointer :: obj
123 type(
listtype),
intent(inout) :: list
124 integer(I4B),
intent(in) :: idx
127 class(*),
pointer :: obj
129 obj => list%GetItem(idx)
subroutine exg_fp(this)
Final processing.
subroutine exg_da(this)
Deallocate memory.
subroutine exg_rp(this)
Read and prepare.
class(baseexchangetype) function, pointer, private castasbaseexchangeclass(obj)
Cast the object passed in as BaseExchangeType and return it.
logical(lgp) function connects_model(this, model)
Should return true when the exchange should be added to the solution where the model resides.
subroutine, public addbaseexchangetolist(list, exchange)
Add the exchange object (BaseExchangeType) to a list.
subroutine exg_ot(this)
Run output routines.
subroutine exg_dt(this)
Calculate time step length.
class(baseexchangetype) function, pointer, public getbaseexchangefromlist(list, idx)
Retrieve a specific BaseExchangeType object from a list.
subroutine exg_ad(this)
Advance.
This module contains simulation constants.
integer(i4b), parameter lenexchangename
maximum length of the exchange name
integer(i4b), parameter lenmempath
maximum length of the memory path
This module defines variable data types.
Highest level model type. All models extend this parent type.
A generic heterogeneous doubly-linked list.