vtm_file Derived Type

type, public :: vtm_file


Inherits

type~~vtm_file~~InheritsGraph type~vtm_file vtm_file type~xml_writer_abstract xml_writer_abstract type~vtm_file->type~xml_writer_abstract xml_writer type~string string type~xml_writer_abstract->type~string format_ch, topology, xml_volatile type~xml_tag xml_tag type~xml_writer_abstract->type~xml_tag tag type~xml_tag->type~string tag_name, tag_content, attribute

Contents

Source Code


Components

TypeVisibilityAttributesNameInitial
class(xml_writer_abstract), public, allocatable:: xml_writer
integer(kind=I4P), public, allocatable:: scratch_unit(:)

Type-Bound Procedures

procedure, public, pass(self) :: initialize

  • private function initialize(self, filename, scratch_units_number) result(error)

    Arguments

    TypeIntentOptionalAttributesName
    class(vtm_file), intent(inout) :: self
    character, intent(in) :: filename
    integer(kind=I4P), intent(in), optional :: scratch_units_number

    Return Value integer(kind=I4P)

procedure, public, pass(self) :: finalize

  • private function finalize(self) result(error)

    Arguments

    TypeIntentOptionalAttributesName
    class(vtm_file), intent(inout) :: self

    Return Value integer(kind=I4P)

generic, public :: write_block => write_block_array, write_block_string, write_block_scratch

  • private function write_block_array(self, filenames, names, name) result(error)

    Arguments

    TypeIntentOptionalAttributesName
    class(vtm_file), intent(inout) :: self
    character, intent(in) :: filenames(1:)
    character, intent(in), optional :: names(1:)
    character, intent(in), optional :: name

    Return Value integer(kind=I4P)

  • private function write_block_string(self, action, filenames, names, name) result(error)

    Arguments

    TypeIntentOptionalAttributesName
    class(vtm_file), intent(inout) :: self
    character, intent(in), optional :: action
    character, intent(in), optional :: filenames
    character, intent(in), optional :: names
    character, intent(in), optional :: name

    Return Value integer(kind=I4P)

  • private function write_block_scratch(self, scratch, action, filename, name) result(error)

    Arguments

    TypeIntentOptionalAttributesName
    class(vtm_file), intent(inout) :: self
    integer(kind=I4P), intent(in) :: scratch
    character, intent(in) :: action
    character, intent(in), optional :: filename
    character, intent(in), optional :: name

    Return Value integer(kind=I4P)

procedure, private, pass(self) :: write_block_array

  • private function write_block_array(self, filenames, names, name) result(error)

    Arguments

    TypeIntentOptionalAttributesName
    class(vtm_file), intent(inout) :: self
    character, intent(in) :: filenames(1:)
    character, intent(in), optional :: names(1:)
    character, intent(in), optional :: name

    Return Value integer(kind=I4P)

procedure, private, pass(self) :: write_block_string

  • private function write_block_string(self, action, filenames, names, name) result(error)

    Arguments

    TypeIntentOptionalAttributesName
    class(vtm_file), intent(inout) :: self
    character, intent(in), optional :: action
    character, intent(in), optional :: filenames
    character, intent(in), optional :: names
    character, intent(in), optional :: name

    Return Value integer(kind=I4P)

procedure, private, pass(self) :: parse_scratch_files

  • private function parse_scratch_files(self) result(error)

    Arguments

    TypeIntentOptionalAttributesName
    class(vtm_file), intent(inout) :: self

    Return Value integer(kind=I4P)

procedure, private, pass(self) :: write_block_scratch

  • private function write_block_scratch(self, scratch, action, filename, name) result(error)

    Arguments

    TypeIntentOptionalAttributesName
    class(vtm_file), intent(inout) :: self
    integer(kind=I4P), intent(in) :: scratch
    character, intent(in) :: action
    character, intent(in), optional :: filename
    character, intent(in), optional :: name

    Return Value integer(kind=I4P)

Source Code

type :: vtm_file
   !< VTM file class.
   class(xml_writer_abstract), allocatable, public :: xml_writer      !< XML writer.
   integer(I4P), allocatable                       :: scratch_unit(:) !< Scratch units for very large list of named blocks.
   contains
      ! public methods
      procedure, pass(self) :: initialize          !< Initialize file.
      procedure, pass(self) :: finalize            !< Finalize file.
      generic               :: write_block =>      &
                               write_block_array,  &
                               write_block_string, &
                               write_block_scratch !< Write one block dataset.
      ! private methods
      procedure, pass(self), private :: write_block_array  !< Write one block dataset (array input).
      procedure, pass(self), private :: write_block_string !< Write one block dataset (string input).
      ! scratch files methods``
      procedure, pass(self), private :: parse_scratch_files !< Parse scratch files.
      procedure, pass(self), private :: write_block_scratch !< Write one block dataset on scratch files.
endtype vtm_file