90 subroutine file_init(this, fname, header, precision, layout, overwrite)
91 class(
file_t),
intent(inout) :: this
92 character(len=*),
intent(in) :: fname
93 character(len=*),
intent(in),
optional :: header
94 integer,
intent(in),
optional :: precision
95 integer,
intent(in),
optional :: layout
96 logical,
intent(in),
optional :: overwrite
97 character(len=80) :: suffix
102 if (
allocated(this%file_type))
then
103 deallocate(this%file_type)
127 this%file_type%serial = .true.
134 call this%file_type%init(fname)
136 if (
present(header))
then
137 call this%set_header(header)
140 if (
present(precision))
then
141 call this%set_precision(precision)
144 if (
present(layout).and. (suffix .eq.
"bp"))
then
145 call this%set_layout(layout)
148 if (
present(overwrite))
then
149 call this%set_overwrite(overwrite)
156 class(
file_t),
intent(inout) :: this
158 if (
allocated(this%file_type))
then
159 deallocate(this%file_type)
167 class(
file_t),
intent(inout) :: this
168 class(*),
intent(inout) :: data
169 real(kind=
rp),
intent(in),
optional :: t
171 call this%file_type%write(
data, t = t)
178 class(
file_t),
intent(in) :: this
179 class(*),
intent(inout) :: data
181 call this%file_type%read(data)
187 class(
file_t),
intent(in) :: this
188 character(len=1024) :: fname
192 select type (ft => this%file_type)
194 fname = ft%get_fname()
201 class(
file_t),
intent(in) :: this
202 character(len=1024) :: fname
206 select type (ft => this%file_type)
208 fname = ft%get_base_fname()
215 class(
file_t),
intent(inout) :: this
219 select type (ft => this%file_type)
228 class(
file_t),
intent(inout) :: this
229 integer,
intent(in) :: n
231 select type (ft => this%file_type)
233 call ft%set_counter(n)
240 class(
file_t),
intent(inout) :: this
241 integer,
intent(in) :: n
243 select type (ft => this%file_type)
245 call ft%set_start_counter(n)
252 class(
file_t),
intent(inout) :: this
253 character(len=*),
intent(in) :: hd
254 character(len=80) :: suffix
256 select type (ft => this%file_type)
258 call ft%set_header(hd)
261 call neko_warning(
"No set_header defined for " // trim(suffix) //
" yet")
269 class(
file_t),
intent(inout) :: this
270 integer,
intent(in) :: precision
271 character(len=80) :: suffix
273 select type (ft => this%file_type)
275 call ft%set_precision(precision)
277 call ft%set_precision(precision)
280 call neko_warning(
"No precision strategy defined for " // trim(suffix) &
289 class(
file_t),
intent(inout) :: this
290 integer,
intent(in) :: layout
291 character(len=80) :: suffix
293 select type (ft => this%file_type)
295 call ft%set_layout(layout)
298 call neko_warning(
"No set_layout defined for " // trim(suffix) //
" yet")
305 class(
file_t),
intent(inout) :: this
306 logical,
intent(in) :: overwrite
307 character(len=80) :: suffix
309 select type (ft => this%file_type)
311 call ft%set_overwrite(overwrite)
Neko checkpoint file format.
File format for .csv files, used for any read/write operations involving floating point data.
Module for file I/O operations.
subroutine file_set_header(this, hd)
Set a file's header.
subroutine file_set_overwrite(this, overwrite)
Sets the file's overwrite flag.
subroutine file_set_start_counter(this, n)
Set a file's start counter.
subroutine file_set_counter(this, n)
Set a file's counter.
character(len=1024) function file_get_fname(this)
Get a file's name.
subroutine file_set_layout(this, layout)
Set a file's output layout.
integer function file_get_counter(this)
Get a file's counter.
subroutine file_read(this, data)
Read data from a file.
subroutine file_set_precision(this, precision)
Set a file's output precision.
subroutine file_free(this)
File operation destructor.
subroutine file_init(this, fname, header, precision, layout, overwrite)
Constructor.
character(len=1024) function file_get_base_fname(this)
Get a file's base name.
subroutine file_write(this, data, t)
Writes data to a file.
Simple module to handle fld file series. Provides an interface to the different fields sotred in a fl...
integer, parameter, public rp
Global precision used in computations.
NEKTON mesh data in re2 format.
NEKTON session data reader.
Stereolithography (STL) file.
subroutine, public neko_warning(warning_msg)
Reports a warning to standard output.
subroutine, public filename_suffix(fname, suffix)
Extract a filename's suffix.
Interface for ADIOS2 bp files.
Interface for Neko checkpoint files.
A wrapper around a polymorphic generic_file_t that handles its init. This is essentially a factory fo...
Interface for NEKTON fld files.
Interface for HDF5 files.
Interface for NEKTON map files.
Interface for Neko nmsh files.
Interface for NEKTON re2 files.
Interface for NEKTON ascii files.
Interface for legacy VTK files.