Annotation of rpl/src/rplftypes.inc, revision 1.17

1.1       bertrand    1: !===============================================================================
1.16      bertrand    2: ! RPL/2 (R) version 4.1.0.prerelease.0
1.14      bertrand    3: ! Copyright (C) 1989-2011 Dr. BERTRAND Joël
1.1       bertrand    4: !
                      5: ! This file is part of RPL/2.
                      6: !
                      7: ! RPL/2 is free software; you can redistribute it and/or modify it
                      8: ! under the terms of the CeCILL V2 License as published by the french
                      9: ! CEA, CNRS and INRIA.
                     10: !
                     11: ! RPL/2 is distributed in the hope that it will be useful, but WITHOUT
                     12: ! ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
                     13: ! FITNESS FOR A PARTICULAR PURPOSE.  See the CeCILL V2 License
                     14: ! for more details.
                     15: !
                     16: ! You should have received a copy of the CeCILL License
                     17: ! along with RPL/2. If not, write to info@cecill.info.
                     18: !===============================================================================
1.17    ! bertrand   19: <<<<<<< rplftypes.inc
        !            20: ! RPL/2 (R) version 4.1.0.prerelease.0
        !            21: =======
        !            22: ! RPL/2 (R) version 4.0.23
        !            23: >>>>>>> 1.15.2.2
        !            24: ! Copyright (C) 1989-2011 Dr. BERTRAND Joël
        !            25: !
        !            26: ! This file is part of RPL/2.
        !            27: !
        !            28: ! RPL/2 is free software; you can redistribute it and/or modify it
        !            29: ! under the terms of the CeCILL V2 License as published by the french
        !            30: ! CEA, CNRS and INRIA.
        !            31: !
        !            32: ! RPL/2 is distributed in the hope that it will be useful, but WITHOUT
        !            33: ! ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
        !            34: ! FITNESS FOR A PARTICULAR PURPOSE.  See the CeCILL V2 License
        !            35: ! for more details.
        !            36: !
        !            37: ! You should have received a copy of the CeCILL License
        !            38: ! along with RPL/2. If not, write to info@cecill.info.
        !            39: !===============================================================================
1.1       bertrand   40: 
                     41: 
                     42: #ifndef INCLUSION_RPLFTYPES
                     43: #  define INCLUSION_RPLFTYPES
                     44: 
                     45: #  ifdef RPLCONFIG
                     46: #      define HAVE_CONFIG_H
                     47: #  endif
                     48: 
                     49: #  ifdef HAVE_CONFIG_H
                     50: 
                     51: #      include "rplconfig.h"
                     52: 
                     53: #      if (SIZEOF_CHAR == 1)
                     54: #          ifndef _INT1
                     55: #              define _INT1
                     56: #              define rpl_char                 C_CHAR
                     57: #          endif
                     58: #      endif
                     59: 
                     60: #      if (SIZEOF_SHORT_INT == 2)
                     61: #          ifndef _INT2
                     62: #              define _INT2
                     63: #              define rpl_integer2             C_SHORT
                     64: #          endif
                     65: #      endif
                     66: 
                     67: #      if (SIZEOF_INT == 4)
                     68: #          ifndef _INT4
                     69: #              define _INT4
                     70: #              define rpl_integer4             C_INT
                     71: #          endif
                     72: #      endif
                     73: 
                     74: #      if (SIZEOF_LONG_INT == 4)
                     75: #          ifndef _INT4
                     76: #              define _INT4
                     77: #              define rpl_integer4             C_LONG
                     78: #          endif
                     79: #      endif
                     80: 
                     81: #      if (SIZEOF_LONG_INT == 8)
                     82: #          ifndef _INT8
                     83: #              define _INT8
                     84: #              define rpl_integer8             C_LONG
                     85: #          endif
                     86: #      endif
                     87: 
                     88: #      if (SIZEOF_LONG_LONG_INT == 8)
                     89: #          ifndef _INT8
                     90: #              define _INT8
                     91: #              define rpl_integer8             C_LONG_LONG
                     92: #          endif
                     93: #      endif
                     94: 
                     95: #      if (SIZEOF_FLOAT == 4)
                     96: #          ifndef _REAL4
                     97: #              define _REAL4
                     98: #              define rpl_real4                C_FLOAT
                     99: #          endif
                    100: #      endif
                    101: 
                    102: #      if (SIZEOF_DOUBLE == 8)
                    103: #          ifndef _REAL8
                    104: #              define _REAL8
                    105: #              define rpl_real8                C_DOUBLE
                    106: #          endif
                    107: #      endif
                    108: 
                    109: #      if (SIZEOF_LONG_DOUBLE == 8)
                    110: #          ifndef _REAL8
                    111: #              define _REAL8
                    112: #              define rpl_real8                C_LONG_DOUBLE
                    113: #          endif
                    114: #      endif
                    115: 
                    116: #      ifndef _INT1
                    117: #          error "INTEGER*1 is not defined !"
                    118: #      endif
                    119: 
                    120: #      ifndef _INT2
                    121: #          error "INTEGER*2 is not defined !"
                    122: #      endif
                    123: 
                    124: #      ifndef _INT4
                    125: #          error "INTEGER*4 is not defined !"
                    126: #      endif
                    127: 
                    128: #      ifndef _INT8
                    129: #          error "INTEGER*8 is not defined !"
                    130: #      endif
                    131: 
                    132: #      ifndef _REAL4
                    133: #          error "REAL*4 is not defined !"
                    134: #      endif
                    135: 
                    136: #      ifndef _REAL8
                    137: #          error "REAL*8 is not defined !"
                    138: #      endif
                    139: #  else
                    140: #      error "rplconfig.h header not found !"
                    141: #  endif
                    142: 
                    143:    module rpl_complex
                    144:        use iso_c_binding
                    145:        implicit none
                    146: 
                    147:        type rpl_complex8
                    148:            sequence
                    149:            real(rpl_real4) partie_reelle
                    150:            real(rpl_real4) partie_imaginaire
                    151:        end type
                    152: 
                    153:        type rpl_complex16
                    154:            sequence
                    155:            real(rpl_real8) partie_reelle
                    156:            real(rpl_real8) partie_imaginaire
                    157:        end type
                    158:    end module
                    159: #endif
                    160: 
                    161: ! vim: ts=4

CVSweb interface <joel.bertrand@systella.fr>