f77proto.h 2.65 KB
 thomas.forbriger committed Dec 23, 2002 1 2 3 4 5 /*! \file f77proto.h * \brief prototypes for Fortran interface (prototypes) * * ---------------------------------------------------------------------------- *  thomas.forbriger committed Dec 27, 2002 6  * $Id: f77proto.h,v 1.4 2002-12-27 16:18:08 forbrig Exp$  thomas.forbriger committed Dec 23, 2002 7 8 9 10  * \author Thomas Forbriger * \date 22/12/2002 * * prototypes for Fortran interface (prototypes)  thomas.forbriger committed Dec 27, 2002 11 12 13  * * \sa \ref page_fortran * \sa f77interface  thomas.forbriger committed Dec 23, 2002 14 15 16 17 18  * * Copyright (c) 2002 by Thomas Forbriger (IMG Frankfurt) * * REVISIONS and CHANGES * - 22/12/2002 V1.0 Thomas Forbriger  thomas.forbriger committed Dec 27, 2002 19 20  * - 27/12/2002 V1.1 (thof) * - now provides some documentation  thomas.forbriger committed Dec 23, 2002 21 22 23 24 25  * * ============================================================================ */ // include guard  thomas.forbriger committed Dec 23, 2002 26 #ifndef AFF_F77PROTO_H_VERSION  thomas.forbriger committed Dec 23, 2002 27   thomas.forbriger committed Dec 23, 2002 28 #define AFF_F77PROTO_H_VERSION \  thomas.forbriger committed Dec 27, 2002 29  "AFF_F77PROTO_H V1.1"  thomas.forbriger committed Dec 23, 2002 30 #define AFF_F77PROTO_H_CVSID \  thomas.forbriger committed Dec 27, 2002 31  "$Id: f77proto.h,v 1.4 2002-12-27 16:18:08 forbrig Exp$"  thomas.forbriger committed Dec 23, 2002 32   thomas.forbriger committed Dec 23, 2002 33 #include  thomas.forbriger committed Dec 23, 2002 34   thomas.forbriger committed Dec 23, 2002 35 36 #include  thomas.forbriger committed Dec 27, 2002 37 38 39 40 41 42 /*! \brief This namespace collects all test functions for interfacing Fortran 77 * * \sa \ref page_fortran * \sa tests/f77test.cc * \sa tests/f77interface.cc */  thomas.forbriger committed Dec 23, 2002 43 namespace f77interface {  thomas.forbriger committed Dec 23, 2002 44   thomas.forbriger committed Dec 23, 2002 45 46 47 typedef aff::Array > Tcarray; typedef aff::Array > Tzarray;  thomas.forbriger committed Dec 27, 2002 48 49 50 51 52 53 /*! \brief fill an AFF array thorugh a Fortran subroutine * * An aff::Array object is passed to the Fortran subroutine fill and is * filled with values there. * The concept is discussed on page "\ref page_fortran". */  thomas.forbriger committed Dec 23, 2002 54 int fill(const aff::Array& fa);  thomas.forbriger committed Dec 27, 2002 55 56 57 58 59 60 61 62 63 64  /*! \brief fill the Fortran common-block array * * Two aff::Array objects are passed to the Fortran subroutine * fillarray which calculates complex values from the elements of these arrays * and fills the array in common-block \c f77common which is defined in * tests/f77common.inc. * * The concept is discussed on page "\ref page_fortran". */  thomas.forbriger committed Dec 23, 2002 65 66 int fillarray(const aff::Array& v1, const aff::Array& v2);  thomas.forbriger committed Dec 27, 2002 67 68 69 70 71 72 73 74 75  /*! \brief returns results from Fortran subroutine sums * * The Fortran subroutine sums calculates column-sums from the array in the * common block. These values are return in an * \code aff::Array > \endcode object. * * The concept is discussed on page "\ref page_fortran". */  thomas.forbriger committed Dec 23, 2002 76 Tcarray sums();  thomas.forbriger committed Dec 27, 2002 77 78 79 80 81 82 83 84 85 86  /*! \brief returns direct access to Fortran common block * * This function returns a * \code aff::Array > \endcode object, which offers * direct read/write access to the array in the Fortran common block * f77common. * * The concept is discussed on page "\ref page_fortran". */  thomas.forbriger committed Dec 23, 2002 87 Tzarray viewcommon();  thomas.forbriger committed Dec 23, 2002 88 89 90 91 92  } // namespace f77interface #endif // AFF_F77PROTO_H_VERSION (includeguard)  thomas.forbriger committed Dec 23, 2002 93 94  /* ----- END OF f77proto.h ----- */