IO_ Derived Type

type, public :: IO_

This class is usefull for file-IO.


Components

Type Visibility Attributes Name Initial
integer, public :: fh = 100

File handler

logical, public :: active = .false.

If file is opened, the active=.true.

logical, public :: EOF = .true.

If the reader reaches the end of file, the EOF = .true.

character(len=1), public :: state

state of the opened file ("w"::write-only , "a"::append , or "r"::read-only.)

character(len=200), public :: path

Triplet for identifing a file, but "name" and "extention" will be deplicated.

character(len=200), public :: name

Triplet for identifing a file, but "name" and "extention" will be deplicated.

character(len=200), public :: extention

Triplet for identifing a file, but "name" and "extention" will be deplicated.

character(len=:), public, allocatable :: title

File title

character(len=:), public, allocatable :: xlabel

It will be deplicated.

character(len=:), public, allocatable :: ylabel

It will be deplicated.

character(len=:), public, allocatable :: zlabel

It will be deplicated.

character(len=:), public, allocatable :: filename

It will be deplicated.

character(len=3), public :: async = "no "

For async read/write

integer(kind=int32), public :: lastModifiedTime = 0

It will be deplicated.

logical, public :: json_mode = .false.

Read/write a file as a JSON file. It will be deplicated.

logical, public :: activate_rule = .false.

if a rule should be set, following parameter should be modified.

integer(kind=int32), public :: header
integer(kind=int32), public :: offset
integer(kind=int32), public, allocatable :: content_type(:)
logical, public :: binary = .false.

Type-Bound Procedures

procedure, public :: unit => unitIO

It returns a file handler.

  • public function unitIO(obj) result(unit)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj

    Return Value integer(kind=int32)

procedure, public :: numLine => numLineIO

It returns a number of line in the file.

  • public function numLineIO(obj, name) result(line)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name

    Return Value integer(kind=int32)

procedure, public :: flush => flushIO

It flushes all buffered content.

  • public subroutine flushIO(obj)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj

procedure, public :: search_line => search_lineIO

It counts the number of line in a file.

  • public subroutine search_lineIO(obj, name, n)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    character(len=*), intent(in) :: name
    integer(kind=int32), intent(inout) :: n

procedure, public :: exists => existsIO

If file exists, it returns .true.

  • public function existsIO(this, filename) result(exist_then_true)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_) :: this
    character(len=*), intent(in) :: filename

    Return Value logical

procedure, public :: cp => cpIO

File copy

  • public subroutine cpIO(this, from, to)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_) :: this
    character(len=*), intent(in) :: from
    character(len=*), intent(in) :: to

procedure, public :: ls => ls_IO

ls command

  • public function ls_IO(this, name) result(list)

    Arguments

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

    Return Value type(List_)

procedure, public :: zip => zip_IOClass

zip command

  • public subroutine zip_IOClass(this, zipfile, filename)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: this
    character(len=*), intent(in) :: zipfile
    character(len=*), intent(in) :: filename

procedure, public :: unzip => unzip_IOClass

unzip command

  • public subroutine unzip_IOClass(this, zipfile, filename)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: this
    character(len=*), intent(in) :: zipfile
    character(len=*), intent(in) :: filename

procedure, public :: download => downloadIO

download a file

  • public subroutine downloadIO(this, from)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: this
    character(len=*), intent(in) :: from

procedure, public :: rule => ruleIO

set rule

  • public subroutine ruleIO(obj, header, offset, content_type)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: header
    integer(kind=int32), intent(in) :: offset
    integer(kind=int32), intent(in) :: content_type(:)

procedure, public :: ResetRule => ResetRuleIO

reset rule

  • public subroutine ResetRuleIO(obj, header, offset, content_type)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: header
    integer(kind=int32), intent(in) :: offset
    integer(kind=int32), intent(in) :: content_type(:)

procedure, public, pass :: openIOchar

file open

  • public recursive subroutine openIOchar(obj, path, state, name, extention, binary, async, fh)

    ! 意味不明なので削除@20240614

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in), optional :: path
    character(len=1), intent(in), optional :: state
    character(len=*), intent(in), optional :: name
    character(len=*), intent(in), optional :: extention
    logical, intent(in), optional :: binary
    character(len=*), intent(in), optional :: async
    integer(kind=int32), intent(in), optional :: fh

procedure, public, pass :: openIOstring

file open

  • public subroutine openIOstring(obj, path_s, state, name_s, extention_s, binary, fh)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    type(string_), intent(in) :: path_s
    character(len=1), intent(in), optional :: state
    type(string_), intent(in), optional :: name_s
    type(string_), intent(in), optional :: extention_s
    logical, intent(in), optional :: binary
    integer(kind=int32), intent(in), optional :: fh

procedure, public, pass :: parseIOChar200

parser

  • public function parseIOChar200(obj, filename, fileformat, key1, debug) result(ret)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in), optional :: filename
    integer(kind=int32), intent(in), optional :: fileformat
    character(len=*), intent(in) :: key1
    logical, intent(in), optional :: debug

    Return Value character(len=:), allocatable

procedure, public, pass :: parseIO2keysChar200

parser

  • public function parseIO2keysChar200(obj, filename, fileformat, key1, key2, debug) result(ret)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in), optional :: filename
    integer(kind=int32), intent(in), optional :: fileformat
    character(len=*), intent(in) :: key1
    character(len=*), intent(in) :: key2
    logical, intent(in), optional :: debug

    Return Value character(len=200)

procedure, public, pass :: importIOReal64ArrayAsTxt

Import real64-type array from txt file

  • public recursive function importIOReal64ArrayAsTxt(obj, name, num_column) result(real64Array)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name
    integer(kind=int32), intent(in) :: num_column

    Return Value real(kind=real64), allocatable, (:,:)

procedure, public, pass :: importIOReal64VectorAsTxt

Import real64-type array from txt file

  • public function importIOReal64VectorAsTxt(obj, name) result(real64Vector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name

    Return Value real(kind=real64), allocatable, (:)

procedure, public, pass :: importIOReal64VectorAsTxtWithIndex

Import real64-type array from txt file

  • public function importIOReal64VectorAsTxtWithIndex(obj, name, with_index) result(real64Vector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name
    logical, intent(in) :: with_index

    Return Value real(kind=real64), allocatable, (:)

procedure, public, pass :: importIODataFromFormatted

Import real64-type array from txt file

  • public function importIODataFromFormatted(obj, format, name) result(real64Array)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    integer(kind=int32), intent(in) :: format
    character(len=*), intent(in) :: name

    Return Value real(kind=real64), allocatable, (:,:)

Import real64-type array from txt file

  • public function importIOReal64VectorAsTxt(obj, name) result(real64Vector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name

    Return Value real(kind=real64), allocatable, (:)

  • public recursive function importIOReal64ArrayAsTxt(obj, name, num_column) result(real64Array)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name
    integer(kind=int32), intent(in) :: num_column

    Return Value real(kind=real64), allocatable, (:,:)

  • public function importIOReal64VectorAsTxtWithIndex(obj, name, with_index) result(real64Vector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name
    logical, intent(in) :: with_index

    Return Value real(kind=real64), allocatable, (:)

  • public function importIODataFromFormatted(obj, format, name) result(real64Array)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    integer(kind=int32), intent(in) :: format
    character(len=*), intent(in) :: name

    Return Value real(kind=real64), allocatable, (:,:)

procedure, public, pass :: exportIOReal64ArrayAsTxt

Exmport real64-type array from txt file

  • public subroutine exportIOReal64ArrayAsTxt(obj, name, real64Array, num_column)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name
    real(kind=real64), intent(in) :: real64Array(:,:)
    integer(kind=int32), intent(in), optional :: num_column

procedure, public, pass :: exportIOReal64VectorAsTxt

Exmport real64-type array from txt file

  • public subroutine exportIOReal64VectorAsTxt(obj, name, real64Vector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name
    real(kind=real64), intent(in) :: real64Vector(:)

procedure, public, pass :: exportIOReal64VectorAsTxtWithIndex

Exmport real64-type array from txt file

  • public subroutine exportIOReal64VectorAsTxtWithIndex(obj, name, real64Vector, with_index)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name
    real(kind=real64), allocatable :: real64Vector(:)
    logical, intent(in) :: with_index

Exmport real64-type array from txt file

  • public subroutine exportIOReal64VectorAsTxt(obj, name, real64Vector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name
    real(kind=real64), intent(in) :: real64Vector(:)
  • public subroutine exportIOReal64ArrayAsTxt(obj, name, real64Array, num_column)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name
    real(kind=real64), intent(in) :: real64Array(:,:)
    integer(kind=int32), intent(in), optional :: num_column
  • public subroutine exportIOReal64VectorAsTxtWithIndex(obj, name, real64Vector, with_index)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: name
    real(kind=real64), allocatable :: real64Vector(:)
    logical, intent(in) :: with_index

generic, public :: parse => parseIOChar200, parseIO2keysChar200

Parser

  • public function parseIOChar200(obj, filename, fileformat, key1, debug) result(ret)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in), optional :: filename
    integer(kind=int32), intent(in), optional :: fileformat
    character(len=*), intent(in) :: key1
    logical, intent(in), optional :: debug

    Return Value character(len=:), allocatable

  • public function parseIO2keysChar200(obj, filename, fileformat, key1, key2, debug) result(ret)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in), optional :: filename
    integer(kind=int32), intent(in), optional :: fileformat
    character(len=*), intent(in) :: key1
    character(len=*), intent(in) :: key2
    logical, intent(in), optional :: debug

    Return Value character(len=200)

procedure, public, pass :: parse_json_IOClass

Json parser

  • public recursive function parse_json_IOClass(this, filename, keys, from_line_idx) result(ret)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: this
    character(len=*), intent(in) :: filename
    type(List_), intent(in) :: keys
    integer(kind=int32), intent(in), optional :: from_line_idx

    Return Value character(len=:), allocatable

generic, public :: parse_json => parse_json_IOClass

Json parser

  • public recursive function parse_json_IOClass(this, filename, keys, from_line_idx) result(ret)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: this
    character(len=*), intent(in) :: filename
    type(List_), intent(in) :: keys
    integer(kind=int32), intent(in), optional :: from_line_idx

    Return Value character(len=:), allocatable

generic, public :: parse => parse_json_IOClass

Json parser

  • public recursive function parse_json_IOClass(this, filename, keys, from_line_idx) result(ret)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: this
    character(len=*), intent(in) :: filename
    type(List_), intent(in) :: keys
    integer(kind=int32), intent(in), optional :: from_line_idx

    Return Value character(len=:), allocatable

generic, public :: open => openIOchar, openIOstring

File open

  • public recursive subroutine openIOchar(obj, path, state, name, extention, binary, async, fh)

    ! 意味不明なので削除@20240614

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in), optional :: path
    character(len=1), intent(in), optional :: state
    character(len=*), intent(in), optional :: name
    character(len=*), intent(in), optional :: extention
    logical, intent(in), optional :: binary
    character(len=*), intent(in), optional :: async
    integer(kind=int32), intent(in), optional :: fh
  • public subroutine openIOstring(obj, path_s, state, name_s, extention_s, binary, fh)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    type(string_), intent(in) :: path_s
    character(len=1), intent(in), optional :: state
    type(string_), intent(in), optional :: name_s
    type(string_), intent(in), optional :: extention_s
    logical, intent(in), optional :: binary
    integer(kind=int32), intent(in), optional :: fh

procedure, public :: rewind => rewindIO

Due to stupidness of GNU and Intel, We cannot use lstat by single code without ifdef so I expired them. Rewind file

  • public subroutine rewindIO(obj)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj

procedure, public :: goBack => goBackIO

Go back to some lines.

  • public subroutine goBackIO(obj, lines)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in), optional :: lines

procedure, public :: goForward => goForwardIO

Skip some lines.

  • public subroutine goForwardIO(obj, lines)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in), optional :: lines

procedure, public, pass :: writeIOcharcharchar

Write

  • public subroutine writeIOcharcharchar(obj, char1, char2, char3, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: char1
    character(len=*), intent(in) :: char2
    character(len=*), intent(in) :: char3
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOcharchar

  • public subroutine writeIOcharchar(obj, char1, char2)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: char1
    character(len=*), intent(in) :: char2

procedure, public, pass :: writeIOchar

  • public subroutine writeIOchar(obj, char, append, advance)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: char
    logical, intent(in), optional :: append
    logical, intent(in), optional :: advance

procedure, public, pass :: writeIOstringstringstring

Write

Writer for JSON format

  • public subroutine writeIOstringstringstring(obj, string1, string2, string3)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    type(string_), intent(in) :: string1
    type(string_), intent(in) :: string2
    type(string_), intent(in) :: string3

procedure, public, pass :: writeIOstringstring

  • public subroutine writeIOstringstring(obj, string1, string2)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    type(string_), intent(in) :: string1
    type(string_), intent(in) :: string2

procedure, public, pass :: writeIOstring

  • public subroutine writeIOstring(obj, string)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    type(string_), intent(in) :: string

procedure, public, pass :: dumpIOJSON_Key_Vector

  • public subroutine dumpIOJSON_Key_Vector(obj, key, valueVector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    real(kind=real64), intent(in) :: valueVector(:)

procedure, public, pass :: dumpIOJSON_Key_VectorRe32

  • public subroutine dumpIOJSON_Key_VectorRe32(obj, key, valueVector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    real(kind=real32), intent(in) :: valueVector(:)

procedure, public, pass :: dumpIOJSON_Key_VectorInt32

  • public subroutine dumpIOJSON_Key_VectorInt32(obj, key, valueVector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    integer(kind=int32), intent(in) :: valueVector(:)

procedure, public, pass :: dumpIOJSON_Key_value

  • public subroutine dumpIOJSON_Key_value(obj, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    integer(kind=int32), intent(in) :: value

procedure, public, pass :: dumpIOJSON_Key_valueRe32

  • public subroutine dumpIOJSON_Key_valueRe32(obj, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    real(kind=real32), intent(in) :: value

procedure, public, pass :: dumpIOJSON_Key_valueRe64

  • public subroutine dumpIOJSON_Key_valueRe64(obj, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    real(kind=real64), intent(in) :: value

procedure, public, pass :: dumpIOJSON_Key_valueChar

  • public subroutine dumpIOJSON_Key_valueChar(obj, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    character(len=*), intent(in) :: value

procedure, public, pass :: dumpIOJSON_Key_ArrayRe64

  • public subroutine dumpIOJSON_Key_ArrayRe64(obj, key, valueVector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    real(kind=real64), intent(in) :: valueVector(:,:)

procedure, public, pass :: dumpIOJSON_Key_ArrayInt32

  • public subroutine dumpIOJSON_Key_ArrayInt32(obj, key, valueVector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    integer(kind=int32), intent(in) :: valueVector(:,:)

JSON dump.

  • public subroutine dumpIOJSON_Key_Vector(obj, key, valueVector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    real(kind=real64), intent(in) :: valueVector(:)
  • public subroutine dumpIOJSON_Key_VectorRe32(obj, key, valueVector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    real(kind=real32), intent(in) :: valueVector(:)
  • public subroutine dumpIOJSON_Key_VectorInt32(obj, key, valueVector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    integer(kind=int32), intent(in) :: valueVector(:)
  • public subroutine dumpIOJSON_Key_value(obj, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    integer(kind=int32), intent(in) :: value
  • public subroutine dumpIOJSON_Key_valueRe32(obj, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    real(kind=real32), intent(in) :: value
  • public subroutine dumpIOJSON_Key_valueRe64(obj, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    real(kind=real64), intent(in) :: value
  • public subroutine dumpIOJSON_Key_valueChar(obj, key, value)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    character(len=*), intent(in) :: value
  • public subroutine dumpIOJSON_Key_ArrayRe64(obj, key, valueVector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    real(kind=real64), intent(in) :: valueVector(:,:)
  • public subroutine dumpIOJSON_Key_ArrayInt32(obj, key, valueVector)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: key
    integer(kind=int32), intent(in) :: valueVector(:,:)

procedure, public :: arg => argIO

WRITE operation

  • public function argIO(obj, id) result(arg)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    integer(kind=int32), intent(in) :: id

    Return Value character(len=200)

procedure, public, pass :: writeIOint32re64

WRITE operation

  • public subroutine writeIOint32re64(obj, in32, re64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32
    real(kind=real64), intent(in) :: re64
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32re64vector => writeIOint32re64Vector

WRITE operation

  • public subroutine writeIOint32re64Vector(obj, in32_1, re64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    real(kind=real64), intent(in) :: re64(:)
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32int32vector

WRITE operation

  • public subroutine writeIOint32int32vector(obj, in32_1, in32, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    integer(kind=int32), intent(in) :: in32(:)
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32

WRITE operation

  • public subroutine writeIOint32(obj, in32, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32int32

WRITE operation

  • public subroutine writeIOint32int32(obj, in32_1, in32_2, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    integer(kind=int32), intent(in) :: in32_2
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32int32int32

WRITE operation

  • public subroutine writeIOint32int32int32(obj, in32_1, in32_2, in32_3, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    integer(kind=int32), intent(in) :: in32_2
    integer(kind=int32), intent(in) :: in32_3
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32int32int32int32

WRITE operation

  • public subroutine writeIOint32int32int32int32(obj, in32_1, in32_2, in32_3, in32_4, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    integer(kind=int32), intent(in) :: in32_2
    integer(kind=int32), intent(in) :: in32_3
    integer(kind=int32), intent(in) :: in32_4
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32int32int32int32int32

WRITE operation

  • public subroutine writeIOint32int32int32int32int32(obj, in32_1, in32_2, in32_3, in32_4, in32_5, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    integer(kind=int32), intent(in) :: in32_2
    integer(kind=int32), intent(in) :: in32_3
    integer(kind=int32), intent(in) :: in32_4
    integer(kind=int32), intent(in) :: in32_5
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32int32int32int32int32int32

WRITE operation

  • public subroutine writeIOint32int32int32int32int32int32(obj, in32_1, in32_2, in32_3, in32_4, in32_5, in32_6, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    integer(kind=int32), intent(in) :: in32_2
    integer(kind=int32), intent(in) :: in32_3
    integer(kind=int32), intent(in) :: in32_4
    integer(kind=int32), intent(in) :: in32_5
    integer(kind=int32), intent(in) :: in32_6
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32Vector

WRITE operation

  • public subroutine writeIOint32Vector(obj, in32, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32(:)
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint64Vector

WRITE operation

  • public subroutine writeIOint64Vector(obj, in64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in64(:)
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32Vectorint32Vector => writeIOint32VectorInt32vector

WRITE operation

  • public subroutine writeIOint32VectorInt32vector(obj, in32, in32_c, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32(:)
    integer(kind=int32), intent(in) :: in32_c(:)
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32Vectorint32Vectorint32Vector => writeIOint32VectorInt32vectorInt32Vector

WRITE operation

  • public subroutine writeIOint32VectorInt32vectorInt32Vector(obj, in32, in32_c, in32_cc, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32(:)
    integer(kind=int32), intent(in) :: in32_c(:)
    integer(kind=int32), intent(in) :: in32_cc(:)
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32Vectorint32Vectorre64Vector => writeIOint32VectorInt32vectorre64Vector

WRITE operation

  • public subroutine writeIOint32VectorInt32vectorre64Vector(obj, in32, in32_c, re64_cc, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32(:)
    integer(kind=int32), intent(in) :: in32_c(:)
    real(kind=real64), intent(in) :: re64_cc(:)
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32Vectorre64Vector => writeIOint32VectorRe64vector

WRITE operation

  • public subroutine writeIOint32VectorRe64vector(obj, in32, Re64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32(:)
    real(kind=real64), intent(in) :: Re64(:)
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOre64Vectorre64Vector => writeIORe64VectorRe64vector

WRITE operation

  • public subroutine writeIORe64VectorRe64vector(obj, Re64_c, Re64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: Re64_c(:)
    real(kind=real64), intent(in) :: Re64(:)
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOre64Vectorre64Vectorre64Vector => writeIORe64VectorRe64vectorRe64vector

WRITE operation

  • public subroutine writeIORe64VectorRe64vectorRe64vector(obj, Re64_cc, Re64_c, Re64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: Re64_cc(:)
    real(kind=real64), intent(in) :: Re64_c(:)
    real(kind=real64), intent(in) :: Re64(:)
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOint32Array

WRITE operation

  • public subroutine writeIOint32Array(obj, in32, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32(:,:)
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOre64

WRITE operation

  • public subroutine writeIOre64(obj, re64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOre64re64

WRITE operation

  • public subroutine writeIOre64re64(obj, re64_1, re64_2, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64_1
    real(kind=real64), intent(in) :: re64_2
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOre64re64re64

WRITE operation

  • public subroutine writeIOre64re64re64(obj, re64_1, re64_2, re64_3, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64_1
    real(kind=real64), intent(in) :: re64_2
    real(kind=real64), intent(in) :: re64_3
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOre64re64re64re64

WRITE operation

  • public subroutine writeIOre64re64re64re64(obj, re64_1, re64_2, re64_3, re64_4, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64_1
    real(kind=real64), intent(in) :: re64_2
    real(kind=real64), intent(in) :: re64_3
    real(kind=real64), intent(in) :: re64_4
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOre64re64re64re64re64

WRITE operation

  • public subroutine writeIOre64re64re64re64re64(obj, re64_1, re64_2, re64_3, re64_4, re64_5, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64_1
    real(kind=real64), intent(in) :: re64_2
    real(kind=real64), intent(in) :: re64_3
    real(kind=real64), intent(in) :: re64_4
    real(kind=real64), intent(in) :: re64_5
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOre64re64re64re64re64re64

WRITE operation

  • public subroutine writeIOre64re64re64re64re64re64(obj, re64_1, re64_2, re64_3, re64_4, re64_5, re64_6, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64_1
    real(kind=real64), intent(in) :: re64_2
    real(kind=real64), intent(in) :: re64_3
    real(kind=real64), intent(in) :: re64_4
    real(kind=real64), intent(in) :: re64_5
    real(kind=real64), intent(in) :: re64_6
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOre64Vector

WRITE operation

  • public subroutine writeIOre64Vector(obj, re64, sparse)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64(:)
    logical, intent(in), optional :: sparse

procedure, public, pass :: writeIOre64Array

WRITE operation

  • public subroutine writeIOre64Array(obj, re64, sparse, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64(:,:)
    logical, intent(in), optional :: sparse
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIO_re64Vector_re64Array

WRITE operation

  • public subroutine writeIO_re64Vector_re64Array(obj, re64v, re64, sparse, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64v(:)
    real(kind=real64), intent(in) :: re64(:,:)
    logical, intent(in), optional :: sparse
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: writeIOcomplex64

WRITE operation

  • public subroutine writeIOcomplex64(obj, complex64)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    complex(kind=kind(0d0)), intent(in) :: complex64

procedure, public, pass :: writeIOcomplex64Vector

WRITE operation

  • public subroutine writeIOcomplex64Vector(obj, complex64)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    complex(kind=kind(0d0)), intent(in) :: complex64(:)

procedure, public, pass :: writeIOcomplex64Array

WRITE operation

  • public subroutine writeIOcomplex64Array(obj, complex64)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    complex(kind=kind(0d0)), intent(in) :: complex64(:,:)

procedure, public, pass :: writeIOchar_real64Array_real64Array

WRITE operation

  • public subroutine writeIOchar_real64Array_real64Array(obj, char, vec1, vec2, append, advance, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: char
    real(kind=real64), intent(in) :: vec1(:)
    real(kind=real64), intent(in) :: vec2(:)
    logical, intent(in), optional :: append
    logical, intent(in), optional :: advance
    character(len=*), intent(in), optional :: separator

WRITE operation

READ operation

  • public subroutine writeIOchar(obj, char, append, advance)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: char
    logical, intent(in), optional :: append
    logical, intent(in), optional :: advance
  • public subroutine writeIOstring(obj, string)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    type(string_), intent(in) :: string
  • public subroutine writeIOre64(obj, re64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOre64Vector(obj, re64, sparse)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64(:)
    logical, intent(in), optional :: sparse
  • public subroutine writeIOre64Array(obj, re64, sparse, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64(:,:)
    logical, intent(in), optional :: sparse
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32(obj, in32, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32Vector(obj, in32, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32(:)
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32Array(obj, in32, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32(:,:)
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOre64re64(obj, re64_1, re64_2, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64_1
    real(kind=real64), intent(in) :: re64_2
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOre64re64re64(obj, re64_1, re64_2, re64_3, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64_1
    real(kind=real64), intent(in) :: re64_2
    real(kind=real64), intent(in) :: re64_3
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOre64re64re64re64(obj, re64_1, re64_2, re64_3, re64_4, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64_1
    real(kind=real64), intent(in) :: re64_2
    real(kind=real64), intent(in) :: re64_3
    real(kind=real64), intent(in) :: re64_4
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOre64re64re64re64re64(obj, re64_1, re64_2, re64_3, re64_4, re64_5, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64_1
    real(kind=real64), intent(in) :: re64_2
    real(kind=real64), intent(in) :: re64_3
    real(kind=real64), intent(in) :: re64_4
    real(kind=real64), intent(in) :: re64_5
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOre64re64re64re64re64re64(obj, re64_1, re64_2, re64_3, re64_4, re64_5, re64_6, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64_1
    real(kind=real64), intent(in) :: re64_2
    real(kind=real64), intent(in) :: re64_3
    real(kind=real64), intent(in) :: re64_4
    real(kind=real64), intent(in) :: re64_5
    real(kind=real64), intent(in) :: re64_6
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32int32(obj, in32_1, in32_2, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    integer(kind=int32), intent(in) :: in32_2
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32int32int32(obj, in32_1, in32_2, in32_3, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    integer(kind=int32), intent(in) :: in32_2
    integer(kind=int32), intent(in) :: in32_3
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32int32int32int32(obj, in32_1, in32_2, in32_3, in32_4, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    integer(kind=int32), intent(in) :: in32_2
    integer(kind=int32), intent(in) :: in32_3
    integer(kind=int32), intent(in) :: in32_4
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32int32int32int32int32(obj, in32_1, in32_2, in32_3, in32_4, in32_5, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    integer(kind=int32), intent(in) :: in32_2
    integer(kind=int32), intent(in) :: in32_3
    integer(kind=int32), intent(in) :: in32_4
    integer(kind=int32), intent(in) :: in32_5
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32int32int32int32int32int32(obj, in32_1, in32_2, in32_3, in32_4, in32_5, in32_6, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    integer(kind=int32), intent(in) :: in32_2
    integer(kind=int32), intent(in) :: in32_3
    integer(kind=int32), intent(in) :: in32_4
    integer(kind=int32), intent(in) :: in32_5
    integer(kind=int32), intent(in) :: in32_6
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOstringstring(obj, string1, string2)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    type(string_), intent(in) :: string1
    type(string_), intent(in) :: string2
  • public subroutine writeIOstringstringstring(obj, string1, string2, string3)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    type(string_), intent(in) :: string1
    type(string_), intent(in) :: string2
    type(string_), intent(in) :: string3
  • public subroutine writeIOcharchar(obj, char1, char2)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: char1
    character(len=*), intent(in) :: char2
  • public subroutine writeIOcharcharchar(obj, char1, char2, char3, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: char1
    character(len=*), intent(in) :: char2
    character(len=*), intent(in) :: char3
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32re64Vector(obj, in32_1, re64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    real(kind=real64), intent(in) :: re64(:)
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32int32vector(obj, in32_1, in32, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32_1
    integer(kind=int32), intent(in) :: in32(:)
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32re64(obj, in32, re64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32
    real(kind=real64), intent(in) :: re64
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOcomplex64(obj, complex64)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    complex(kind=kind(0d0)), intent(in) :: complex64
  • public subroutine writeIOcomplex64Vector(obj, complex64)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    complex(kind=kind(0d0)), intent(in) :: complex64(:)
  • public subroutine writeIOcomplex64Array(obj, complex64)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    complex(kind=kind(0d0)), intent(in) :: complex64(:,:)
  • public subroutine writeIOint32VectorInt32vector(obj, in32, in32_c, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32(:)
    integer(kind=int32), intent(in) :: in32_c(:)
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32VectorRe64vector(obj, in32, Re64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32(:)
    real(kind=real64), intent(in) :: Re64(:)
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIORe64VectorRe64vector(obj, Re64_c, Re64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: Re64_c(:)
    real(kind=real64), intent(in) :: Re64(:)
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIORe64VectorRe64vectorRe64vector(obj, Re64_cc, Re64_c, Re64, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: Re64_cc(:)
    real(kind=real64), intent(in) :: Re64_c(:)
    real(kind=real64), intent(in) :: Re64(:)
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32VectorInt32vectorInt32Vector(obj, in32, in32_c, in32_cc, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32(:)
    integer(kind=int32), intent(in) :: in32_c(:)
    integer(kind=int32), intent(in) :: in32_cc(:)
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOint32VectorInt32vectorre64Vector(obj, in32, in32_c, re64_cc, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    integer(kind=int32), intent(in) :: in32(:)
    integer(kind=int32), intent(in) :: in32_c(:)
    real(kind=real64), intent(in) :: re64_cc(:)
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIOchar_real64Array_real64Array(obj, char, vec1, vec2, append, advance, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in) :: char
    real(kind=real64), intent(in) :: vec1(:)
    real(kind=real64), intent(in) :: vec2(:)
    logical, intent(in), optional :: append
    logical, intent(in), optional :: advance
    character(len=*), intent(in), optional :: separator
  • public subroutine writeIO_re64Vector_re64Array(obj, re64v, re64, sparse, separator)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: re64v(:)
    real(kind=real64), intent(in) :: re64(:,:)
    logical, intent(in), optional :: sparse
    character(len=*), intent(in), optional :: separator

procedure, public, pass :: readIOchar

  • public subroutine readIOchar(obj, char)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=200) :: char

procedure, public, pass :: readIOInt

READ operation

  • public subroutine readIOInt(obj, val)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    integer(kind=int32), intent(inout) :: val

procedure, public, pass :: readIOIntVector

READ operation

  • public subroutine readIOIntVector(obj, val)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    integer(kind=int32), intent(inout) :: val(:)

procedure, public, pass :: readIOIntArray

READ operation

  • public subroutine readIOIntArray(obj, val)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    integer(kind=int32), intent(inout) :: val(:,:)

procedure, public, pass :: readIOReal64

READ operation

  • public subroutine readIOReal64(obj, val)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    real(kind=real64), intent(inout) :: val

procedure, public, pass :: readIOReal64Vector

READ operation

  • public subroutine readIOReal64Vector(obj, val)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    real(kind=real64), intent(inout) :: val(:)

procedure, public, pass :: readIOReal64VectorVector

READ operation

  • public subroutine readIOReal64VectorVector(obj, val, val2)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    real(kind=real64), intent(inout), allocatable :: val(:)
    real(kind=real64), intent(inout), allocatable :: val2(:)

procedure, public, pass :: readIOReal64Array

READ operation

  • public subroutine readIOReal64Array(obj, val)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    real(kind=real64), intent(inout) :: val(:,:)

READ operation

  • public subroutine readIOchar(obj, char)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=200) :: char
  • public subroutine readIOInt(obj, val)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    integer(kind=int32), intent(inout) :: val
  • public subroutine readIOIntVector(obj, val)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    integer(kind=int32), intent(inout) :: val(:)
  • public subroutine readIOIntArray(obj, val)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    integer(kind=int32), intent(inout) :: val(:,:)
  • public subroutine readIOReal64(obj, val)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    real(kind=real64), intent(inout) :: val
  • public subroutine readIOReal64Vector(obj, val)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    real(kind=real64), intent(inout) :: val(:)
  • public subroutine readIOReal64VectorVector(obj, val, val2)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    real(kind=real64), intent(inout), allocatable :: val(:)
    real(kind=real64), intent(inout), allocatable :: val2(:)
  • public subroutine readIOReal64Array(obj, val)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: obj
    real(kind=real64), intent(inout) :: val(:,:)

procedure, public, pass :: plotIO

Write and plot by gnuplot.

  • public subroutine plotIO(obj, name, option, logscale)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in), optional :: name
    character(len=*), intent(in), optional :: option
    logical, intent(in), optional :: logscale

procedure, public, pass :: plotIODirect

Write and plot by gnuplot.

  • public subroutine plotIODirect(obj, x, Fx, option, logscale, name)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: x(:)
    real(kind=real64), intent(in) :: Fx(:)
    character(len=*), intent(in), optional :: option
    logical, intent(in), optional :: logscale
    character(len=*), intent(in), optional :: name

procedure, public, pass :: plotIODirectReal32

Write and plot by gnuplot.

  • public subroutine plotIODirectReal32(obj, x, Fx, option, logscale, name)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real32), intent(in) :: x(:)
    real(kind=real32), intent(in) :: Fx(:)
    character(len=*), intent(in), optional :: option
    logical, intent(in), optional :: logscale
    character(len=*), intent(in), optional :: name

generic, public :: plot => plotIO, plotIODirect, plotIODirectReal32

Write and plot by gnuplot.

  • public subroutine plotIO(obj, name, option, logscale)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in), optional :: name
    character(len=*), intent(in), optional :: option
    logical, intent(in), optional :: logscale
  • public subroutine plotIODirect(obj, x, Fx, option, logscale, name)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: x(:)
    real(kind=real64), intent(in) :: Fx(:)
    character(len=*), intent(in), optional :: option
    logical, intent(in), optional :: logscale
    character(len=*), intent(in), optional :: name
  • public subroutine plotIODirectReal32(obj, x, Fx, option, logscale, name)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real32), intent(in) :: x(:)
    real(kind=real32), intent(in) :: Fx(:)
    character(len=*), intent(in), optional :: option
    logical, intent(in), optional :: logscale
    character(len=*), intent(in), optional :: name

procedure, public, pass :: replotIO

Write and replot by gnuplot.

  • public subroutine replotIO(obj, name, option, logscale)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in), optional :: name
    character(len=*), intent(in), optional :: option
    logical, intent(in), optional :: logscale

procedure, public, pass :: replotIODirect

Write and replot by gnuplot.

  • public subroutine replotIODirect(obj, x, Fx, option, logscale, name)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: x(:)
    real(kind=real64), intent(in) :: Fx(:)
    character(len=*), intent(in), optional :: option
    logical, intent(in), optional :: logscale
    character(len=*), intent(in), optional :: name

generic, public :: replot => replotIO, replotIODirect

Write and replot by gnuplot.

  • public subroutine replotIO(obj, name, option, logscale)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in), optional :: name
    character(len=*), intent(in), optional :: option
    logical, intent(in), optional :: logscale
  • public subroutine replotIODirect(obj, x, Fx, option, logscale, name)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    real(kind=real64), intent(in) :: x(:)
    real(kind=real64), intent(in) :: Fx(:)
    character(len=*), intent(in), optional :: option
    logical, intent(in), optional :: logscale
    character(len=*), intent(in), optional :: name

procedure, public :: splot => splotIO

Write and 3D-plot by gnuplot.

  • public subroutine splotIO(obj, name, option, logscale)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in), optional :: name
    character(len=*), intent(in), optional :: option
    logical, intent(in), optional :: logscale

procedure, public :: readline => readlineIO

read a line

  • public function readlineIO(obj) result(ret)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj

    Return Value character(len=:), allocatable

procedure, public :: close => closeIO

close file

  • public subroutine closeIO(obj, status)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: obj
    character(len=*), intent(in), optional :: status

procedure, public :: to_Array => to_Array_real64_IOClass

convert file content to real64-array

  • public function to_Array_real64_IOClass(this, name, column, header, upsampling, debug) result(ret)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: this
    character(len=*), intent(in) :: name
    integer(kind=int32), intent(in) :: column(:)
    integer(kind=int32), intent(in) :: header
    integer(kind=int32), intent(in), optional :: upsampling
    logical, intent(in), optional :: debug

    Return Value real(kind=real64), allocatable, (:,:)

procedure, public :: to_list => to_list_IOClass

convert file content to list

  • public function to_list_IOClass(this, name, column, header, separator, debug) result(ret)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(inout) :: this
    character(len=*), intent(in) :: name
    integer(kind=int32), intent(in) :: column
    integer(kind=int32), intent(in) :: header
    character(len=*), intent(in) :: separator
    logical, intent(in), optional :: debug

    Return Value type(List_)

procedure, public :: bin2vector => bin2vector_real64_IOClass

convert file content written in binary to vector

  • public subroutine bin2vector_real64_IOClass(this, name, vec)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: this
    character(len=*), intent(in) :: name
    real(kind=real64), intent(inout), allocatable :: vec(:)

procedure, public :: vector2bin => vector2bin_real64_IOClass

convert file content written in real64 vector to binary

  • public subroutine vector2bin_real64_IOClass(this, name, vec)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: this
    character(len=*), intent(in) :: name
    real(kind=real64), intent(in) :: vec(:)

procedure, public :: wait => wait_async_IOClass

wait for async (only for async read/write)

  • public subroutine wait_async_IOClass(this)

    Arguments

    Type IntentOptional Attributes Name
    class(IO_), intent(in) :: this