[cgma-dev] r4494 - in cgm/trunk/geom: OCC parallel
hongjun at mcs.anl.gov
hongjun at mcs.anl.gov
Tue Feb 15 10:59:02 CST 2011
Author: hongjun
Date: 2011-02-15 10:59:02 -0600 (Tue, 15 Feb 2011)
New Revision: 4494
Modified:
cgm/trunk/geom/OCC/OCCQueryEngine.cpp
cgm/trunk/geom/parallel/CABodies.cpp
cgm/trunk/geom/parallel/CABodies.hpp
cgm/trunk/geom/parallel/CGMReadParallel.cpp
Log:
o Geometry entity unique id is stored in "CABodies" for parallel meshing
o OCCQueryEngine::Write() function (write entities in buffer) has option to just check the size of buffer for scatter distribution
o CGMReadParallel stores load balancing information not only Body but also Volume
o Passes "make check"
o Passes "partest" which is not in the TEST list
Modified: cgm/trunk/geom/OCC/OCCQueryEngine.cpp
===================================================================
--- cgm/trunk/geom/OCC/OCCQueryEngine.cpp 2011-02-15 14:21:59 UTC (rev 4493)
+++ cgm/trunk/geom/OCC/OCCQueryEngine.cpp 2011-02-15 16:59:02 UTC (rev 4494)
@@ -1375,17 +1375,21 @@
long size=infile.tellg();
infile.seekg(0);
- if(n_buffer_size < size)
- {
- PRINT_ERROR("Buffer size is not enough, increase buffer size.\n");
- infile.close();
- remove(file_name);
- return CUBIT_FAILURE;
+ if (b_write_buffer) {
+ if(n_buffer_size < size)
+ {
+ PRINT_ERROR("Buffer size is not enough, increase buffer size.\n");
+ infile.close();
+ remove(file_name);
+ return CUBIT_FAILURE;
+ }
+ infile.read(pBuffer,size);
}
+ else n_buffer_size = size;
- infile.read(pBuffer,size);
infile.close();
remove(file_name);
+
return CUBIT_TRUE;
}
Modified: cgm/trunk/geom/parallel/CABodies.cpp
===================================================================
--- cgm/trunk/geom/parallel/CABodies.cpp 2011-02-15 14:21:59 UTC (rev 4493)
+++ cgm/trunk/geom/parallel/CABodies.cpp 2011-02-15 16:59:02 UTC (rev 4494)
@@ -43,9 +43,10 @@
// first, the ints
i_list->reset();
- // is interface
- m_interface = *(i_list->get_and_step());
+ m_interface = *(i_list->get_and_step()); // is interface
+ m_uniqueID = *(i_list->get_and_step()); // unique ID
+
// shared bodies
int num_list = *(i_list->get_and_step());
for (int i = num_list; i > 0; i--) {
More information about the cgma-dev
mailing list