cable_output_variable_t Interface

public interface cable_output_variable_t

Module Procedures

private function cable_output_variable_constructor(field_name, aggregator, netcdf_name, accumulation_frequency, reduction_method, aggregation_method, parameter, distributed, var_type, scale_by, divide_by, offset_by, range, data_shape, metadata) result(this)

Constructor for cable_output_variable_t.

Arguments

Type IntentOptional Attributes Name
character(len=*), intent(in) :: field_name
class(aggregator_t), intent(in) :: aggregator
character(len=*), intent(in), optional :: netcdf_name
character(len=*), intent(in), optional :: accumulation_frequency
character(len=*), intent(in), optional :: reduction_method
character(len=*), intent(in), optional :: aggregation_method
logical, intent(in), optional :: parameter
logical, intent(in), optional :: distributed
integer, intent(in), optional :: var_type
real, intent(in), optional :: scale_by
real, intent(in), optional :: divide_by
real, intent(in), optional :: offset_by
real, intent(in), optional :: range(:)
type(cable_output_dim_t), intent(in), optional :: data_shape(:)
type(cable_output_attribute_t), intent(in), optional :: metadata(:)

Return Value type(cable_output_variable_t)

private function cable_output_variable_from_definition(definition, aggregation, reduction, netcdf_name, metadata) result(this)

Constructs the use of a variable definition described by the arguments: the definition says what the variable is, the arguments say how it is written. The result owns its own copy of the aggregator, so one definition can be used in several streams.

Arguments

Type IntentOptional Attributes Name
type(cable_output_variable_definition_t), intent(in) :: definition
character(len=*), intent(in) :: aggregation

One of allowed_aggregation_methods.

character(len=*), intent(in) :: reduction

One of allowed_reduction_methods.

character(len=*), intent(in) :: netcdf_name

Name of the variable in the NetCDF file.

type(cable_output_attribute_t), intent(in), optional :: metadata(:)

Attributes to add to those of the definition.

Return Value type(cable_output_variable_t)