aggregator_types_mod Module



Abstract Interfaces

abstract interface

  • private subroutine accumulate_data(this)

    Arguments

    Type IntentOptional Attributes Name
    class(aggregator_t), intent(inout) :: this

abstract interface

  • private subroutine reset_data(this)

    Arguments

    Type IntentOptional Attributes Name
    class(aggregator_t), intent(inout) :: this

Derived Types

type, public, abstract ::  aggregator_t

Components

Type Visibility Attributes Name Initial
integer, public :: counter = 0
procedure(accumulate_data), public, pointer :: accumulate
procedure(reset_data), public, pointer :: reset

Type-Bound Procedures

procedure, public :: init => aggregator_init
procedure, public :: set_method => aggregator_set_method

type, public ::  aggregator_handle_t

Components

Type Visibility Attributes Name Initial
class(aggregator_t), public, pointer :: aggregator => null()

Type-Bound Procedures

procedure, public :: init => aggregator_handle_init
procedure, public :: accumulate => aggregator_handle_accumulate
procedure, public :: reset => aggregator_handle_reset

type, public, extends(aggregator_t) ::  aggregator_int32_1d_t

Components

Type Visibility Attributes Name Initial
integer, public :: counter = 0
procedure(accumulate_data), public, pointer :: accumulate
procedure(reset_data), public, pointer :: reset
integer(kind=int32), public, dimension(:), allocatable :: aggregated_data
integer(kind=int32), public, dimension(:), pointer :: source_data => null()

Type-Bound Procedures

procedure, public :: init => aggregator_init
procedure, public :: set_method => aggregator_set_method

type, public, extends(aggregator_t) ::  aggregator_int32_2d_t

Components

Type Visibility Attributes Name Initial
integer, public :: counter = 0
procedure(accumulate_data), public, pointer :: accumulate
procedure(reset_data), public, pointer :: reset
integer(kind=int32), public, dimension(:,:), allocatable :: aggregated_data
integer(kind=int32), public, dimension(:,:), pointer :: source_data => null()

Type-Bound Procedures

procedure, public :: init => aggregator_init
procedure, public :: set_method => aggregator_set_method

type, public, extends(aggregator_t) ::  aggregator_int32_3d_t

Components

Type Visibility Attributes Name Initial
integer, public :: counter = 0
procedure(accumulate_data), public, pointer :: accumulate
procedure(reset_data), public, pointer :: reset
integer(kind=int32), public, dimension(:,:,:), allocatable :: aggregated_data
integer(kind=int32), public, dimension(:,:,:), pointer :: source_data => null()

Type-Bound Procedures

procedure, public :: init => aggregator_init
procedure, public :: set_method => aggregator_set_method

type, public, extends(aggregator_t) ::  aggregator_real32_1d_t

Components

Type Visibility Attributes Name Initial
integer, public :: counter = 0
procedure(accumulate_data), public, pointer :: accumulate
procedure(reset_data), public, pointer :: reset
real(kind=real32), public, dimension(:), allocatable :: aggregated_data
real(kind=real32), public, dimension(:), pointer :: source_data => null()

Type-Bound Procedures

procedure, public :: init => aggregator_init
procedure, public :: set_method => aggregator_set_method

type, public, extends(aggregator_t) ::  aggregator_real32_2d_t

Components

Type Visibility Attributes Name Initial
integer, public :: counter = 0
procedure(accumulate_data), public, pointer :: accumulate
procedure(reset_data), public, pointer :: reset
real(kind=real32), public, dimension(:,:), allocatable :: aggregated_data
real(kind=real32), public, dimension(:,:), pointer :: source_data => null()

Type-Bound Procedures

procedure, public :: init => aggregator_init
procedure, public :: set_method => aggregator_set_method

type, public, extends(aggregator_t) ::  aggregator_real32_3d_t

Components

Type Visibility Attributes Name Initial
integer, public :: counter = 0
procedure(accumulate_data), public, pointer :: accumulate
procedure(reset_data), public, pointer :: reset
real(kind=real32), public, dimension(:,:,:), allocatable :: aggregated_data
real(kind=real32), public, dimension(:,:,:), pointer :: source_data => null()

Type-Bound Procedures

procedure, public :: init => aggregator_init
procedure, public :: set_method => aggregator_set_method

type, public, extends(aggregator_t) ::  aggregator_real64_1d_t

Components

Type Visibility Attributes Name Initial
integer, public :: counter = 0
procedure(accumulate_data), public, pointer :: accumulate
procedure(reset_data), public, pointer :: reset
real(kind=real64), public, dimension(:), allocatable :: aggregated_data
real(kind=real64), public, dimension(:), pointer :: source_data => null()

Type-Bound Procedures

procedure, public :: init => aggregator_init
procedure, public :: set_method => aggregator_set_method

type, public, extends(aggregator_t) ::  aggregator_real64_2d_t

Components

Type Visibility Attributes Name Initial
integer, public :: counter = 0
procedure(accumulate_data), public, pointer :: accumulate
procedure(reset_data), public, pointer :: reset
real(kind=real64), public, dimension(:,:), allocatable :: aggregated_data
real(kind=real64), public, dimension(:,:), pointer :: source_data => null()

Type-Bound Procedures

procedure, public :: init => aggregator_init
procedure, public :: set_method => aggregator_set_method

type, public, extends(aggregator_t) ::  aggregator_real64_3d_t

Components

Type Visibility Attributes Name Initial
integer, public :: counter = 0
procedure(accumulate_data), public, pointer :: accumulate
procedure(reset_data), public, pointer :: reset
real(kind=real64), public, dimension(:,:,:), allocatable :: aggregated_data
real(kind=real64), public, dimension(:,:,:), pointer :: source_data => null()

Type-Bound Procedures

procedure, public :: init => aggregator_init
procedure, public :: set_method => aggregator_set_method

Subroutines

private subroutine aggregator_handle_init(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_handle_t), intent(inout) :: this

private subroutine aggregator_handle_accumulate(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_handle_t), intent(inout) :: this

private subroutine aggregator_handle_reset(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_handle_t), intent(inout) :: this

private subroutine aggregator_init(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_t), intent(inout) :: this

private subroutine aggregator_set_method(this, method)

Arguments

Type IntentOptional Attributes Name
class(aggregator_t), intent(inout) :: this
character(len=*), intent(in) :: method

private subroutine mean_accumulate(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_t), intent(inout) :: this

private subroutine sum_accumulate(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_t), intent(inout) :: this

private subroutine point_accumulate(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_t), intent(inout) :: this

private subroutine min_accumulate(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_t), intent(inout) :: this

private subroutine max_accumulate(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_t), intent(inout) :: this

private subroutine point_reset(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_t), intent(inout) :: this

private subroutine min_reset(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_t), intent(inout) :: this

private subroutine max_reset(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_t), intent(inout) :: this

private subroutine other_reset(this)

Arguments

Type IntentOptional Attributes Name
class(aggregator_t), intent(inout) :: this