new_aggregator Interface

public interface new_aggregator

Factory interface for creating new aggregator instances. The specific type of aggregator created is determined by the type of the source data array provided.


Module Procedures

private function new_aggregator_int32_0d_t(source_data) result(agg)

Create a new 0D integer aggregator.

Arguments

Type IntentOptional Attributes Name
integer(kind=int32), intent(inout), target :: source_data

The source data array to be sampled by the aggregator.

Return Value type(aggregator_int32_0d_t)

private function new_aggregator_int32_1d_t(source_data) result(agg)

Create a new 1D integer aggregator.

Arguments

Type IntentOptional Attributes Name
integer(kind=int32), intent(inout), dimension(:), target :: source_data

The source data array to be sampled by the aggregator.

Return Value type(aggregator_int32_1d_t)

private function new_aggregator_int32_2d_t(source_data) result(agg)

Create a new 2D integer aggregator.

Arguments

Type IntentOptional Attributes Name
integer(kind=int32), intent(inout), dimension(:,:), target :: source_data

The source data array to be sampled by the aggregator.

Return Value type(aggregator_int32_2d_t)

private function new_aggregator_int32_3d_t(source_data) result(agg)

Create a new 3D integer aggregator.

Arguments

Type IntentOptional Attributes Name
integer(kind=int32), intent(inout), dimension(:,:,:), target :: source_data

The source data array to be sampled by the aggregator.

Return Value type(aggregator_int32_3d_t)

private function new_aggregator_real32_0d(source_data) result(agg)

Create a new 0D 32-bit real aggregator.

Arguments

Type IntentOptional Attributes Name
real(kind=real32), intent(inout), target :: source_data

The source data array to be sampled by the aggregator.

Return Value type(aggregator_real32_0d_t)

private function new_aggregator_real32_1d(source_data) result(agg)

Create a new 1D 32-bit real aggregator.

Arguments

Type IntentOptional Attributes Name
real(kind=real32), intent(inout), dimension(:), target :: source_data

The source data array to be sampled by the aggregator.

Return Value type(aggregator_real32_1d_t)

private function new_aggregator_real32_2d(source_data) result(agg)

Create a new 2D 32-bit real aggregator.

Arguments

Type IntentOptional Attributes Name
real(kind=real32), intent(inout), dimension(:,:), target :: source_data

The source data array to be sampled by the aggregator.

Return Value type(aggregator_real32_2d_t)

private function new_aggregator_real32_3d(source_data) result(agg)

Create a new 3D 32-bit real aggregator.

Arguments

Type IntentOptional Attributes Name
real(kind=real32), intent(inout), dimension(:,:,:), target :: source_data

The source data array to be sampled by the aggregator.

Return Value type(aggregator_real32_3d_t)

private function new_aggregator_real64_0d(source_data) result(agg)

Create a new 0D 64-bit real aggregator.

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(inout), target :: source_data

The source data array to be sampled by the aggregator.

Return Value type(aggregator_real64_0d_t)

private function new_aggregator_real64_1d(source_data) result(agg)

Create a new 1D 64-bit real aggregator.

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(inout), dimension(:), target :: source_data

The source data array to be sampled by the aggregator.

Return Value type(aggregator_real64_1d_t)

private function new_aggregator_real64_2d(source_data) result(agg)

Create a new 2D 64-bit real aggregator.

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(inout), dimension(:,:), target :: source_data

The source data array to be sampled by the aggregator.

Return Value type(aggregator_real64_2d_t)

private function new_aggregator_real64_3d(source_data) result(agg)

Create a new 3D 64-bit real aggregator.

Arguments

Type IntentOptional Attributes Name
real(kind=real64), intent(inout), dimension(:,:,:), target :: source_data

The source data array to be sampled by the aggregator.

Return Value type(aggregator_real64_3d_t)