Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions components/inventory/documentation/uml/inventory.puml
Original file line number Diff line number Diff line change
@@ -1,13 +1,16 @@
' (C) Crown copyright 2022 Met Office. All rights reserved.
' The file LICENCE, distributed with this code, contains details of the terms
' under which the code may be used.
' Some of the content of this file has been produced with the assistance of
' Met Office GitHub Copilot Enterprise.

@startuml

!include look.iuml

!include inventory/inventory_by_mesh_mod.iuml
!include inventory/inventory_by_local_mesh_mod.iuml
!include inventory/inventory_by_integer_mod.iuml
!include inventory/id_abstract_pair_mod.iuml
!include inventory/id_integer_pair_mod.iuml
!include inventory/id_integer_array_pair_mod.iuml
Expand All @@ -17,14 +20,17 @@
!include inventory/id_real32_pair_mod.iuml
!include inventory/id_real64_pair_mod.iuml
!include inventory/id_r32_field_array_pair_mod.iuml
!include inventory/id_r32_field_array_2d_pair_mod.iuml
!include inventory/id_r32_field_pair_mod.iuml
!include inventory/id_r32_operator_pair_mod.iuml
!include inventory/id_r64_field_pair_mod.iuml
!include inventory/id_r64_field_array_pair_mod.iuml
!include inventory/id_r64_field_array_2d_pair_mod.iuml
!include inventory/id_r64_operator_pair_mod.iuml

inventory_by_mesh_mod::inventory_by_mesh_type o-> "*" id_abstract_pair_mod::id_abstract_pair_type
inventory_by_local_mesh_mod::inventory_by_local_mesh_type o-> "*" id_abstract_pair_mod::id_abstract_pair_type
inventory_by_integer_mod::inventory_by_integer_type o-> "*" id_abstract_pair_mod::id_abstract_pair_type
id_abstract_pair_mod::id_abstract_pair_type ^- id_integer_pair_mod::id_integer_pair_type
id_abstract_pair_mod::id_abstract_pair_type ^- id_integer_array_pair_mod::id_integer_array_pair_type
id_abstract_pair_mod::id_abstract_pair_type ^- id_integer_field_pair_mod::id_integer_field_pair_type
Expand All @@ -34,9 +40,11 @@ id_abstract_pair_mod::id_abstract_pair_type ^- id_real32_pair_mod::id_real32_pai
id_abstract_pair_mod::id_abstract_pair_type ^- id_real64_pair_mod::id_real64_pair_type
id_abstract_pair_mod::id_abstract_pair_type ^- id_r32_field_pair_mod::id_r32_field_pair_type
id_abstract_pair_mod::id_abstract_pair_type ^- id_r32_field_array_pair_mod::id_r32_field_array_pair_type
id_abstract_pair_mod::id_abstract_pair_type ^- id_r32_field_array_2d_pair_mod::id_r32_field_array_2d_pair_type
id_abstract_pair_mod::id_abstract_pair_type ^- id_r32_operator_pair_mod::id_r32_operator_pair_type
id_abstract_pair_mod::id_abstract_pair_type ^- id_r64_field_pair_mod::id_r64_field_pair_type
id_abstract_pair_mod::id_abstract_pair_type ^- id_r64_field_array_pair_mod::id_r64_field_array_pair_type
id_abstract_pair_mod::id_abstract_pair_type ^- id_r64_field_array_2d_pair_mod::id_r64_field_array_2d_pair_type
id_abstract_pair_mod::id_abstract_pair_type ^- id_r64_operator_pair_mod::id_r64_operator_pair_type

@enduml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
' (c) Crown copyright Met Office. All rights reserved.
' The file LICENCE, distributed with this code, contains details of the terms
' under which the code may be used.
' Some of the content of this file has been produced with the assistance of
' Met Office GitHub Copilot Enterprise.

class id_r32_field_array_2d_pair_mod::id_r32_field_array_2d_pair_type {
-field_array_: field_real32_type

+initialise( <<in>> fs: function_space_type, <<in>> id: integer, <<in>> dim1: integer, <<in>> dim2: integer )
+copy_initialise( <<in>> field_array: field_real32_type(:,:), <<in>> id: integer ) :
+get_field_array( ) : field_real32_type(:,:)
<<destroy>>+destructor()
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
' (c) Crown copyright Met Office. All rights reserved.
' The file LICENCE, distributed with this code, contains details of the terms
' under which the code may be used.
' Some of the content of this file has been produced with the assistance of
' Met Office GitHub Copilot Enterprise.

class id_r64_field_array_2d_pair_mod::id_r64_field_array_2d_pair_type {
-field_array_: field_real64_type

+initialise( <<in>> fs: function_space_type, <<in>> id: integer, <<in>> dim1: integer, <<in>> dim2: integer )
+copy_initialise( <<in>> field_array: field_real64_type(:,:), <<in>> id: integer ) :
+get_field_array( ) : field_real64_type(:,:)
<<destroy>>+destructor()
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
' (c) Crown copyright Met Office. All rights reserved.
' The file LICENCE, distributed with this code, contains details of the terms
' under which the code may be used.
' Some of the content of this file has been produced with the assistance of
' Met Office GitHub Copilot Enterprise.

class inventory_by_integer_mod::inventory_by_integer_type {
-paired_object_list: linked_list_type
-name: string
-table_len: integer

+initialise(<<in optional>> name : string, <<in optional>> table_len : integer ) :
+add_paired_object( <<in>> paired_object: id_abstract_pair_type ) :
+get_length() : integer
+get_name() : string
+get_name() : string
+clear() :
+get_paired_object( <<in>> id: integer ) : id_abstract_pair_type
+paired_object_exists( <<in>> id: integer ) : logical
+remove_paired_object( <<in>> id: integer ) :
+add_field( <<out>> field: field_real32_type, <<in>> fs: function_space_type, <<in>> key: integer, <<in, optional>> name: character, <<in, optional>> halo_depth: integer ) :
+add_field( <<out>> field: field_real64_type, <<in>> fs: function_space_type, <<in>> key: integer, <<in, optional>> name: character, <<in, optional>> halo_depth: integer ) :
+add_field( <<out>> field: integer_field_type, <<in>> fs: function_space_type, <<in>> key: integer, <<in, optional>> name: character, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: field_real32_type, <<in>> fs: function_space_type, <<in>> array_size: integer, <<in>> key: integer, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: field_real64_type, <<in>> fs: function_space_type, <<in>> array_size: integer, <<in>> key: integer, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: integer_field_type, <<in>> fs: function_space_type, <<in>> array_size: integer, <<in>> key: integer, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: field_real32_type(:,:), <<in>> fs: function_space_type, <<in>> dim1: integer, <<in>> dim2: integer, <<in>> key: integer, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: field_real64_type(:,:), <<in>> fs: function_space_type, <<in>> dim1: integer, <<in>> dim2: integer, <<in>> key: integer, <<in, optional>> halo_depth: integer ) :
+add_integer( <<in>> number: integer, <<in>> key: integer ) :
+add_integer_array( <<in>> numbers: integer, <<in>> key: integer ) :
+add_logical( <<in>> bool_flag: logical, <<in>> key: integer ) :
+add_real32( <<in>> number: real, <<in>> key: integer ) :
+add_real64( <<in>> number: real, <<in>> key: integer ) :
+add_operator( <<out>> operator_in: operator_real32_type, <<in>> fs_target: function_space_type, <<in>> fs_source: function_space_type, <<in>> key: integer ) :
+add_operator( <<out>> operator_in: operator_real64_type, <<in>> fs_target: function_space_type, <<in>> fs_source: function_space_type, <<in>> key: integer ) :
+copy_field( <<in>> field: field_real32_type, <<in>> key: integer ) :
+copy_field( <<in>> field: field_real64_type, <<in>> key: integer ) :
+copy_field( <<in>> field: integer_field_type, <<in>> key: integer ) :
+copy_field_array( <<in>> field_array: field_real32_type, <<in>> key: integer ) :
+copy_field_array( <<in>> field_array: field_real64_type, <<in>> key: integer ) :
+copy_field_array( <<in>> field_array: integer_field_type, <<in>> key: integer ) :
+copy_field_array( <<in>> field_array: field_real32_type(:,:), <<in>> key: integer ) :
+copy_field_array( <<in>> field_array: field_real64_type(:,:), <<in>> key: integer ) :
+copy_operator( <<in>> operator_in: operator_real32_type, <<in>> key: integer ) :
+copy_operator( <<in>> operator_in: operator_real64_type, <<in>> key: integer ) :
+get_field( <<in>> key: integer, <<out>> field: field_real32_type ) :
+get_field( <<in>> key: integer, <<out>> field: field_real64_type ) :
+get_field( <<in>> key: integer, <<out>> field: integer_field_type ) :
+get_field_array( <<in>> key: integer, <<out>> field_array: field_real32_type ) :
+get_field_array( <<in>> key: integer, <<out>> field_array: field_real64_type ) :
+get_field_array( <<in>> key: integer, <<out>> field_array: integer_field_type ) :
+get_field_array( <<in>> key: integer, <<out>> field_array: field_real32_type(:,:) ) :
+get_field_array( <<in>> key: integer, <<out>> field_array: field_real64_type(:,:) ) :
+get_integer( <<in>> key: integer, <<out>> number: integer ) :
+get_integer_array( <<in>> key: integer, <<out>> numbers: integer ) :
+get_logical( <<in>> key: integer, <<out>> bool_flag: logical ) :
+get_real32( <<in>> key: integer, <<out>> number: real ) :
+get_real64( <<in>> key: integer, <<out>> number: real ) :
+get_operator( <<in>> key: integer, <<out>> operator_out: operator_real32_type ) :
+get_operator( <<in>> key: integer, <<out>> operator_out: operator_real64_type ) :
<<destroy>>+inventory_by_integer_destructor()
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
' (C) Crown copyright 2022 Met Office. All rights reserved.
' The file LICENCE, distributed with this code, contains details of the terms
' under which the code may be used.
' Some of the content of this file has been produced with the assistance of
' Met Office GitHub Copilot Enterprise.

class inventory_by_local_mesh_mod::inventory_by_local_mesh_type {
-paired_object_list: linked_list_type
Expand All @@ -22,6 +24,8 @@ class inventory_by_local_mesh_mod::inventory_by_local_mesh_type {
+add_field_array( <<out>> field_array: field_real32_type, <<in>> fs: function_space_type, <<in>> array_size: integer, <<in>> local_mesh: local_mesh_type, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: field_real64_type, <<in>> fs: function_space_type, <<in>> array_size: integer, <<in>> local_mesh: local_mesh_type, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: integer_field_type, <<in>> fs: function_space_type, <<in>> array_size: integer, <<in>> local_mesh: local_mesh_type, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: field_real32_type(:,:), <<in>> fs: function_space_type, <<in>> dim1: integer, <<in>> dim2: integer, <<in>> local_mesh: local_mesh_type, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: field_real64_type(:,:), <<in>> fs: function_space_type, <<in>> dim1: integer, <<in>> dim2: integer, <<in>> local_mesh: local_mesh_type, <<in, optional>> halo_depth: integer ) :
+add_integer( <<in>> number: integer, <<in>> local_mesh: local_mesh_type ) :
+add_integer_array( <<in>> numbers: integer, <<in>> local_mesh: local_mesh_type ) :
+add_logical( <<in>> bool_flag: logical, <<in>> local_mesh: local_mesh_type ) :
Expand All @@ -33,12 +37,16 @@ class inventory_by_local_mesh_mod::inventory_by_local_mesh_type {
+copy_field_array( <<in>> field_array: field_real32_type, <<in>> local_mesh: local_mesh_type ) :
+copy_field_array( <<in>> field_array: field_real64_type, <<in>> local_mesh: local_mesh_type ) :
+copy_field_array( <<in>> field_array: integer_field_type, <<in>> local_mesh: local_mesh_type ) :
+copy_field_array( <<in>> field_array: field_real32_type(:,:), <<in>> local_mesh: local_mesh_type ) :
+copy_field_array( <<in>> field_array: field_real64_type(:,:), <<in>> local_mesh: local_mesh_type ) :
+get_field( <<in>> local_mesh: local_mesh_type, <<out>> field: field_real32_type ) :
+get_field( <<in>> local_mesh: local_mesh_type, <<out>> field: field_real64_type ) :
+get_field( <<in>> local_mesh: local_mesh_type, <<out>> field: integer_field_type ) :
+get_field_array( <<in>> local_mesh: local_mesh_type, <<out>> field_array: field_real32_type ) :
+get_field_array( <<in>> local_mesh: local_mesh_type, <<out>> field_array: field_real64_type ) :
+get_field_array( <<in>> local_mesh: local_mesh_type, <<out>> field_array: integer_field_type ) :
+get_field_array( <<in>> local_mesh: local_mesh_type, <<out>> field_array: field_real32_type(:,:) ) :
+get_field_array( <<in>> local_mesh: local_mesh_type, <<out>> field_array: field_real64_type(:,:) ) :
+get_integer( <<in>> local_mesh: local_mesh_type, <<out>> number: integer ) :
+get_integer_array( <<in>> local_mesh: local_mesh_type, <<out>> numbers: integer ) :
+get_logical( <<in>> local_mesh: local_mesh_type, <<out>> bool_flag: logical ) :
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
' (C) Crown copyright 2022 Met Office. All rights reserved.
' The file LICENCE, distributed with this code, contains details of the terms
' under which the code may be used.
' Some of the content of this file has been produced with the assistance of
' Met Office GitHub Copilot Enterprise.

class inventory_by_mesh_mod::inventory_by_mesh_type {
-paired_object_list: linked_list_type
Expand All @@ -24,6 +26,8 @@ class inventory_by_mesh_mod::inventory_by_mesh_type {
+add_field_array( <<out>> field_array: field_real32_type, <<in>> fs: function_space_type, <<in>> array_size: integer, <<in>> mesh: mesh_type, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: field_real64_type, <<in>> fs: function_space_type, <<in>> array_size: integer, <<in>> mesh: mesh_type, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: integer_field_type, <<in>> fs: function_space_type, <<in>> array_size: integer, <<in>> mesh: mesh_type, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: field_real32_type(:,:), <<in>> fs: function_space_type, <<in>> dim1: integer, <<in>> dim2: integer, <<in>> mesh: mesh_type, <<in, optional>> halo_depth: integer ) :
+add_field_array( <<out>> field_array: field_real64_type(:,:), <<in>> fs: function_space_type, <<in>> dim1: integer, <<in>> dim2: integer, <<in>> mesh: mesh_type, <<in, optional>> halo_depth: integer ) :
+add_integer( <<in>> number: integer, <<in>> mesh: mesh_type ) :
+add_integer_array( <<in>> numbers: integer, <<in>> mesh: mesh_type ) :
+add_logical( <<in>> bool_flag: logical, <<in>> mesh: mesh_type ) :
Expand All @@ -39,6 +43,8 @@ class inventory_by_mesh_mod::inventory_by_mesh_type {
+copy_field_array( <<in>> field_array: field_real32_type, <<in>> mesh: mesh_type ) :
+copy_field_array( <<in>> field_array: field_real64_type, <<in>> mesh: mesh_type ) :
+copy_field_array( <<in>> field_array: integer_field_type, <<in>> mesh: mesh_type ) :
+copy_field_array( <<in>> field_array: field_real32_type(:,:), <<in>> mesh: mesh_type ) :
+copy_field_array( <<in>> field_array: field_real64_type(:,:), <<in>> mesh: mesh_type ) :
+copy_operator( <<in>> operator_in: operator_real32_type, <<in>> mesh: mesh_type ) :
+copy_operator( <<in>> operator_in: operator_real64_type, <<in>> mesh: mesh_type ) :
+get_field( <<in>> mesh: mesh_type, <<out>> field: field_real32_type ) :
Expand All @@ -49,6 +55,8 @@ class inventory_by_mesh_mod::inventory_by_mesh_type {
+get_field_array( <<in>> mesh: mesh_type, <<out>> field_array: field_real32_type ) :
+get_field_array( <<in>> mesh: mesh_type, <<out>> field_array: field_real64_type ) :
+get_field_array( <<in>> mesh: mesh_type, <<out>> field_array: integer_field_type ) :
+get_field_array( <<in>> mesh: mesh_type, <<out>> field_array: field_real32_type(:,:) ) :
+get_field_array( <<in>> mesh: mesh_type, <<out>> field_array: field_real64_type(:,:) ) :
+get_integer( <<in>> mesh: mesh_type, <<out>> number: integer ) :
+get_integer_array( <<in>> mesh: mesh_type, <<out>> numbers: integer ) :
+get_logical( <<in>> mesh: mesh_type, <<out>> bool_flag: logical ) :
Expand Down
Loading
Loading