Fortran SFF API to data I/O streams in C++. The aim of this library is to provide Fortran 77 code written to be linked against libsff.a with the full functionality in libdatrwxx.a.
Repository location: src/libs/libfapidxx
This library provides an API for Fortran programs. It mimics the API of libsff with an interface to libdatrwxx. Using this interface, Fortran programs written with libsff can make full benefit of libdatrwxx features without larger modifications to the source code. libdatrwxx support input and output of (increasingly) many seismic data formats. Fortran programs which are designed to read and write seismic data in SFF format through libsff can now benefit from the full functionality of libdatrwxx. libfapidxx provides a Fortran API (application programming interface) to libdatrwxx which mimics the API of libsff. This way programs originally written to use libsff can make use of the full functionality of libdatrwxx with only minor modifications to the source code.
Howto use libfapidxx
Writing time series
An example on how to access libfapidxx from an existing Fortran program is available through
git diff 61607047c841e75d39ecb0a2de515d^1 61607047c841e75d39ecb0a2de515d
or online which displays the implementation in siggen.f
Reading and writing time series
The way src/ts/wf/evelo.f from src/ts/wf was equipped with additional source code lines may serve as a cookbook-example (see code browser). The respective changes to the source code were applied with commit 75fca8c0 and the target evelox was added with commit c456f04f to src/ts/wf/Makefile (see code browser).
git diff 75fca8c01 c456f04f8~1