Back to index

salome-kernel  6.5.0
calciumE.h
Go to the documentation of this file.
00001 // Copyright (C) 2007-2012  CEA/DEN, EDF R&D, OPEN CASCADE
00002 //
00003 // This library is free software; you can redistribute it and/or
00004 // modify it under the terms of the GNU Lesser General Public
00005 // License as published by the Free Software Foundation; either
00006 // version 2.1 of the License.
00007 //
00008 // This library is distributed in the hope that it will be useful,
00009 // but WITHOUT ANY WARRANTY; without even the implied warranty of
00010 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00011 // Lesser General Public License for more details.
00012 //
00013 // You should have received a copy of the GNU Lesser General Public
00014 // License along with this library; if not, write to the Free Software
00015 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
00016 //
00017 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
00018 //
00019 
00020 //  File   : calcium.h
00021 //  Author : Eric Fayolle (EDF)
00022 //  Module : KERNEL
00023 //
00024 /* Outils d'Aide au Couplage de Code de Calcul : $Id: calciumE.h,v 1.2.2.1.10.2.12.1 2012-04-12 14:05:07 vsr Exp $ */
00025 
00026 #ifndef __CALCIUM_E_H
00027 #define __CALCIUM_E_H
00028 
00029 #include "calciumP.h"
00030 
00031 #if defined(__STDC__) || defined(__cplusplus) || defined(c_plusplus)
00032 #define CPNeedPrototype 1
00033 #else
00034 #define CPNeedPrototype 0
00035 #endif
00036 
00037 
00038 #if defined(__cplusplus) || defined(c_plusplus)
00039 extern "C" {
00040 #endif
00041 
00042 /*                                              */
00043 /*                                              */
00044 /* Fonctions de connexion                       */
00045 /*                                              */
00046 /*                                              */
00047 extern int      ecp_cd(
00048 /*              -----                           */
00049 #if CPNeedPrototype
00050         void * component /* Pointeur de type Superv_Component_i* sur le */
00051                          /* composant SALOME Supervisable  */,
00052         char  * /* S   Nom de l instance appelante*/
00053 #endif
00054 );
00055 
00056 
00057 /*                                              */
00058 /*                                              */
00059 /* Fonction de deconnexion                      */
00060 /*                                              */
00061 /*                                              */
00062 extern int      ecp_fin(
00063 /*              ------                          */
00064 #if CPNeedPrototype
00065         void * component /* Pointeur de type Superv_Component_i* sur le */
00066                          /* composant SALOME Supervisable  */,
00067         int     /* E Directive de continuation  */
00068                 /* CP_CONT ou CP_ARRET          */
00069 #endif
00070 );
00071 
00072 /*                                              */
00073 /*                                              */
00074 /* Fonctions de libération du buffer 0 copy  */
00075 /*                                              */
00076 
00077   extern void ecp_len_free(
00078 #if CPNeedPrototype
00079                            int *
00080 #endif
00081                            );
00082   extern void ecp_lre_free(
00083 #if CPNeedPrototype
00084                            float *
00085 #endif
00086                            );
00087   extern void ecp_ldb_free(
00088 #if CPNeedPrototype
00089                            double *
00090 #endif
00091                            );
00092   extern void ecp_llo_free(
00093 #if CPNeedPrototype
00094                            int *
00095 #endif
00096                            );
00097   extern void ecp_lcp_free(
00098 #if CPNeedPrototype
00099                            float *
00100 #endif
00101                            );
00102   extern void ecp_lch_free(
00103 #if CPNeedPrototype
00104                            char **
00105 #endif
00106                            );
00107 
00108 
00109 
00110 /*                                              */
00111 /*                                              */
00112 /* Fonctions de lecture bloquante 0 copy        */
00113 /*                                              */
00114 /*                                              */
00115 extern int      ecp_len(
00116 /*              ------                                          */
00117 #if CPNeedPrototype
00118         void * component /* Pointeur de type Superv_Component_i* sur le */
00119                          /* composant SALOME Supervisable  */,
00120         int     /* E   Type de dependance ou de lecture         */
00121                 /*     CP_TEMPS, CP_ITERATION, CP_SEQUENTIEL    */,
00122         float * /* E/S Borne inf de l'intervalle de lecture     */
00123                 /*     Retourne le pas lu dans le cas de        */
00124                 /*     lecture sequentielle                     */,
00125         float * /* E   Borne Sup de l'intervalle de lecture     */,
00126         int   * /* E/S Pas d'iteration a lire                   */
00127                 /*     Retourne le pas lu dans le cas de        */
00128                 /*     lecture sequentielle                     */,
00129         char  * /* E   Nom de la variable a lire                */,
00130         int     /* E   Nombre max de valeurs a lire             */,
00131         int   * /* S   Nombre de valeurs rellement lues         */,
00132         int   ** /* E/S   Tableau d'entiers pour stocker les    */
00133                 /*     valeurs lues                             */
00134 #endif
00135 );
00136 
00137 extern int      ecp_lre(
00138 /*              ------                                          */
00139 #if CPNeedPrototype
00140         void * component /* Pointeur de type Superv_Component_i* sur le */
00141                          /* composant SALOME Supervisable  */,
00142         int     /* E   Type de dependance ou de lecture         */
00143                 /*     CP_TEMPS, CP_ITERATION, CP_SEQUENTIEL    */,
00144         float * /* E/S Borne inf de l'intervalle de lecture     */
00145                 /*     Retourne le pas lu dans le cas de        */
00146                 /*     lecture sequentielle                     */,
00147         float * /* E   Borne Sup de l'intervalle de lecture     */,
00148         int   * /* E/S Pas d'iteration a lire                   */
00149                 /*     Retourne le pas lu dans le cas de        */
00150                 /*     lecture sequentielle                     */,
00151         char  * /* E   Nom de la variable a lire                */,
00152         int     /* E   Nombre max de valeurs a lire             */,
00153         int   * /* S   Nombre de valeurs rellement lues         */,
00154         float **/* E/S   Tableau de flottants pour stocker les  */
00155                 /*     valeurs lues                             */
00156 #endif
00157 );
00158 
00159 extern int      ecp_ldb(
00160 /*              ------                                          */
00161 #if CPNeedPrototype
00162         void * component /* Pointeur de type Superv_Component_i* sur le */
00163                          /* composant SALOME Supervisable  */,
00164         int     /* E   Type de dependance ou de lecture         */
00165                 /*     CP_TEMPS, CP_ITERATION, CP_SEQUENTIEL    */,
00166         double* /* E/S Borne inf de l'intervalle de lecture     */
00167                 /*     Retourne le pas lu dans le cas de        */
00168                 /*     lecture sequentielle                     */,
00169         double* /* E   Borne Sup de l'intervalle de lecture     */,
00170         int   * /* E/S Pas d'iteration a lire                   */
00171                 /*     Retourne le pas lu dans le cas de        */
00172                 /*     lecture sequentielle                     */,
00173         char  * /* E   Nom de la variable a lire                */,
00174         int     /* E   Nombre max de valeurs a lire             */,
00175         int   * /* S   Nombre de valeurs rellement lues         */,
00176         double**/* E/S   Tableau de doubles pour stocker les    */
00177                 /*     valeurs lues                             */
00178 #endif
00179 );
00180 
00181 extern int      ecp_lcp(
00182 /*              ------                                          */
00183 #if CPNeedPrototype
00184         void * component /* Pointeur de type Superv_Component_i* sur le */
00185                          /* composant SALOME Supervisable  */,
00186         int     /* E   Type de dependance ou de lecture         */
00187                 /*     CP_TEMPS, CP_ITERATION, CP_SEQUENTIEL    */,
00188         float * /* E/S Borne inf de l'intervalle de lecture     */
00189                 /*     Retourne le pas lu dans le cas de        */
00190                 /*     lecture sequentielle                     */,
00191         float * /* E   Borne Sup de l'intervalle de lecture     */,
00192         int   * /* E/S Pas d'iteration lire                     */
00193                 /*     Retourne le pas lu dans le cas de        */
00194                 /*     lecture sequentielle                     */,
00195         char  * /* E   Nom de la variable a lire                */,
00196         int     /* E   Nombre max de valeurs a lire             */,
00197         int   * /* S   Nombre de valeurs rellement lues         */,
00198         float **/* E/S   Tableau de flottants pour stocker les  */
00199                 /*     valeurs lues (dimension = 2 * le nombre  */
00200                 /*     de valeurs lues)                         */
00201 #endif
00202 );
00203 
00204 extern int      ecp_llo(
00205 /*              ------                                          */
00206 #if CPNeedPrototype
00207         void * component /* Pointeur de type Superv_Component_i* sur le */
00208                          /* composant SALOME Supervisable  */,
00209         int     /* E   Type de dependance ou de lecture         */
00210                 /*     CP_TEMPS, CP_ITERATION, CP_SEQUENTIEL    */,
00211         float * /* E/S Borne inf de l'intervalle de lecture     */
00212                 /*     Retourne le pas lu dans le cas de        */
00213                 /*     lecture sequentielle                     */,
00214         float * /* E   Borne Sup de l'intervalle de lecture     */,
00215         int   * /* E/S Pas d'iteration a lire                   */
00216                 /*     Retourne le pas lu dans le cas de        */
00217                 /*     lecture sequentielle                     */,
00218         char  * /* E   Nom de la variable a lire                */,
00219         int     /* E   Nombre max de valeurs a lire             */,
00220         int   * /* S   Nombre de valeurs rellement lues         */,
00221         int  ** /* E/S   Tableau d 'entier pour stocker les     */
00222                 /*     valeurs lues (remplace le logiques)      */
00223 #endif
00224 );
00225 
00226 extern int      ecp_lch(
00227 /*              ------                                          */
00228 #if CPNeedPrototype
00229         void * component /* Pointeur de type Superv_Component_i* sur le */
00230                          /* composant SALOME Supervisable  */,
00231         int     /* E   Type de dependance ou de lecture         */
00232                 /*     CP_TEMPS, CP_ITERATION, CP_SEQUENTIEL    */,
00233         float * /* E/S Borne inf de l'intervalle de lecture     */
00234                 /*     Retourne le pas lu dans le cas de        */
00235                 /*     lecture sequentielle                     */,
00236         float * /* E   Borne Sup de l'intervalle de lecture     */,
00237         int   * /* E/S Pas d'iteration a lire                   */
00238                 /*     Retourne le pas lu dans le cas de        */
00239                 /*     lecture sequentielle                     */,
00240         char  * /* E   Nom de la variable a lire                */,
00241         int     /* E   Nombre max de valeurs a lire             */,
00242         int   * /* S   Nombre de valeurs rellement lues         */,
00243         char **[]/*E/S   Tableau de chaines pour stocker les    */
00244                 /*     valeurs lues (remplace le logiques)      */,
00245         int     /* E   Taille des chaines du tablaeu            */
00246 #endif
00247 );
00248 
00249 
00250 
00251 /*                                              */
00252 /*                                              */
00253 /* Fonctions de lecture non bloquantes          */
00254 /*                                              */
00255 /*                                              */
00256 extern int      ecp_nlen(
00257 /*              -------                                         */
00258 #if CPNeedPrototype
00259         void * component /* Pointeur de type Superv_Component_i* sur le */
00260                          /* composant SALOME Supervisable  */,
00261         int     /* E   Type de dependance ou de lecture         */
00262                 /*     CP_TEMPS, CP_ITERATION, CP_SEQUENTIEL    */,
00263         float * /* E/S Borne inf de l'intervalle de lecture     */
00264                 /*     Retourne le pas lu dans le cas de        */
00265                 /*     lecture sequentielle                     */,
00266         float * /* E   Borne Sup de l'intervalle de lecture     */,
00267         int   * /* E/S Pas d'iteration a lire                   */
00268                 /*     Retourne le pas lu dans le cas de        */
00269                 /*     lecture sequentielle                     */,
00270         char  * /* E   Nom de la variable a lire                */,
00271         int     /* E   Nombre max de valeurs a lire             */,
00272         int   * /* S   Nombre de valeurs rellement lues         */,
00273         int  ** /* E/S   Tableau d'entiers pour stocker les     */
00274                 /*     valeurs lues                             */
00275 #endif
00276 );
00277 
00278 extern int      ecp_nlre(
00279 /*              -------                                         */
00280 #if CPNeedPrototype
00281         void * component /* Pointeur de type Superv_Component_i* sur le */
00282                          /* composant SALOME Supervisable  */,
00283         int     /* E   Type de dependance ou de lecture         */
00284                 /*     CP_TEMPS, CP_ITERATION, CP_SEQUENTIEL    */,
00285         float * /* E/S Borne inf de l'intervalle de lecture     */
00286                 /*     Retourne le pas lu dans le cas de        */
00287                 /*     lecture sequentielle                     */,
00288         float * /* E   Borne Sup de l'intervalle de lecture     */,
00289         int   * /* E/S Pas d'iteration a lire                   */
00290                 /*     Retourne le pas lu dans le cas de        */
00291                 /*     lecture sequentielle                     */,
00292         char  * /* E   Nom de la variable a lire                */,
00293         int     /* E   Nombre max de valeurs a lire             */,
00294         int   * /* S   Nombre de valeurs rellement lues         */,
00295         float **/* E/S   Tableau de flottants pour stocker les  */
00296                 /*     valeurs lues                             */
00297 #endif
00298 );
00299 
00300 extern int      ecp_nldb(
00301 /*              -------                                         */
00302 
00303 #if CPNeedPrototype
00304         void * component /* Pointeur de type Superv_Component_i* sur le */
00305                          /* composant SALOME Supervisable  */,
00306         int     /* E   Type de dependance ou de lecture         */
00307                 /*     CP_TEMPS, CP_ITERATION, CP_SEQUENTIEL    */,
00308         double */* E/S Borne inf de l'intervalle de lecture     */
00309                 /*     Retourne le pas lu dans le cas de        */
00310                 /*     lecture sequentielle                     */,
00311         double */* E   Borne Sup de l'intervalle de lecture     */,
00312         int   * /* E/S Pas d'iteration a lire                   */
00313                 /*     Retourne le pas lu dans le cas de        */
00314                 /*     lecture sequentielle                     */,
00315         char  * /* E   Nom de la variable a lire                */,
00316         int     /* E   Nombre max de valeurs a lire             */,
00317         int   * /* S   Nombre de valeurs rellement lues         */,
00318         double**/* E/S   Tableau de doubles pour stocker les    */
00319                 /*     valeurs lues                             */
00320 #endif
00321 );
00322 
00323 extern int      ecp_nlcp(
00324 /*              -------                                         */
00325 #if CPNeedPrototype
00326         void * component /* Pointeur de type Superv_Component_i* sur le */
00327                          /* composant SALOME Supervisable  */,
00328         int     /* E   Type de dependance ou de lecture         */
00329                 /*     CP_TEMPS, CP_ITERATION, CP_SEQUENTIEL    */,
00330         float * /* E/S Borne inf de l'intervalle de lecture     */
00331                 /*     Retourne le pas lu dans le cas de        */
00332                 /*     lecture sequentielle                     */,
00333         float * /* E   Borne Sup de l'intervalle de lecture     */,
00334         int   * /* E/S Pas d'iteration lire                     */
00335                 /*     Retourne le pas lu dans le cas de        */
00336                 /*     lecture sequentielle                     */,
00337         char  * /* E   Nom de la variable a lire                */,
00338         int     /* E   Nombre max de valeurs a lire             */,
00339         int   * /* S   Nombre de valeurs rellement lues         */,
00340         float **/* E/S   Tableau de flottants pour stocker les  */
00341                 /*     valeurs lues (dimension = 2 * le nombre  */
00342                 /*     de valeurs lues)                         */
00343 #endif
00344 );
00345 
00346 extern int      ecp_nllo(
00347 /*              -------                                         */
00348 #if CPNeedPrototype
00349         void * component /* Pointeur de type Superv_Component_i* sur le */
00350                          /* composant SALOME Supervisable  */,
00351         int     /* E   Type de dependance ou de lecture         */
00352                 /*     CP_TEMPS, CP_ITERATION, CP_SEQUENTIEL    */,
00353         float * /* E/S Borne inf de l'intervalle de lecture     */
00354                 /*     Retourne le pas lu dans le cas de        */
00355                 /*     lecture sequentielle                     */,
00356         float * /* E   Borne Sup de l'intervalle de lecture     */,
00357         int   * /* E/S Pas d'iteration a lire                   */
00358                 /*     Retourne le pas lu dans le cas de        */
00359                 /*     lecture sequentielle                     */,
00360         char  * /* E   Nom de la variable a lire                */,
00361         int     /* E   Nombre max de valeurs a lire             */,
00362         int   * /* S   Nombre de valeurs rellement lues         */,
00363         int   **/* E/S   Tableau d 'entier pour stocker les     */
00364                 /*     valeurs lues (remplace le logiques)      */
00365 #endif
00366 );
00367 
00368 extern int      ecp_nlch(
00369 /*              -------                                         */
00370 #if CPNeedPrototype
00371         void * component /* Pointeur de type Superv_Component_i* sur le */
00372                          /* composant SALOME Supervisable  */,
00373         int     /* E   Type de dependance ou de lecture         */
00374                 /*     CP_TEMPS, CP_ITERATION, CP_SEQUENTIEL    */,
00375         float * /* E/S Borne inf de l'intervalle de lecture     */
00376                 /*     Retourne le pas lu dans le cas de        */
00377                 /*     lecture sequentielle                     */,
00378         float * /* E   Borne Sup de l'intervalle de lecture     */,
00379         int   * /* E/S Pas d'iteration a lire                   */
00380                 /*     Retourne le pas lu dans le cas de        */
00381                 /*     lecture sequentielle                     */,
00382         char  * /* E   Nom de la variable a lire                */,
00383         int     /* E   Nombre max de valeurs a lire             */,
00384         int   * /* S   Nombre de valeurs rellement lues         */,
00385         char **[]/* E/S   Tableau de chaines pour stocker les   */
00386                 /*     valeurs lues (remplace le logiques)      */,
00387         int     /* E   Taille des chaines du tablaeu            */
00388 #endif
00389 );
00390 
00391 
00392 
00393 #if defined(__cplusplus) || defined(c_plusplus)
00394 }
00395 #endif
00396 
00397 
00398 #endif