BUFFERED_ALLOCATOR_MOD Module


Uses

  • module~~buffered_allocator_mod~~UsesGraph module~buffered_allocator_mod BUFFERED_ALLOCATOR_MOD EC_PARKIND EC_PARKIND module~buffered_allocator_mod->EC_PARKIND iso_c_binding iso_c_binding module~buffered_allocator_mod->iso_c_binding module~abort_trans_mod ABORT_TRANS_MOD module~buffered_allocator_mod->module~abort_trans_mod module~growing_allocator_mod GROWING_ALLOCATOR_MOD module~buffered_allocator_mod->module~growing_allocator_mod module~growing_allocator_mod->iso_c_binding

Used by

  • module~~buffered_allocator_mod~~UsedByGraph module~buffered_allocator_mod BUFFERED_ALLOCATOR_MOD module~fsc_mod~2 FSC_MOD module~fsc_mod~2->module~buffered_allocator_mod module~fscad_mod~2 FSCAD_MOD module~fscad_mod~2->module~buffered_allocator_mod module~ftdir_mod~2 FTDIR_MOD module~ftdir_mod~2->module~buffered_allocator_mod module~ftinv_mod~2 FTINV_MOD module~ftinv_mod~2->module~buffered_allocator_mod module~ledir_mod~2 LEDIR_MOD module~ledir_mod~2->module~buffered_allocator_mod module~leinv_mod~2 LEINV_MOD module~leinv_mod~2->module~buffered_allocator_mod module~ltdir_mod LTDIR_MOD module~ltdir_mod->module~buffered_allocator_mod module~ltdirad_mod~2 LTDIRAD_MOD module~ltdirad_mod~2->module~buffered_allocator_mod module~ltinv_mod~2 LTINV_MOD module~ltinv_mod~2->module~buffered_allocator_mod module~ltinvad_mod LTINVAD_MOD module~ltinvad_mod->module~buffered_allocator_mod module~trgtol_mod~2 TRGTOL_MOD module~trgtol_mod~2->module~buffered_allocator_mod module~trltog_mod~2 TRLTOG_MOD module~trltog_mod~2->module~buffered_allocator_mod module~trltom_mod~2 TRLTOM_MOD module~trltom_mod~2->module~buffered_allocator_mod module~trltom_pack_unpack TRLTOM_PACK_UNPACK module~trltom_pack_unpack->module~buffered_allocator_mod module~trltomad_mod TRLTOMAD_MOD module~trltomad_mod->module~buffered_allocator_mod module~trltomad_pack_unpack TRLTOMAD_PACK_UNPACK module~trltomad_pack_unpack->module~buffered_allocator_mod module~trmtol_mod~2 TRMTOL_MOD module~trmtol_mod~2->module~buffered_allocator_mod module~trmtol_pack_unpack TRMTOL_PACK_UNPACK module~trmtol_pack_unpack->module~buffered_allocator_mod module~trmtolad_mod TRMTOLAD_MOD module~trmtolad_mod->module~buffered_allocator_mod module~trmtolad_pack_unpack TRMTOLAD_PACK_UNPACK module~trmtolad_pack_unpack->module~buffered_allocator_mod proc~dir_trans_ctlad~2 DIR_TRANS_CTLAD proc~dir_trans_ctlad~2->module~buffered_allocator_mod proc~dir_trans_ctlad~2->module~trltomad_mod proc~dir_trans_ctlad~2->module~trltomad_pack_unpack proc~dir_trans_ctl~2 DIR_TRANS_CTL proc~dir_trans_ctl~2->module~buffered_allocator_mod proc~dir_trans_ctl~2->module~trgtol_mod~2 proc~dir_trans_ctl~2->module~trltom_pack_unpack proc~ftdir~2 FTDIR proc~ftdir~2->module~buffered_allocator_mod proc~ftinv~2 FTINV proc~ftinv~2->module~buffered_allocator_mod proc~gpnorm_trans~2 GPNORM_TRANS proc~gpnorm_trans~2->module~buffered_allocator_mod proc~gpnorm_trans~2->module~trgtol_mod~2 proc~inv_trans_ctlad INV_TRANS_CTLAD proc~inv_trans_ctlad->module~buffered_allocator_mod proc~inv_trans_ctlad->module~fscad_mod~2 proc~inv_trans_ctlad->module~trgtol_mod~2 proc~inv_trans_ctlad->module~trmtolad_mod proc~inv_trans_ctlad->module~trmtolad_pack_unpack proc~inv_trans_ctl~2 INV_TRANS_CTL proc~inv_trans_ctl~2->module~buffered_allocator_mod proc~inv_trans_ctl~2->module~trmtol_pack_unpack proc~ltdirad~2 LTDIRAD proc~ltdirad~2->module~buffered_allocator_mod proc~ltdir~2 LTDIR proc~ltdir~2->module~buffered_allocator_mod proc~ltinvad~2 LTINVAD proc~ltinvad~2->module~buffered_allocator_mod proc~ltinv~2 LTINV proc~ltinv~2->module~buffered_allocator_mod proc~prepare_ftdir PREPARE_FTDIR proc~prepare_ftdir->module~buffered_allocator_mod proc~prepare_ftinv PREPARE_FTINV proc~prepare_ftinv->module~buffered_allocator_mod proc~prepare_ltdir PREPARE_LTDIR proc~prepare_ltdir->module~buffered_allocator_mod proc~prepare_ltdirad PREPARE_LTDIRAD proc~prepare_ltdirad->module~buffered_allocator_mod proc~prepare_ltinv PREPARE_LTINV proc~prepare_ltinv->module~buffered_allocator_mod proc~prepare_ltinvad PREPARE_LTINVAD proc~prepare_ltinvad->module~buffered_allocator_mod proc~prepare_trgtol PREPARE_TRGTOL proc~prepare_trgtol->module~buffered_allocator_mod proc~prepare_trltog PREPARE_TRLTOG proc~prepare_trltog->module~buffered_allocator_mod proc~prepare_trltom PREPARE_TRLTOM proc~prepare_trltom->module~buffered_allocator_mod proc~prepare_trltom_pack PREPARE_TRLTOM_PACK proc~prepare_trltom_pack->module~buffered_allocator_mod proc~prepare_trltom_unpack PREPARE_TRLTOM_UNPACK proc~prepare_trltom_unpack->module~buffered_allocator_mod proc~prepare_trltomad PREPARE_TRLTOMAD proc~prepare_trltomad->module~buffered_allocator_mod proc~prepare_trltomad_pack PREPARE_TRLTOMAD_PACK proc~prepare_trltomad_pack->module~buffered_allocator_mod proc~prepare_trltomad_unpack PREPARE_TRLTOMAD_UNPACK proc~prepare_trltomad_unpack->module~buffered_allocator_mod proc~prepare_trmtol PREPARE_TRMTOL proc~prepare_trmtol->module~buffered_allocator_mod proc~prepare_trmtol_pack PREPARE_TRMTOL_PACK proc~prepare_trmtol_pack->module~buffered_allocator_mod proc~prepare_trmtol_unpack PREPARE_TRMTOL_UNPACK proc~prepare_trmtol_unpack->module~buffered_allocator_mod proc~prepare_trmtolad PREPARE_TRMTOLAD proc~prepare_trmtolad->module~buffered_allocator_mod proc~prepare_trmtolad_pack PREPARE_TRMTOLAD_PACK proc~prepare_trmtolad_pack->module~buffered_allocator_mod proc~prepare_trmtolad_unpack PREPARE_TRMTOLAD_UNPACK proc~prepare_trmtolad_unpack->module~buffered_allocator_mod proc~trgtol TRGTOL proc~trgtol->module~buffered_allocator_mod proc~trltog~2 TRLTOG proc~trltog~2->module~buffered_allocator_mod proc~trltom_pack TRLTOM_PACK proc~trltom_pack->module~buffered_allocator_mod proc~trltom_unpack TRLTOM_UNPACK proc~trltom_unpack->module~buffered_allocator_mod proc~trltomad TRLTOMAD proc~trltomad->module~buffered_allocator_mod proc~trltomad_pack TRLTOMAD_PACK proc~trltomad_pack->module~buffered_allocator_mod proc~trltomad_unpack TRLTOMAD_UNPACK proc~trltomad_unpack->module~buffered_allocator_mod proc~trltom~2 TRLTOM proc~trltom~2->module~buffered_allocator_mod proc~trmtol_pack TRMTOL_PACK proc~trmtol_pack->module~buffered_allocator_mod proc~trmtol_unpack TRMTOL_UNPACK proc~trmtol_unpack->module~buffered_allocator_mod proc~trmtolad TRMTOLAD proc~trmtolad->module~buffered_allocator_mod proc~trmtolad_pack TRMTOLAD_PACK proc~trmtolad_pack->module~buffered_allocator_mod proc~trmtolad_unpack TRMTOLAD_UNPACK proc~trmtolad_unpack->module~buffered_allocator_mod proc~trmtol~2 TRMTOL proc~trmtol~2->module~buffered_allocator_mod proc~eftdir_ctl EFTDIR_CTL proc~eftdir_ctl->module~trgtol_mod~2 proc~eftinv_ctlad EFTINV_CTLAD proc~eftinv_ctlad->module~trgtol_mod~2 proc~ftdir_ctl FTDIR_CTL proc~ftdir_ctl->module~trgtol_mod~2 proc~ftinv_ctlad FTINV_CTLAD proc~ftinv_ctlad->module~fscad_mod~2 proc~ftinv_ctlad->module~trgtol_mod~2 proc~gpnorm_trans_ctl GPNORM_TRANS_CTL proc~gpnorm_trans_ctl->module~trgtol_mod~2 proc~gpnorm_trans_ctltl GPNORM_TRANS_CTLTL proc~gpnorm_trans_ctltl->module~trgtol_mod~2 proc~gpnorm_trans_gpu GPNORM_TRANS_GPU proc~gpnorm_trans_gpu->module~trgtol_mod~2

Interfaces

public interface ASSIGN_PTR

  • private subroutine ASSIGN_PTR_FLOAT(DST, SRC, START_IN_BYTES, LENGTH_IN_BYTES, SET_VALUE, SET_STREAM)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=C_FLOAT), intent(out), POINTER :: DST(:)
    integer(kind=C_INT8_T), intent(in), POINTER :: SRC(:)
    integer(kind=C_SIZE_T) :: START_IN_BYTES
    integer(kind=C_SIZE_T) :: LENGTH_IN_BYTES
    logical, intent(in), optional :: SET_VALUE
    integer(kind=4), intent(in), optional :: SET_STREAM
  • private subroutine ASSIGN_PTR_DOUBLE(DST, SRC, START_IN_BYTES, LENGTH_IN_BYTES, SET_VALUE, SET_STREAM)

    Arguments

    Type IntentOptional Attributes Name
    real(kind=C_DOUBLE), intent(out), POINTER :: DST(:)
    integer(kind=C_INT8_T), intent(in), POINTER :: SRC(:)
    integer(kind=C_SIZE_T) :: START_IN_BYTES
    integer(kind=C_SIZE_T) :: LENGTH_IN_BYTES
    logical, intent(in), optional :: SET_VALUE
    integer(kind=4), intent(in), optional :: SET_STREAM

Derived Types

type, public ::  BUFFERED_ALLOCATOR

Components

Type Visibility Attributes Name Initial
integer(kind=C_SIZE_T), public :: BUFR_SZ(0:NBUF-1)
integer(kind=JPIM), public :: NEXT_BUF
type(GROWING_ALLOCATION_TYPE), public, POINTER :: PTR

type, public ::  ALLOCATION_RESERVATION_HANDLE

Components

Type Visibility Attributes Name Initial
integer(kind=C_SIZE_T), public :: SZ
integer(kind=JPIM), public :: BUF

Functions

public function MAKE_BUFFERED_ALLOCATOR()

Arguments

None

Return Value type(BUFFERED_ALLOCATOR)

public function RESERVE(ALLOCATOR, SZ, WHO)

Arguments

Type IntentOptional Attributes Name
type(BUFFERED_ALLOCATOR), intent(inout) :: ALLOCATOR
integer(kind=C_SIZE_T), intent(in) :: SZ
character(len=*), intent(in), optional :: WHO

Return Value type(ALLOCATION_RESERVATION_HANDLE)

public function GET_ALLOCATION(ALLOCATOR, RESERVATION)

Arguments

Type IntentOptional Attributes Name
type(BUFFERED_ALLOCATOR), intent(in) :: ALLOCATOR
type(ALLOCATION_RESERVATION_HANDLE), intent(in) :: RESERVATION

Return Value integer(kind=C_INT8_T), POINTER, (:)


Subroutines

public subroutine INSTANTIATE_ALLOCATOR(ALLOCATOR, GROWING_ALLOCATION)

Arguments

Type IntentOptional Attributes Name
type(BUFFERED_ALLOCATOR), intent(inout) :: ALLOCATOR

TYPE(GROWING_ALLOCATION_TYPE), INTENT(IN), POINTER :: GROWING_ALLOCATION

type(GROWING_ALLOCATION_TYPE), intent(inout), TARGET :: GROWING_ALLOCATION