#  registry.io_boilerplate
#
#  Included by registry program 
#
#  Contains a number of standard state variables associated with I/O
#
#


# these definitions supercede the definitions in the io_boilerplate_temporary.inc file that follows
ifdef EM_CORE=1
rconfig   character  auxinput1_inname   namelist,time_control            1  "met_em.d<domain>.<date>"   -     "name of auxinput1 infile" ""      ""
rconfig   integer     io_form_auxinput1   namelist,time_control         1              2
endif
ifdef NMM_CORE=1
rconfig   character  auxinput1_inname   namelist,time_control            1  "met_nmm.d<domain>.<date>"   -     "name of auxinput1 infile" ""      ""
rconfig   integer     io_form_auxinput1   namelist,time_control         1              2
endif

# the following file is automatically generated by the registry before reading the registry file.
# see comment above about how to supercede these automatically generated definitions
include io_boilerplate_temporary.inc

# Output file descriptor for a domain                                           
state   integer oid            -        -          -         -     -         "oid"                   ""         ""      
rconfig   integer history_interval        namelist,time_control		max_domains    0       h     "history_interval"       ""      "MINUTES"
rconfig   integer frames_per_outfile      namelist,time_control		max_domains    10      h     "frames_per_outfile"            ""      ""
rconfig   logical restart                 namelist,time_control		1             .false. h    "restart"              ""      ""
rconfig   integer restart_interval        namelist,time_control		1              0       h     "restart_interval"       ""      "MINUTES"
rconfig   integer     io_form_input       namelist,time_control		1              2       h        "io_form_input"                 ""      ""
rconfig   integer     io_form_history     namelist,time_control		1              2       h        "io_form_history"               ""      ""
rconfig   integer     io_form_restart     namelist,time_control		1              2       h        "io_form_restart"               ""      ""
rconfig   integer     io_form_boundary    namelist,time_control		1              2       h        "io_form_boundary"               ""      ""
rconfig   integer debug_level             namelist,time_control		1             0       -      "debug_level"           ""      ""
rconfig   logical self_test_domain        namelist,time_control		1              .false. -      "self_test_domain"           ""      ""
rconfig   character  history_outname   namelist,time_control		1  "wrfout_d<domain>_<date>"     -     "name of history outfile"  ""      ""
rconfig   character  history_inname    namelist,time_control		1  "wrfhist_d<domain>_<date>"    -     "name of history infile"  ""      ""
rconfig   logical    use_netcdf_classic   namelist,time_control         1              .false. -     "use_netcdf_classic"           ""      ""

rconfig   integer history_interval_d      namelist,time_control		max_domains    0       h     "history_interval_d"       ""      "DAYS"
rconfig   integer history_interval_h      namelist,time_control		max_domains    0       h     "history_interval_h"       ""      "HOURS"
rconfig   integer history_interval_m      namelist,time_control		max_domains    0       h     "history_interval_m"       ""      "MINUTES"
rconfig   integer history_interval_s      namelist,time_control		max_domains    0       h     "history_interval_s"       ""      "SECONDS"

rconfig   integer inputout_interval_d      namelist,time_control	max_domains    0       h     "inputout_interval_d"       ""      "DAYS"
rconfig   integer inputout_interval_h      namelist,time_control	max_domains    0       h     "inputout_interval_h"       ""      "HOURS"
rconfig   integer inputout_interval_m      namelist,time_control	max_domains    0       h     "inputout_interval_m"       ""      "MINUTES"
rconfig   integer inputout_interval_s      namelist,time_control	max_domains    0       h     "inputout_interval_s"       ""      "SECONDS"
rconfig   integer inputout_interval        namelist,time_control	max_domains    0       h     "inputout_interval"       ""      "MINUTES"

rconfig   integer restart_interval_d      namelist,time_control		1              0       h     "restart_interval_d"       ""      "DAYS"
rconfig   integer restart_interval_h      namelist,time_control		1              0       h     "restart_interval_h"       ""      "HOURS"
rconfig   integer restart_interval_m      namelist,time_control		1              0       h     "restart_interval_m"       ""      "MINUTES"
rconfig   integer restart_interval_s      namelist,time_control		1              0       h     "restart_interval_s"       ""      "SECONDS"

rconfig  integer history_begin_y   namelist,time_control	max_domains    0     h   "history_begin_y"    ""   "YEARS from start of run"
rconfig  integer history_begin_d   namelist,time_control	max_domains    0     h   "history_begin_d"    ""   "DAYS from start of run"
rconfig  integer history_begin_h   namelist,time_control	max_domains    0     h   "history_begin_h"    ""   "HOURS from start of run"
rconfig  integer history_begin_m   namelist,time_control	max_domains    0     h   "history_begin_m"    ""   "MINUTES from start of run"
rconfig  integer history_begin_s   namelist,time_control	max_domains    0     h   "history_begin_s"    ""   "SECONDS from start of run"
rconfig  integer history_begin     namelist,time_control	max_domains    0     h   "history_begin"      ""   "MINUTES from start of run"

rconfig  integer inputout_begin_y   namelist,time_control	max_domains    0     h   "inputout_begin_y"    ""   "YEARS from start of run"
rconfig  integer inputout_begin_d   namelist,time_control	max_domains    0     h   "inputout_begin_d"    ""   "DAYS from start of run"
rconfig  integer inputout_begin_h   namelist,time_control	max_domains    0     h   "inputout_begin_h"    ""   "HOURS from start of run"
rconfig  integer inputout_begin_m   namelist,time_control	max_domains    0     h   "inputout_begin_m"    ""   "MINUTES from start of run"
rconfig  integer inputout_begin_s   namelist,time_control	max_domains    0     h   "inputout_begin_s"    ""   "SECONDS from start of run"

rconfig  integer restart_begin_y   namelist,time_control	1              0     h   "restart_begin_y"    ""   "YEARS from start of run"
rconfig  integer restart_begin_d   namelist,time_control	1              0     h   "restart_begin_d"    ""   "DAYS from start of run"
rconfig  integer restart_begin_h   namelist,time_control	1              0     h   "restart_begin_h"    ""   "HOURS from start of run"
rconfig  integer restart_begin_m   namelist,time_control	1              0     h   "restart_begin_m"    ""   "MINUTES from start of run"
rconfig  integer restart_begin_s   namelist,time_control	1              0     h   "restart_begin_s"    ""   "SECONDS from start of run"
rconfig  integer restart_begin     namelist,time_control	1              0     h   "restart_begin"      ""   "MINUTES from start of run"

rconfig integer history_end_y      namelist,time_control	max_domains    0    h  "history_end_y"       ""      "YEARS from start of run"
rconfig integer history_end_d      namelist,time_control	max_domains    0    h  "history_end_d"       ""      "DAYS from start of run"
rconfig integer history_end_h      namelist,time_control	max_domains    0    h  "history_end_h"       ""      "HOURS from start of run"
rconfig integer history_end_m      namelist,time_control	max_domains    0    h  "history_end_m"       ""      "MINUTES from start of run"
rconfig integer history_end_s      namelist,time_control	max_domains    0    h  "history_end_s"       ""      "SECONDS from start of run"
rconfig integer history_end        namelist,time_control	max_domains    0    h  "history_end"         ""      "MINUTES from start of run"

rconfig integer inputout_end_y      namelist,time_control     max_domains    0    h  "inputout_end_y"       ""      "YEARS from start of run"
rconfig integer inputout_end_d      namelist,time_control     max_domains    0    h  "inputout_end_d"       ""      "DAYS from start of run"
rconfig integer inputout_end_h      namelist,time_control     max_domains    0    h  "inputout_end_h"       ""      "HOURS from start of run"
rconfig integer inputout_end_m      namelist,time_control     max_domains    0    h  "inputout_end_m"       ""      "MINUTES from start of run"
rconfig integer inputout_end_s      namelist,time_control     max_domains    0    h  "inputout_end_s"       ""      "SECONDS from start of run"

rconfig   integer simulation_start_year   derived                  1              0       -        "simulation_start_year" "start of simulation through restarts" "4-digit year"
rconfig   integer simulation_start_month  derived                  1              0       -        "simulation_start_month" "start of simulation through restarts" "2-digit month"
rconfig   integer simulation_start_day    derived                  1              0       -        "simulation_start_day" "start of simulation through restarts" "2-digit day"
rconfig   integer simulation_start_hour   derived                  1              0       -        "simulation_start_hour" "start of simulation through restarts" "2-digit hour"
rconfig   integer simulation_start_minute derived                  1              0       -        "simulation_start_minute" "start of simulation through restarts" "2-digit minute"
rconfig   integer simulation_start_second derived                  1              0       -        "simulation_start_second" "start of simulation through restarts" "2-digit second"
rconfig   logical reset_simulation_start  namelist,time_control    1              .false. h        "reset_simulation_start" "set simulation start date equal to start date of this run" "logical"

rconfig   integer   sr_x              namelist,domains    max_domains    0
rconfig   integer   sr_y              namelist,domains    max_domains    0

ifdef EM_CORE=1
rconfig character sgfdda_inname   namelist,fdda 1  "sgfdda_d<domain>" - "name of sgfdda infile" ""      ""
rconfig character gfdda_inname    namelist,fdda 1  "gfdda_d<domain>"  - "name of gfdda infile" ""      ""
rconfig integer sgfdda_interval_d namelist,fdda	max_domains    0 h  "sgfdda_interval_d"  ""      "DAYS"
rconfig integer sgfdda_interval_h namelist,fdda	max_domains    0 h  "sgfdda_interval_h"  ""      "HOURS"
rconfig integer sgfdda_interval_m namelist,fdda	max_domains    0 h  "sgfdda_interval_m"  ""      "MINUTES"
rconfig integer sgfdda_interval_s namelist,fdda	max_domains    0 h  "sgfdda_interval_s"  ""      "SECONDS"
rconfig integer sgfdda_interval_y namelist,fdda	max_domains    0 h  "sgfdda_interval_y"  ""      "YEARS"
rconfig integer sgfdda_interval   namelist,fdda	max_domains    0 h  "sgfdda_interval"    ""      "MINUTES"
rconfig integer gfdda_interval_d  namelist,fdda	max_domains    0 h  "gfdda_interval_d"   ""      "DAYS"
rconfig integer gfdda_interval_h  namelist,fdda	max_domains    0 h  "gfdda_interval_h"   ""      "HOURS"
rconfig integer gfdda_interval_m  namelist,fdda	max_domains    0 h  "gfdda_interval_m"   ""      "MINUTES"
rconfig integer gfdda_interval_s  namelist,fdda	max_domains    0 h  "gfdda_interval_s"   ""      "SECONDS"
rconfig integer gfdda_interval_y  namelist,fdda	max_domains    0 h  "gfdda_interval_y"   ""      "YEARS"
rconfig integer gfdda_interval    namelist,fdda	max_domains    0 h  "gfdda_interval"     ""      "MINUTES"
rconfig integer sgfdda_begin_y    namelist,fdda	max_domains    0 h  "sgfdda_begin_y"     ""   "YEARS from start of run"
rconfig integer sgfdda_begin_d    namelist,fdda	max_domains    0 h  "sgfdda_begin_d"     ""   "DAYS from start of run"
rconfig integer sgfdda_begin_h    namelist,fdda	max_domains    0 h  "sgfdda_begin_h"     ""   "HOURS from start of run"
rconfig integer sgfdda_begin_m    namelist,fdda	max_domains    0 h  "sgfdda_begin_m"     ""   "MINUTES from start of run"
rconfig integer sgfdda_begin_s    namelist,fdda	max_domains    0 h  "sgfdda_begin_s"     ""   "SECONDS from start of run"
rconfig integer gfdda_begin_y     namelist,fdda	max_domains    0 h  "gfdda_begin_y"      ""   "YEARS from start of run"
rconfig integer gfdda_begin_d     namelist,fdda	max_domains    0 h  "gfdda_begin_d"      ""   "DAYS from start of run"
rconfig integer gfdda_begin_h     namelist,fdda	max_domains    0 h  "gfdda_begin_h"      ""   "HOURS from start of run"
rconfig integer gfdda_begin_m     namelist,fdda	max_domains    0 h  "gfdda_begin_m"      ""   "MINUTES from start of run"
rconfig integer gfdda_begin_s     namelist,fdda	max_domains    0 h  "gfdda_begin_s"      ""   "SECONDS from start of run"
rconfig integer sgfdda_end_y      namelist,fdda max_domains    0 h  "sgfdda_end_y"       ""      "YEARS from start of run"
rconfig integer sgfdda_end_d      namelist,fdda max_domains    0 h  "sgfdda_end_d"       ""      "DAYS from start of run"
rconfig integer sgfdda_end_h      namelist,fdda max_domains    0 h  "sgfdda_end_h"       ""      "HOURS from start of run"
rconfig integer sgfdda_end_m      namelist,fdda max_domains    0 h  "sgfdda_end_m"       ""      "MINUTES from start of run"
rconfig integer sgfdda_end_s      namelist,fdda max_domains    0 h  "sgfdda_end_s"       ""      "SECONDS from start of run"
rconfig integer gfdda_end_y       namelist,fdda max_domains    0 h  "gfdda_end_y"        ""      "YEARS from start of run"
rconfig integer gfdda_end_d       namelist,fdda max_domains    0 h  "gfdda_end_d"        ""      "DAYS from start of run"
rconfig integer gfdda_end_h       namelist,fdda max_domains    0 h  "gfdda_end_h"        ""      "HOURS from start of run"
rconfig integer gfdda_end_m       namelist,fdda max_domains    0 h  "gfdda_end_m"        ""      "MINUTES from start of run"
rconfig integer gfdda_end_s       namelist,fdda max_domains    0 h  "gfdda_end_s"        ""      "SECONDS from start of run"
rconfig integer io_form_sgfdda    namelist,fdda 1              2 h  "io_form_sgfdda"     ""      ""
rconfig integer io_form_gfdda     namelist,fdda 1              2 h  "io_form_gfdda"      ""      ""
endif

# for reading in stream variable-set reconfiguration information at run time
rconfig character iofields_filename       namelist,time_control   max_domains  "NONE_SPECIFIED"
rconfig logical   ignore_iofields_warning namelist,time_control   1            .true.

# for controlling whether NetCDF writes using the FILL or NOFILL option
# nofill = true means only a single write, not the write/read/write sequence
rconfig logical   ncd_nofill      namelist,time_control 1      .true.