A utility that manages and writes a collection of monitors.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| class(monitor_obj), | public, | allocatable | :: | m(:) |
Array of monitors |
||
| type(parallel_obj), | public, | pointer | :: | parallel | => | null() |
Associated parallel structure |
| type(hashtbl_obj), | private | :: | tbl |
Hash table |
Create a new monitor
Creates a new monitor.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(monitor_set), | intent(inout) | :: | this |
Set of monitor objects |
||
| character(len=*), | intent(in) | :: | name |
Name of the monitor |
||
| integer, | intent(in) | :: | ncol |
Number of columns |
||
| logical, | intent(in), | optional | :: | stdout |
Switch to write to the stdout |
|
| character(len=*), | intent(in), | optional | :: | sep |
Number of columns |
Add a new monitor slot
Changes the size of monitors arrays to add 1 element.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(monitor_set), | intent(inout) | :: | this |
Set of monitor objects |
Finalize the structure
Finalizes object and frees memory.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(monitor_set), | intent(inout) | :: | this |
A set of monitor objects |
Return the index of a monitor
Returns the ID of a monitor identified by name.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(monitor_set), | intent(inout) | :: | this |
Set of monitor objects |
||
| character(len=*), | intent(in) | :: | name |
Name of the monitor |
Monitor ID
Print a number of diagnostics information
Print a number of diagnostics information.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(monitor_set), | intent(inout) | :: | this |
Set of monitor objects |
Initialize the structure
Initializes a set of monitors.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(monitor_set), | intent(inout) | :: | this |
A set of monitor objects |
||
| type(parallel_obj), | intent(in), | target | :: | parallel |
Parallel structure to link with |
Print the content of the monitors
Prints content of monitors.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(monitor_set), | intent(inout) | :: | this |
Set of monitor objects |
||
| logical, | intent(in), | optional | :: | print_labels |
True if we want to print the labels |
Set the label or value of a monitor
Sets the label or value of a column ofa a monitor given by name.
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(monitor_set), | intent(inout) | :: | this |
Set of monitor objects |
||
| character(len=*), | intent(in) | :: | name |
Name of the monitor |
||
| integer, | intent(in) | :: | colID |
Number of columns |
||
| class(*), | intent(in), | optional | :: | value |
Value |
|
| character(len=*), | intent(in), | optional | :: | label |
Column label |
type :: monitor_set !> A utility that manages and writes a collection of monitors. class(monitor_obj), allocatable :: m(:) !! Array of monitors type(parallel_obj), pointer :: parallel=>null() !! Associated parallel structure type(hashtbl_obj), private :: tbl !! Hash table contains procedure :: Initialize => monitor_set_Init !! Initialize the structure procedure :: Finalize => monitor_set_Final !! Finalize the structure procedure :: Expand => monitor_set_Expand !! Add a new monitor slot procedure :: Create => monitor_set_Create !! Create a new monitor procedure :: Set => monitor_set_Set !! Set the label or value of a monitor procedure :: GetIndex => monitor_set_GetIndex !! Return the index of a monitor procedure :: Print => monitor_set_Print !! Print the content of the monitors procedure :: Info => monitor_set_Info !! Print a number of diagnostics information end type monitor_set