Iguana
Implementation Guardian of Analysis Algorithms
Loading...
Searching...
No Matches
Namespaces
Fortran Bindings Namespaces

C bindings, for Fortran usage. More...

Detailed Description

C bindings, for Fortran usage.

The functions in these namespaces are designed to provide bindings for Fortran (and for C). The function names are all lowercase, and end in an underscore, to permit automatic binding to Fortran 77. Visit each namespace page to view the available functions.

To use a function in Fortran, call it as a subroutine, but without the final underscore; use iso_c_binding data types for the arguments, otherwise you may have subtle runtime problems.

For example, consider the following C function:

void iguana_example_function_(int* a, float* b);

To use this in Fortran:

use iso_c_binding
integer(c_int) a
real(c_float) b
call iguana_example_function(a, b)

To use these bindings with your Fortran code, link against the installed iguana libraries.

See also
A Fortran example: iguana-example-fortran.f
Collaboration diagram for Fortran Bindings Namespaces:

Namespaces

namespace  iguana
 General, top-level namespace for algorithms and infrastructure. For algorithms and bindings, see its sub-namespaces.
 
namespace  iguana::bindings
 General iguana bindings.
 
namespace  iguana::bindings::clas12
 CLAS12 algorithm action function bindings.
 
namespace  iguana::bindings::physics
 Physics algorithm action function bindings.