Hi, Hong-Jun

I am still doing code change for the attribute read/write stuff. it seems not a small change.  The past week, I tried different things and made work for this case, then fail on the other case. But I am going to continue to work on it, trying new thoughts based on my understanding of details on OCC topology/geometry structure.

 I am glad that you found ACIS works for your parallel work.

Jane

On Fri, Jun 24, 2011 at 5:36 PM, <hongjun@mcs.anl.gov> wrote:
Author: hongjun
Date: 2011-06-24 17:36:43 -0500 (Fri, 24 Jun 2011)
New Revision: 5037

Modified:
  cgm/trunk/Makefile.am
  cgm/trunk/configure.ac
  cgm/trunk/geom/parallel/CGMParallelComm.cpp
  cgm/trunk/geom/parallel/CGMReadParallel.cpp
  cgm/trunk/geom/parallel/Makefile.am
  cgm/trunk/itaps/iGeom_CGMA.cc
Log:
o Parallel CGM is also supported for ACIS geometry kernel only with "READ_PARALLEL" option
o Parallel codes are built when "parallel_build" is defined (also cubit library is used)
o GeometryQueryTool::import(export)_solid_model" functions are changed to CubitCompat functions
o Passes make check


Modified: cgm/trunk/Makefile.am
===================================================================
--- cgm/trunk/Makefile.am       2011-06-24 19:11:43 UTC (rev 5036)
+++ cgm/trunk/Makefile.am       2011-06-24 22:36:43 UTC (rev 5037)
@@ -45,7 +45,7 @@
                  geom/libcubit_geom.la \
                  util/libcubit_util.la
 else
-  CORE_CGM_LIBS = geom/libcubit_geom.la
+  CORE_CGM_LIBS = geom/libcubit_geom.la $(CGM_ll_LIB)
 endif

 SUBDIRS = compat util geom init . $(igeom_DIR) test cgm_apps geom/testing

Modified: cgm/trunk/configure.ac
===================================================================
--- cgm/trunk/configure.ac      2011-06-24 19:11:43 UTC (rev 5036)
+++ cgm/trunk/configure.ac      2011-06-24 22:36:43 UTC (rev 5037)
@@ -104,12 +104,6 @@
             [CUBIT_DIR="$withval"
              DISTCHECK_CONFIGURE_FLAGS="$DISTCHECK_CONFIGURE_FLAGS --with-cubit=\"${withval}\""])

-if test "x$CUBIT_DIR" != "xno"; then
-  if test "x$WITH_MPI" != "xno"; then
-    AC_MSG_ERROR("CGM from CUBIT shared library dosn't support parallel build. Use serial build.")
-  fi
-fi
-
 if test "x$CUBIT_DIR" == "xyes"; then
  AC_MSG_ERROR([Option --with-CUBIT without specifying Cubit directory.])
 elif test "x$CUBIT_DIR" != "xno"; then

Modified: cgm/trunk/geom/parallel/CGMParallelComm.cpp
===================================================================
--- cgm/trunk/geom/parallel/CGMParallelComm.cpp 2011-06-24 19:11:43 UTC (rev 5036)
+++ cgm/trunk/geom/parallel/CGMParallelComm.cpp 2011-06-24 22:36:43 UTC (rev 5037)
@@ -267,9 +267,11 @@
    return CUBIT_SUCCESS;
  }

+#ifdef HAVE_OCC
  CubitStatus result = GeometryQueryTool::instance()->export_solid_model(ref_entity_list, pBuffer,
                                                                        n_buffer_size, b_write_buffer);
  RRA("Failed to write ref entities to buffer.");
+#endif

  if (b_write_buffer) m_currentPosition += n_buffer_size;
  return CUBIT_SUCCESS;
@@ -285,9 +287,11 @@
 #else
  if (n_buffer_size == 0) return CUBIT_SUCCESS;