10 #include "components/componentheaders.autogen" 11 #include "testcases/testcaseheaders.autogen" 13 #include "componentheaders.static" 14 #include "testcaseheaders.static" 25 type(
list_type),
intent(inout) :: component_descriptions
29 #include "components/componentregistrations.autogen" 30 #include "testcases/testcaseregistrations.autogen" 32 #include "componentregistrations.static" 33 #include "testcaseregistrations.static" 38 subroutine add_component(component_descriptions, single_description)
39 type(
list_type),
intent(inout) :: component_descriptions
42 class(*),
pointer :: raw_data
43 allocate(raw_data, source=single_description)
subroutine get_compiled_components(component_descriptions)
subroutine, public monc_core_bootstrap(component_descriptions, io_server_run)
Main core entry point to bootstrap running the model.
program monc_driver
MONC program entry point which simply calls the main procedure in the MONC module.
Description of a component.
subroutine, public io_server_run(options_database, io_communicator_arg, provided_threading, total_global_processes, continuation_run, io_configuration_file)
Called to start the IO server and once this subroutine returns then it indicates that the IO server h...
Main core entry point to the rest of the model, this is called by the program main.
Interfaces and types that MONC components must specify.
Collection data structures.
subroutine add_component(component_descriptions, single_description)
Called by each component to add itself to the registration list_type.
List data structure which implements a doubly linked list. This list will preserve its order...
Adds a generic element to the end of the list.
The main IO server functionality which handles waiting for commands and data both of which are delt w...