|
type(hashmap_type) function, public | diagnostic_federator_mod::initialise_diagnostic_federator (io_configuration) |
| Initialises the diagnostics action and sets up the diagnostics master definitions. More...
|
|
logical function, public | diagnostic_federator_mod::check_diagnostic_federator_for_completion (io_configuration) |
| Checks whether the diagnostics federator has completed or not, this is really checking all the underlying operations and communications to ensure that the data has been sent all the way through. More...
|
|
subroutine, public | diagnostic_federator_mod::finalise_diagnostic_federator (io_configuration) |
| Finalises the diagnostics federator, waiting for all outstanding requests and then freeing data. More...
|
|
type(hashmap_type) function, public | diagnostic_federator_mod::determine_diagnostics_fields_available (monc_field_names) |
| Determines the diagnostics fields that are available based upon the input MONC fields on registration that will be sent from MONC to the IO server. More...
|
|
subroutine, public | diagnostic_federator_mod::pass_fields_to_diagnostics_federator (io_configuration, source, data_id, data_dump) |
| Entry point into the diagnostics federator this runs the diagnostics, executing the defined rules based upon the input data. More...
|
|
subroutine | diagnostic_federator_mod::check_all_activities_against_completed_fields (io_configuration, timestep_entry, diagnostics_by_timestep) |
| Checks all pending activities against the completed fields and runs them if the required fields are now available. More...
|
|
logical function | diagnostic_federator_mod::handle_operator_completion (io_configuration, timestep_entry, specific_activity) |
| Handles the completion of the operator. More...
|
|
subroutine | diagnostic_federator_mod::handle_completion (io_configuration, values, field_name, timestep) |
| Handles inter io reduction completion, it adds the resulting value to the appropriate completion lists and then checks the pending activities and runs them if we can execute any of these based upon this value. More...
|
|
subroutine | diagnostic_federator_mod::handle_completion_for_specific_monc_timestep_entry (io_configuration, result_to_add, field_name, timestep_entry, diagnostics_by_timestep) |
| This handles inter IO completion for a specific timestep entry. This is required as at a timestep there can be multiple entires based on each MONC which communicates with the IO server so we handle an individual one here. More...
|
|
subroutine | diagnostic_federator_mod::handle_diagnostic_calculation_completed (io_configuration, diagnostic_index, timestep_entry, diagnostics_by_timestep) |
| Handles completion of a diagnostic calculation and will then pass this onto interested parties. More...
|
|
logical function | diagnostic_federator_mod::are_fields_available_for_activity (timestep_entry, activity) |
| Determines whether the fields required for an activity are available so that activity can be run. More...
|
|
subroutine | diagnostic_federator_mod::perform_inter_io_communication (io_configuration, timestep_entry, all_entries_at_timestep, activity, value_to_send, communication_field_name) |
| Performs the actual inter IO communication by calling out to the appropriate inter IO module. More...
|
|
subroutine | diagnostic_federator_mod::issue_communication_calls (io_configuration, timestep_entry, diagnostics_by_timestep, source, data_id, data_dump) |
| Issues any inter io communucation calls that are appropriate based upon the data recieved from MONC. More...
|
|
subroutine | diagnostic_federator_mod::check_diagnostics_entries_against_data (io_configuration, source, data_id, data_dump, timestep_diagnostics_entry) |
| Checks the outstanding fields of a time step entry against the data recieved from MONC and moves any acquired data from the outstanding set to the completed, along with its value. More...
|
|
subroutine | diagnostic_federator_mod::clean_diagnostic_states (current_timestep) |
| Cleans the diagnostic states if required (based on the timestep period) More...
|
|
subroutine | diagnostic_federator_mod::deallocate_diagnostics_at_timestep (key) |
| Deallocates all the diagnostics at a specific timestep, this removes all the individual MONC timestep entries and deallocates internal all diagnostic data, but keeps the all diagnostic entry in the list (which is removed by the caller) More...
|
|
type(data_values_type) function, pointer | diagnostic_federator_mod::get_value_from_monc_data (io_configuration, source, data_id, data_dump, field_name) |
| Retrieves a value from the communicated MONC data. If this was an integer then converts to a real. More...
|
|
integer function | diagnostic_federator_mod::get_datatype_of_field (fields, field_name) |
| Retrieves the data type of a field or 0 if the field was not found. More...
|
|
type(diagnostics_at_timestep_type) function, pointer | diagnostic_federator_mod::find_or_register_timestep_entry (io_configuration, timestep, source, time) |
| Locates or registers a new (if it does not exist) time step entry based upon the timestep and source MONC process. This is a timestep/source specific state which represents progress through the overall diagnostic configuration. More...
|
|
type(diagnostics_at_timestep_type) function, pointer | diagnostic_federator_mod::create_timestep_entry (io_configuration, timestep, time, source) |
| Creates a timestep entry and processes all members, determining activities their required fields etc... More...
|
|
subroutine | diagnostic_federator_mod::add_required_fields_if_needed (required_fields) |
| Adds the required fields of an activity to the overall required fields which are cloned for each new timestep entry. More...
|
|
type(diagnostics_activity_type) function, pointer | diagnostic_federator_mod::retrieve_next_activity (iterator) |
| Retrieves the next activity in a collection being iterated over by an iterator. More...
|
|
type(diagnostics_at_timestep_type) function, pointer | diagnostic_federator_mod::get_timestep_entry (timestep, source, do_lock) |
| Retrieves the timestep at a specific timestep and source MONC. More...
|
|
type(all_diagnostics_at_timestep_type) function, pointer | diagnostic_federator_mod::find_or_add_diagnostics_by_timestep (timestep) |
| Finds or adds diagnostics by timestep. This is used to maintain a list of all diagnostic entries for a specific timestep for every MONC source process. More...
|
|
type(all_diagnostics_at_timestep_type) function, pointer | diagnostic_federator_mod::get_diagnostics_by_timestep (timestep, do_lock) |
| Retrieves the diagnostics list (each MONC source) at a specific timestep. More...
|
|
type(diagnostics_at_timestep_type) function, pointer | diagnostic_federator_mod::retrieve_next_specific_monc_timestep_entry (iterator) |
| Retrieves the next MONC timestep entry from the all diagnostics based upon a collections iterator. More...
|
|
type(all_diagnostics_at_timestep_type) function, pointer | diagnostic_federator_mod::get_diagnostic_by_key (key) |
| Retrieves all diagnostics at a timestep by its key. More...
|
|
type(all_diagnostics_at_timestep_type) function, pointer | diagnostic_federator_mod::retrieve_diagnostics (mapentry) |
| Retrieves the all diagnostics at a specific timestep from its map entry. More...
|
|
type(diagnostics_activity_type) function, pointer | diagnostic_federator_mod::get_comm_activity_from_fieldname (diagnostics_by_timestep, field_name) |
| Retrieves a communication activity from its field name. More...
|
|
type(io_configuration_misc_item_type) function, pointer | diagnostic_federator_mod::get_misc_action_at_index (action_members, index) |
| Retrieves a misc action from the parsed user XML configuration at a specific index. More...
|
|
subroutine | diagnostic_federator_mod::define_diagnostics (io_configuration, diagnostic_generation_frequency) |
| Based upon the IO configuration this will define the diagnostics structure. It is done once at initialisation and then this same information is used for execution at each data arrival point. More...
|
|
type(diagnostics_activity_type) function, pointer | diagnostic_federator_mod::get_diagnostic_activity_by_result_name (result_name, diagnostic_entry_index) |
| Retrives a diagnostic activity based upon its result name or null if none is found. More...
|
|
subroutine | diagnostic_federator_mod::process_auto_dimensions (io_configuration, diagnostic_configuration, entry_index) |
| Processes all auto dimensions by looking them up and resolving them based upon the operators. More...
|
|
integer function | diagnostic_federator_mod::get_diagnostic_generation_frequency (io_configuration, required_fields) |
| Retrieves the max diagnostic generation frequency for a set of fields. More...
|
|
integer function | diagnostic_federator_mod::get_field_frequency (io_configuration, field_name) |
| Retrieves the generation frequency for a specific field. More...
|
|
character(len=string_length) function | diagnostic_federator_mod::generate_activity_diagnostic_key (diagnostic, activity) |
| Generates a unique key for an activity within a diagnostic, which is unique amongst all diagnostics and their activities. More...
|
|