fortplot_memory_backend Module

Memory-only backend for Windows CI performance testing

This module provides an in-memory alternative to file-based backends, specifically designed to eliminate file I/O bottlenecks in Windows CI environments (Issue #188).



Derived Types

type, public ::  memory_buffer_t

Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: filename
integer(kind=int8), public, dimension(:), allocatable :: data
integer(kind=int64), public :: size = 0
character(len=16), public :: format = ""
real(kind=real64), public :: creation_time = 0.0_real64

type, public ::  memory_backend_t

Components

Type Visibility Attributes Name Initial
type(memory_buffer_t), public, dimension(:), allocatable :: buffers
integer, public :: buffer_count = 0
integer, public :: max_buffers = 1000
logical, public :: enabled = .false.
real(kind=real64), public :: total_memory_used = 0.0_real64

Type-Bound Procedures

procedure, public :: initialize => memory_backend_initialize
procedure, public :: save => memory_backend_save
procedure, public :: get_buffer => memory_backend_get_buffer
procedure, public :: exists => memory_backend_exists
procedure, public :: get_size => memory_backend_get_size
procedure, public :: clear => memory_backend_clear
procedure, public :: get_stats => memory_backend_get_stats

Functions

public function get_memory_backend() result(backend)

Get global memory backend instance

Arguments

None

Return Value type(memory_backend_t), pointer


Subroutines

public subroutine clear_memory_backend()

Clear global memory backend

Arguments

None