moab
|
00001 00002 #ifndef MOAB_PARALLEL_DATA_HPP 00003 #define MOAB_PARALLEL_DATA_HPP 00004 00005 #include "moab/Forward.hpp" 00006 #include "moab/Range.hpp" 00007 00008 namespace moab { 00009 00010 class ParallelComm; 00011 00022 class ParallelData 00023 { 00024 public: 00025 00028 ParallelData(Interface *impl, ParallelComm *pcomm = NULL); 00029 00032 ErrorCode get_partition_sets(Range &part_sets, 00033 const char *tag_name = NULL); 00034 00037 ErrorCode get_interface_sets(std::vector<EntityHandle> &iface_sets, 00038 std::vector<int> &iface_procs); 00039 00040 00041 private: 00042 00044 Interface *mbImpl; 00045 00047 ParallelComm *parallelComm; 00048 00049 }; 00050 00051 inline ParallelData::ParallelData(Interface *impl, 00052 ParallelComm *pcomm) 00053 : mbImpl(impl), parallelComm(pcomm) 00054 {} 00055 00056 } 00057 00058 #endif