MOAB: Mesh Oriented datABase
(version 5.4.1)
|
00001 #ifndef IMESHP_REC_CBIND_H__ 00002 #define IMESHP_REC_CBIND_H__ 00003 00004 #include "iMeshP.h" 00005 #include "iMeshP_protos.h" 00006 #include "moab_mpi.h" 00007 00008 #ifdef __cplusplus 00009 extern "C" { 00010 #endif 00011 00012 /** \brief Convert a fortran to C communicator 00013 * Given a Fortran communicator, convert to a C communicator that can be passed back to iMeshP. 00014 * Though this is an iMeshP function, it doesn't take an iMeshP Partition handle, since the (C) 00015 * communicator is needed by the function that creates the partition. 00016 * COMMUNICATION: None. 00017 * 00018 * \param instance (In) Mesh instance to contain the partition. 00019 * \param fcomm (In) Pointer to fortran communicator 00020 * \param ccomm (Out) Pointer to the C communicator 00021 * \param err (Out) Error code. 00022 */ 00023 void iMeshP_getCommunicator( iMesh_Instance instance, int* fcomm, MPI_Comm* ccomm, int* err ); 00024 00025 /** \brief Assign a global id space to entities 00026 * Assign a global id space to entities and vertices, and optionally intermediate-dimension entities 00027 * 00028 * COMMUNICATION: Collective. 00029 */ 00030 void iMeshP_assignGlobalIds( iMesh_Instance instance, 00031 const iMeshP_PartitionHandle partition, 00032 const iBase_EntitySetHandle this_set, 00033 const int dimension, 00034 const int start_id, 00035 const int largest_dim_only, 00036 const int parallel, 00037 const int owned_only, 00038 int* err ); 00039 00040 #ifdef __cplusplus 00041 } 00042 #endif 00043 00044 #endif