6 logical :: parallel = .false.
7 class(NetCDF_layer_),allocatable :: netcdf_layer
12 module procedure IOManager_init
13 end interface IOManager_
17 type(IOManager_) function IOManager_init(parallel)
20 logical, optional, intent(in) :: parallel
22 if(.not.present(parallel)) then
23 IOManager_init%parallel = .false.
25 IOManager_init%parallel = parallel
28 if( IOManager_init%parallel .eqv. .false.) then
29 allocate(NetCDF_serial_ :: IOManager_init%netcdf_layer)
30 IOManager_init%netcdf_layer%open_file => nf90_open
32 allocate(NetCDF_parallel_ :: IOManager_init%netcdf_layer)
33 IOManager_init%netcdf_layer%open_file => nf90_open
36 end function IOManager_init
38 end module io_manager_base