[MOAB-dev] r2564 - in MOAB/trunk/tools/iMesh: . SIDL SIDL/mserver
kraftche at mcs.anl.gov
kraftche at mcs.anl.gov
Tue Jan 20 19:05:16 CST 2009
Author: kraftche
Date: 2009-01-20 19:05:15 -0600 (Tue, 20 Jan 2009)
New Revision: 2564
Modified:
MOAB/trunk/tools/iMesh/SIDL/iBase.sidl
MOAB/trunk/tools/iMesh/SIDL/iBase_SIDL_defs.h
MOAB/trunk/tools/iMesh/SIDL/iMesh.sidl
MOAB/trunk/tools/iMesh/SIDL/mserver/iMesh_SIDL_MeshSidl_Impl.cc
MOAB/trunk/tools/iMesh/iBase.h
MOAB/trunk/tools/iMesh/iMesh.h
MOAB/trunk/tools/iMesh/iMesh_MOAB.cpp
MOAB/trunk/tools/iMesh/iMesh_protos.h
Log:
update iMesh version
Modified: MOAB/trunk/tools/iMesh/SIDL/iBase.sidl
===================================================================
--- MOAB/trunk/tools/iMesh/SIDL/iBase.sidl 2009-01-20 22:54:22 UTC (rev 2563)
+++ MOAB/trunk/tools/iMesh/SIDL/iBase.sidl 2009-01-21 01:05:15 UTC (rev 2564)
@@ -15,7 +15,7 @@
// ERRORS, TAGS
//========================================================
-package iBase version 0.7
+package iBase version 0.8
{
enum EntityType {
VERTEX,
@@ -284,20 +284,20 @@
// add and remove entities
void addEntToSet(in opaque entity_handle,
- inout opaque entity_set) throws iBase.Error;
+ in opaque entity_set) throws iBase.Error;
// if the entity isn't in the set, don't throw an error
void rmvEntFromSet( in opaque entity_handle,
- inout opaque entity_set) throws iBase.Error;
+ in opaque entity_set) throws iBase.Error;
void addEntArrToSet( in array<opaque> entity_handles,
in int entity_handles_size,
- inout opaque entity_set) throws iBase.Error;
+ in opaque entity_set) throws iBase.Error;
// if the entity isn't in the set, don't throw an error
void rmvEntArrFromSet( in array<opaque> entity_handles,
in int entity_handles_size,
- inout opaque entity_set) throws iBase.Error;
+ in opaque entity_set) throws iBase.Error;
// all entity sets are contained in root set
// root set is contained in no other sets
@@ -306,12 +306,12 @@
// add/remove entity sets
void addEntSet( in opaque entity_set_to_add,
- inout opaque entity_set_handle)
+ in opaque entity_set_handle)
throws iBase.Error;
// if the entity set isn't in the set, don't throw an error
void rmvEntSet( in opaque entity_set_to_remove,
- inout opaque entity_set_handle)
+ in opaque entity_set_handle)
throws iBase.Error;
// check whether an entity is contained in the entity set
@@ -319,6 +319,13 @@
in opaque entity_handle,
out int is_contained) throws iBase.Error;
+ // check whether entities are contained in the entity set
+ void isEntArrContained( in opaque containing_set,
+ in array<opaque> entity_handles,
+ in int entity_handles_size,
+ inout array<int> is_contained,
+ out int is_contained_size );
+
// check whether an entity set is contained in another
void isEntSetContained(in opaque containing_entity_set,
in opaque contained_entity_set,
@@ -332,15 +339,15 @@
// Root set cannot be a child or parent
// don't throw error if parent/child already exists
- void addPrntChld( inout opaque parent_entity_set,
- inout opaque child_entity_set) throws iBase.Error;
+ void addPrntChld( in opaque parent_entity_set,
+ in opaque child_entity_set) throws iBase.Error;
// don't throw error if parent/child link doesn't exist
- void rmvPrntChld( inout opaque parent_entity_set,
- inout opaque child_entity_set) throws iBase.Error;
+ void rmvPrntChld( in opaque parent_entity_set,
+ in opaque child_entity_set) throws iBase.Error;
void isChildOf( in opaque parent_entity_set,
- in opaque child_entity_set,
+ in opaque child_entity_set,
out int is_child) throws iBase.Error;
void getNumChld( in opaque entity_set, in int num_hops,
Modified: MOAB/trunk/tools/iMesh/SIDL/iBase_SIDL_defs.h
===================================================================
--- MOAB/trunk/tools/iMesh/SIDL/iBase_SIDL_defs.h 2009-01-20 22:54:22 UTC (rev 2563)
+++ MOAB/trunk/tools/iMesh/SIDL/iBase_SIDL_defs.h 2009-01-21 01:05:15 UTC (rev 2564)
@@ -47,6 +47,20 @@
int my_arr ## _allocated_size = (my_arr._get_ior() == NULL ? 0 :\
my_arr._get_ior()->d_upper[0] - my_arr._get_ior()->d_lower[0] + 1)
+#define CREATE_TEMP_ESH_ARRAY(my_arr) \
+ bool my_arr ## _i_allocated = (my_arr._get_ior() == NULL); \
+ iBase_EntitySetHandle *my_arr ## _temp = reinterpret_cast<iBase_EntitySetHandle*>((my_arr._get_ior() == NULL ? NULL : \
+ my_arr._get_ior()->d_firstElement)); \
+ int my_arr ## _allocated_size = (my_arr._get_ior() == NULL ? 0 :\
+ my_arr._get_ior()->d_upper[0] - my_arr._get_ior()->d_lower[0] + 1)
+
+#define CREATE_TEMP_TH_ARRAY(my_arr) \
+ bool my_arr ## _i_allocated = (my_arr._get_ior() == NULL); \
+ iBase_TagHandle *my_arr ## _temp = reinterpret_cast<iBase_TagHandle*>((my_arr._get_ior() == NULL ? NULL : \
+ my_arr._get_ior()->d_firstElement)); \
+ int my_arr ## _allocated_size = (my_arr._get_ior() == NULL ? 0 :\
+ my_arr._get_ior()->d_upper[0] - my_arr._get_ior()->d_lower[0] + 1)
+
#define ASSIGN_TAG_ARRAY(my_arr) \
if (!my_arr ## _i_allocated && \
ARRAY_SIZE(my_arr) < my_arr ## _allocated_size) {\
@@ -155,6 +169,20 @@
int my_arr ## _allocated_size = (my_arr._get_ior() == NULL ? 0 :\
my_arr._get_ior()->d_metadata.d_upper[0] - my_arr._get_ior()->d_metadata.d_lower[0] + 1)
+#define CREATE_TEMP_ESH_ARRAY(my_arr) \
+ bool my_arr ## _i_allocated = (my_arr._get_ior() == NULL); \
+ iBase_EntitySetHandle *my_arr ## _temp = reinterpret_cast<iBase_EntitySetHandle*>((my_arr._get_ior() == NULL ? NULL : \
+ my_arr._get_ior()->d_firstElement)); \
+ int my_arr ## _allocated_size = (my_arr._get_ior() == NULL ? 0 :\
+ my_arr._get_ior()->d_metadata.d_upper[0] - my_arr._get_ior()->d_metadata.d_lower[0] + 1)
+
+#define CREATE_TEMP_TH_ARRAY(my_arr) \
+ bool my_arr ## _i_allocated = (my_arr._get_ior() == NULL); \
+ iBase_TagHandle *my_arr ## _temp = reinterpret_cast<iBase_TagHandle*>((my_arr._get_ior() == NULL ? NULL : \
+ my_arr._get_ior()->d_firstElement)); \
+ int my_arr ## _allocated_size = (my_arr._get_ior() == NULL ? 0 :\
+ my_arr._get_ior()->d_metadata.d_upper[0] - my_arr._get_ior()->d_metadata.d_lower[0] + 1)
+
#define ASSIGN_TAG_ARRAY(my_arr) \
if (!my_arr ## _i_allocated && \
ARRAY_SIZE(my_arr) < my_arr ## _allocated_size) {\
Modified: MOAB/trunk/tools/iMesh/SIDL/iMesh.sidl
===================================================================
--- MOAB/trunk/tools/iMesh/SIDL/iMesh.sidl 2009-01-20 22:54:22 UTC (rev 2563)
+++ MOAB/trunk/tools/iMesh/SIDL/iMesh.sidl 2009-01-21 01:05:15 UTC (rev 2564)
@@ -1,14 +1,3 @@
-/**
- * Copyright 2006 Sandia Corporation. Under the terms of Contract
- * DE-AC04-94AL85000 with Sandia Coroporation, the U.S. Government
- * retains certain rights in this software.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Lesser General Public
- * License as published by the Free Software Foundation; either
- * version 2.1 of the License, or (at your option) any later version.
- *
- */
//==========================================================
// iMesh PACKAGE - The ITAPS mesh interface
// MESH QUERY, MODIFICATION
@@ -17,8 +6,8 @@
//
// Only import ITAPS if the iMesh package appears in a separate sidl file. -TLD
//
-import iBase version 0.7;
-package iMesh version 0.7
+import iBase version 0.8;
+package iMesh version 0.8
{
enum EntityTopology {
@@ -85,6 +74,7 @@
// global info
void getRootSet(out opaque root_set) throws iBase.Error;
void getGeometricDim(out int dim) throws iBase.Error;
+ void setGeometricDim(in int dim) throws iBase.Error;
void getDfltStorage(out iBase.StorageOrder dflt_storage) throws iBase.Error;
void getAdjTable( inout array< AdjacencyInfo > adjacency_table,
out int adjacency_table_size) throws iBase.Error;
@@ -102,27 +92,6 @@
in EntityTopology entity_topology,
out int num_topo) throws iBase.Error;
- // primitive arrays
- void getAllVtxCoords( in opaque entity_set,
- inout array<double> coords,
- out int coords_size,
- inout array<int> in_entity_set,
- out int in_entity_set_size,
- inout StorageOrder storage_order)
- throws iBase.Error;
-
- // size of the offset array will be entity_topology_size+1, already in docs
- void getVtxCoordIndex( in opaque entity_set,
- in EntityType requested_entity_type,
- in EntityTopology requested_entity_topology,
- in EntityType entity_adjacency_type,
- inout array<int> offset,
- out int offset_size,
- inout array<int> index,
- out int index_size,
- inout array<EntityTopology> entity_topologies,
- out int entity_topologies_size) throws iBase.Error;
-
// entity arrays
void getEntities( in opaque entity_set,
in EntityType entity_type,
@@ -144,6 +113,19 @@
out int offset_size,
inout array<int> in_entity_set,
out int in_entity_set_size) throws iBase.Error;
+
+ void getAdjEntIndices( in opaque entity_set_handle,
+ in EntityType entity_type_requestor,
+ in EntityTopology entity_topology_requestor,
+ in EntityType entity_type_requested,
+ inout array<opaque> entity_handles,
+ out int entity_handles_size,
+ inout array<opaque> adj_entity_handles,
+ out int adj_entity_handles_size,
+ inout array<int> adj_entity_indices,
+ out int adj_entity_indices_size,
+ inout array<int> offset,
+ out int offset_size ) throws iBase.Error;
};
Modified: MOAB/trunk/tools/iMesh/SIDL/mserver/iMesh_SIDL_MeshSidl_Impl.cc
===================================================================
--- MOAB/trunk/tools/iMesh/SIDL/mserver/iMesh_SIDL_MeshSidl_Impl.cc 2009-01-20 22:54:22 UTC (rev 2563)
+++ MOAB/trunk/tools/iMesh/SIDL/mserver/iMesh_SIDL_MeshSidl_Impl.cc 2009-01-21 01:05:15 UTC (rev 2564)
@@ -2,16 +2,16 @@
// File: iMesh_SIDL_MeshSidl_Impl.cc
// Symbol: iMesh_SIDL.MeshSidl-v0.2
// Symbol Type: class
-// Babel Version: 0.10.12
-// sidl Created: 20070927 14:57:59 CDT
-// Generated: 20070927 14:58:07 CDT
+// Babel Version: 0.10.10
+// sidl Created: 20090120 19:02:01 CST
+// Generated: 20090120 19:02:03 CST
// Description: Server-side implementation for iMesh_SIDL.MeshSidl
//
// WARNING: Automatically generated; only changes within splicers preserved
//
-// babel-version = 0.10.12
+// babel-version = 0.10.10
// source-line = 5
-// source-url = file:/home/tautges/MOAB/tools/iMesh/SIDL/iMesh_SIDL.sidl
+// source-url = file:/home/jason/moab/newimesh/src/tools/iMesh/SIDL/iMesh_SIDL.sidl
//
#include "iMesh_SIDL_MeshSidl_Impl.hh"
@@ -277,7 +277,7 @@
// DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.getEHData)
// Insert-Code-Here {iMesh_SIDL.MeshSidl.getEHData} (getEHData method)
iMesh_getEHData (imeshInstance, (iBase_EntityHandle) entity_handle, (iBase_TagHandle) tag_handle,
- (iBase_TagHandle*)&eh_data, &imeshError);
+ (iBase_EntityHandle*)&eh_data, &imeshError);
PROCESS_ERROR;
// DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.getEHData)
}
@@ -375,7 +375,7 @@
){
// DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.getAllTags)
// Insert-Code-Here {iMesh_SIDL.MeshSidl.getAllTags} (getAllTags method)
- CREATE_TEMP_EH_ARRAY(tag_handles);
+ CREATE_TEMP_TH_ARRAY(tag_handles);
iMesh_getAllTags (imeshInstance, (iBase_EntityHandle) entity_handle,
TEMP_ARRAY_INOUT(tag_handles), &imeshError);
@@ -800,7 +800,7 @@
// DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.getAllEntSetTags)
// Insert-Code-Here {iMesh_SIDL.MeshSidl.getAllEntSetTags} (getAllEntSetTags method)
- CREATE_TEMP_EH_ARRAY(tag_handles);
+ CREATE_TEMP_TH_ARRAY(tag_handles);
iMesh_getAllEntSetTags (imeshInstance, reinterpret_cast<iBase_EntitySetHandle>(entity_set),
TEMP_ARRAY_INOUT(tag_handles), &imeshError);
@@ -913,7 +913,7 @@
){
// DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.getEntSets)
// Insert-Code-Here {iMesh_SIDL.MeshSidl.getEntSets} (getEntSets method)
- CREATE_TEMP_EH_ARRAY(contained_entset_handles);
+ CREATE_TEMP_ESH_ARRAY(contained_entset_handles);
iMesh_getEntSets (imeshInstance,
reinterpret_cast<iBase_EntitySetHandle>(entity_set), num_hops,
@@ -931,13 +931,13 @@
void
iMesh_SIDL::MeshSidl_impl::addEntToSet (
/* in */ void* entity_handle,
- /* inout */ void*& entity_set )
+ /* in */ void* entity_set )
throw (
::iBase::Error
){
// DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.addEntToSet)
// Insert-Code-Here {iMesh_SIDL.MeshSidl.addEntToSet} (addEntToSet method)
- iMesh_addEntToSet (imeshInstance, (iBase_EntityHandle) entity_handle, reinterpret_cast<iBase_EntitySetHandle*>(&entity_set), &imeshError);
+ iMesh_addEntToSet (imeshInstance, (iBase_EntityHandle) entity_handle, (iBase_EntitySetHandle)entity_set, &imeshError);
PROCESS_ERROR;
// DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.addEntToSet)
}
@@ -948,13 +948,13 @@
void
iMesh_SIDL::MeshSidl_impl::rmvEntFromSet (
/* in */ void* entity_handle,
- /* inout */ void*& entity_set )
+ /* in */ void* entity_set )
throw (
::iBase::Error
){
// DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.rmvEntFromSet)
// Insert-Code-Here {iMesh_SIDL.MeshSidl.rmvEntFromSet} (rmvEntFromSet method)
- iMesh_rmvEntFromSet (imeshInstance, (iBase_EntityHandle) entity_handle, reinterpret_cast<iBase_EntitySetHandle*>(&entity_set), &imeshError);
+ iMesh_rmvEntFromSet (imeshInstance, (iBase_EntityHandle) entity_handle, (iBase_EntitySetHandle)entity_set, &imeshError);
PROCESS_ERROR;
// DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.rmvEntFromSet)
}
@@ -966,7 +966,7 @@
iMesh_SIDL::MeshSidl_impl::addEntArrToSet (
/* in */ ::sidl::array<void*> entity_handles,
/* in */ int32_t entity_handles_size,
- /* inout */ void*& entity_set )
+ /* in */ void* entity_set )
throw (
::iBase::Error
){
@@ -974,7 +974,7 @@
// Insert-Code-Here {iMesh_SIDL.MeshSidl.addEntArrToSet} (addEntArrToSet method)
iMesh_addEntArrToSet (imeshInstance,
TEMP_TYPED_ARRAY_IN(iBase_EntityHandle, entity_handles),
- reinterpret_cast<iBase_EntitySetHandle*>(&entity_set), &imeshError);
+ (iBase_EntitySetHandle)entity_set, &imeshError);
PROCESS_ERROR;
// DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.addEntArrToSet)
}
@@ -986,7 +986,7 @@
iMesh_SIDL::MeshSidl_impl::rmvEntArrFromSet (
/* in */ ::sidl::array<void*> entity_handles,
/* in */ int32_t entity_handles_size,
- /* inout */ void*& entity_set )
+ /* in */ void* entity_set )
throw (
::iBase::Error
){
@@ -994,7 +994,7 @@
// Insert-Code-Here {iMesh_SIDL.MeshSidl.rmvEntArrFromSet} (rmvEntArrFromSet method)
iMesh_rmvEntArrFromSet (imeshInstance,
TEMP_TYPED_ARRAY_IN(iBase_EntityHandle, entity_handles),
- reinterpret_cast<iBase_EntitySetHandle*>(&entity_set), &imeshError);
+ (iBase_EntitySetHandle)entity_set, &imeshError);
PROCESS_ERROR;
// DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.rmvEntArrFromSet)
}
@@ -1005,14 +1005,14 @@
void
iMesh_SIDL::MeshSidl_impl::addEntSet (
/* in */ void* entity_set_to_add,
- /* inout */ void*& entity_set_handle )
+ /* in */ void* entity_set_handle )
throw (
::iBase::Error
){
// DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.addEntSet)
// Insert-Code-Here {iMesh_SIDL.MeshSidl.addEntSet} (addEntSet method)
iMesh_addEntSet (imeshInstance, reinterpret_cast<iBase_EntitySetHandle>(entity_set_to_add),
- reinterpret_cast<iBase_EntitySetHandle*>(&entity_set_handle), &imeshError);
+ (iBase_EntitySetHandle)entity_set_handle, &imeshError);
PROCESS_ERROR;
// DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.addEntSet)
}
@@ -1023,14 +1023,14 @@
void
iMesh_SIDL::MeshSidl_impl::rmvEntSet (
/* in */ void* entity_set_to_remove,
- /* inout */ void*& entity_set_handle )
+ /* in */ void* entity_set_handle )
throw (
::iBase::Error
){
// DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.rmvEntSet)
// Insert-Code-Here {iMesh_SIDL.MeshSidl.rmvEntSet} (rmvEntSet method)
iMesh_rmvEntSet(imeshInstance, reinterpret_cast<iBase_EntitySetHandle>(entity_set_to_remove),
- reinterpret_cast<iBase_EntitySetHandle*>(&entity_set_handle), &imeshError);
+ (iBase_EntitySetHandle)entity_set_handle, &imeshError);
PROCESS_ERROR;
// DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.rmvEntSet)
}
@@ -1055,6 +1055,31 @@
}
/**
+ * Method: isEntArrContained[]
+ */
+void
+iMesh_SIDL::MeshSidl_impl::isEntArrContained (
+ /* in */ void* containing_set,
+ /* in */ ::sidl::array<void*> entity_handles,
+ /* in */ int32_t entity_handles_size,
+ /* inout */ ::sidl::array<int32_t>& is_contained,
+ /* out */ int32_t& is_contained_size )
+throw ()
+{
+ // DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.isEntArrContained)
+
+ CREATE_TEMP_ARRAY(int32_t, is_contained);
+
+ iMesh_isEntArrContained( imeshInstance,
+ (iBase_EntitySetHandle)containing_set,
+ TEMP_TYPED_ARRAY_IN(iBase_EntityHandle, entity_handles),
+ TEMP_ARRAY_INOUT(is_contained), &imeshError);
+ PROCESS_ERROR;
+
+ // DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.isEntArrContained)
+}
+
+/**
* Method: isEntSetContained[]
*/
void
@@ -1080,16 +1105,16 @@
*/
void
iMesh_SIDL::MeshSidl_impl::addPrntChld (
- /* inout */ void*& parent_entity_set,
- /* inout */ void*& child_entity_set )
+ /* in */ void* parent_entity_set,
+ /* in */ void* child_entity_set )
throw (
::iBase::Error
){
// DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.addPrntChld)
// Insert-Code-Here {iMesh_SIDL.MeshSidl.addPrntChld} (addPrntChld method)
iMesh_addPrntChld (imeshInstance,
- reinterpret_cast<iBase_EntitySetHandle*>(&parent_entity_set),
- reinterpret_cast<iBase_EntitySetHandle*>(&child_entity_set),
+ (iBase_EntitySetHandle)parent_entity_set,
+ (iBase_EntitySetHandle)child_entity_set,
&imeshError);
PROCESS_ERROR;
// DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.addPrntChld)
@@ -1100,16 +1125,16 @@
*/
void
iMesh_SIDL::MeshSidl_impl::rmvPrntChld (
- /* inout */ void*& parent_entity_set,
- /* inout */ void*& child_entity_set )
+ /* in */ void* parent_entity_set,
+ /* in */ void* child_entity_set )
throw (
::iBase::Error
){
// DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.rmvPrntChld)
// Insert-Code-Here {iMesh_SIDL.MeshSidl.rmvPrntChld} (rmvPrntChld method)
iMesh_rmvPrntChld (imeshInstance,
- /*inout*/ reinterpret_cast<iBase_EntitySetHandle*>(&parent_entity_set),
- /*inout*/ reinterpret_cast<iBase_EntitySetHandle*>(&child_entity_set), &imeshError);
+ (iBase_EntitySetHandle)parent_entity_set,
+ (iBase_EntitySetHandle)child_entity_set, &imeshError);
PROCESS_ERROR;
// DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.rmvPrntChld)
}
@@ -1188,7 +1213,7 @@
// DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.getChldn)
// Insert-Code-Here {iMesh_SIDL.MeshSidl.getChldn} (getChldn method)
- CREATE_TEMP_EH_ARRAY(child_handles);
+ CREATE_TEMP_ESH_ARRAY(child_handles);
iMesh_getChldn (imeshInstance,
reinterpret_cast<iBase_EntitySetHandle>(from_entity_set),
@@ -1216,7 +1241,7 @@
// DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.getPrnts)
// Insert-Code-Here {iMesh_SIDL.MeshSidl.getPrnts} (getPrnts method)
- CREATE_TEMP_EH_ARRAY(parent_handles);
+ CREATE_TEMP_ESH_ARRAY(parent_handles);
iMesh_getPrnts (imeshInstance,
reinterpret_cast<iBase_EntitySetHandle>(from_entity_set),
@@ -1350,7 +1375,7 @@
// Insert-Code-Here {iMesh_SIDL.MeshSidl.getRootSet} (getRootSet method)
iMesh_getRootSet (imeshInstance,
- reinterpret_cast<iBase_EntityHandle*>(&root_set),
+ reinterpret_cast<iBase_EntitySetHandle*>(&root_set),
&imeshError);
PROCESS_ERROR;
// DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.getRootSet)
@@ -1375,6 +1400,23 @@
}
/**
+ * Method: setGeometricDim[]
+ */
+void
+iMesh_SIDL::MeshSidl_impl::setGeometricDim (
+ /* in */ int32_t dim )
+throw (
+ ::iBase::Error
+){
+ // DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.setGeometricDim)
+ // Insert-Code-Here {iMesh_SIDL.MeshSidl.setGeometricDim} (setGeometricDim method)
+ iMesh_setGeometricDimension(imeshInstance, dim, &imeshError);
+ PROCESS_ERROR;
+
+ // DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.setGeometricDim)
+}
+
+/**
* Method: getDfltStorage[]
*/
void
@@ -1468,77 +1510,6 @@
}
/**
- * Method: getAllVtxCoords[]
- */
-void
-iMesh_SIDL::MeshSidl_impl::getAllVtxCoords (
- /* in */ void* entity_set,
- /* inout */ ::sidl::array<double>& coords,
- /* out */ int32_t& coords_size,
- /* inout */ ::sidl::array<int32_t>& in_entity_set,
- /* out */ int32_t& in_entity_set_size,
- /* inout */ ::iBase::StorageOrder& storage_order )
-throw (
- ::iBase::Error
-){
- // DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.getAllVtxCoords)
- // Insert-Code-Here {iMesh_SIDL.MeshSidl.getAllVtxCoords} (getAllVtxCoords method)
- CREATE_TEMP_ARRAY(double, coords);
- CREATE_TEMP_ARRAY(int32_t, in_entity_set);
-
- iMesh_getAllVtxCoords (imeshInstance, reinterpret_cast<iBase_EntitySetHandle>(entity_set),
- TEMP_ARRAY_INOUT(coords),
- TEMP_ARRAY_INOUT(in_entity_set),
- (int*)&storage_order, &imeshError);
-
- PROCESS_ERROR;
- ASSIGN_TYPED_ARRAY(double, coords);
- ASSIGN_TYPED_ARRAY(int32_t, in_entity_set);
-
- // DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.getAllVtxCoords)
-}
-
-/**
- * Method: getVtxCoordIndex[]
- */
-void
-iMesh_SIDL::MeshSidl_impl::getVtxCoordIndex (
- /* in */ void* entity_set,
- /* in */ ::iBase::EntityType requested_entity_type,
- /* in */ ::iMesh::EntityTopology requested_entity_topology,
- /* in */ ::iBase::EntityType entity_adjacency_type,
- /* inout */ ::sidl::array<int32_t>& offset,
- /* out */ int32_t& offset_size,
- /* inout */ ::sidl::array<int32_t>& index,
- /* out */ int32_t& index_size,
- /* inout */ ::sidl::array< ::iMesh::EntityTopology>& entity_topologies,
- /* out */ int32_t& entity_topologies_size )
-throw (
- ::iBase::Error
-){
- // DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.getVtxCoordIndex)
- // Insert-Code-Here {iMesh_SIDL.MeshSidl.getVtxCoordIndex} (getVtxCoordIndex method)
-
- CREATE_TEMP_ARRAY(int32_t, offset);
- CREATE_TEMP_ARRAY(int32_t, index);
- CREATE_TEMP_ENUM_ARRAY(int, entity_topologies);
-
- iMesh_getVtxCoordIndex (imeshInstance, reinterpret_cast<iBase_EntitySetHandle>(entity_set),
- (iBase_EntityType)requested_entity_type,
- (iMesh_EntityTopology)requested_entity_topology,
- (iBase_EntityType)entity_adjacency_type,
- TEMP_ARRAY_INOUT(offset),
- TEMP_ARRAY_INOUT(index),
- TEMP_ARRAY_INOUT(entity_topologies), &imeshError);
-
- PROCESS_ERROR;
- ASSIGN_TYPED_ARRAY(int, offset);
- ASSIGN_TYPED_ARRAY(int, index);
- ASSIGN_ENUM_ARRAY(entity_topologies);
- // DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.getVtxCoordIndex)
-}
-
-/**
* Method: getEntities[]
*/
void
@@ -1635,6 +1606,31 @@
}
/**
+ * Method: getAdjEntIndices[]
+ */
+void
+iMesh_SIDL::MeshSidl_impl::getAdjEntIndices (
+ /* in */ void* entity_set_handle,
+ /* in */ ::iBase::EntityType entity_type_requestor,
+ /* in */ ::iMesh::EntityTopology entity_topology_requestor,
+ /* in */ ::iBase::EntityType entity_type_requested,
+ /* inout */ ::sidl::array<void*>& entity_handles,
+ /* out */ int32_t& entity_handles_size,
+ /* inout */ ::sidl::array<void*>& adj_entity_handles,
+ /* out */ int32_t& adj_entity_handles_size,
+ /* inout */ ::sidl::array<int32_t>& adj_entity_indices,
+ /* out */ int32_t& adj_entity_indices_size,
+ /* inout */ ::sidl::array<int32_t>& offset,
+ /* out */ int32_t& offset_size )
+throw (
+ ::iBase::Error
+){
+ // DO-NOT-DELETE splicer.begin(iMesh_SIDL.MeshSidl.getAdjEntIndices)
+ // Insert-Code-Here {iMesh_SIDL.MeshSidl.getAdjEntIndices} (getAdjEntIndices method)
+ // DO-NOT-DELETE splicer.end(iMesh_SIDL.MeshSidl.getAdjEntIndices)
+}
+
+/**
* Method: initEntIter[]
*/
void
Modified: MOAB/trunk/tools/iMesh/iBase.h
===================================================================
--- MOAB/trunk/tools/iMesh/iBase.h 2009-01-20 22:54:22 UTC (rev 2563)
+++ MOAB/trunk/tools/iMesh/iBase.h 2009-01-21 01:05:15 UTC (rev 2564)
@@ -15,10 +15,10 @@
* TYPEDEF'S
*==========================================================
*/
- typedef void* iBase_Instance;
- typedef void* iBase_EntityHandle;
- typedef void* iBase_EntitySetHandle;
- typedef void* iBase_TagHandle;
+ typedef struct iBase_Instance_Private* iBase_Instance;
+ typedef struct iBase_EntityHandle_Private* iBase_EntityHandle;
+ typedef struct iBase_EntitySetHandle_Private* iBase_EntitySetHandle;
+ typedef struct iBase_TagHandle_Private* iBase_TagHandle;
/*==========================================================
* ENTITYTYPE ENUMERATION
Modified: MOAB/trunk/tools/iMesh/iMesh.h
===================================================================
--- MOAB/trunk/tools/iMesh/iMesh.h 2009-01-20 22:54:22 UTC (rev 2563)
+++ MOAB/trunk/tools/iMesh/iMesh.h 2009-01-21 01:05:15 UTC (rev 2564)
@@ -1,6 +1,9 @@
#ifndef IMESH_CBIND_H__
#define IMESH_CBIND_H__
+#define IMESH_MAJOR_VERSION 0
+#define IMESH_MINOR_VERSION 8
+
/** \mainpage The ITAPS Mesh Interface iMesh
*
* The ITAPS Mesh Interface iMesh provides a common interface for
@@ -76,19 +79,19 @@
*
* Type used to store iMesh interface handle
*/
- typedef void* iMesh_Instance;
+ typedef struct iMesh_Instance_Private* iMesh_Instance;
/**\brief Type used to store an iterator returned by iMesh
*
* Type used to store an iterator returned by iMesh
*/
- typedef void* iMesh_EntityIterator;
-
+ typedef struct iMesh_EntityIterator_Private* iMesh_EntityIterator;
+
/**\brief Type used to store an array iterator returned by iMesh
*
* Type used to store an array iterator returned by iMesh
*/
- typedef void* iMesh_EntityArrIterator;
+ typedef struct iMesh_EntityArrIterator_Private* iMesh_EntityArrIterator;
/**\brief Enumerator specifying entity topology
*
@@ -168,10 +171,10 @@
/**\brief Load a mesh from a file
*
* Load a mesh from a file. If entity set is specified, loaded mesh
- * is added to that set; specify zero if that is not desired.
+ * is added to that set; specify root set if that is not desired.
* \param instance iMesh instance handle
- * \param entity_set_handle Set to which loaded mesh will be added, zero
- * if not desired
+ * \param entity_set_handle Set to which loaded mesh will be added,
+ * root set if not desired
* \param name File name from which mesh is to be loaded
* \param options Pointer to implementation-specific options string
* \param *err Pointer to error type returned from function
@@ -229,6 +232,18 @@
/*out*/ int *geom_dim,
/*out*/ int *err);
+ /**\brief Set geometric dimension of vertex coordinates
+ *
+ * Set the geometric dimension of the mesh. Notes: An application
+ * should not expect this function to succeed unless the mesh database
+ * is empty (no vertices created, no files read, etc.)
+ *\param instance Mesh database from which to request change.
+ *\param geom_dim Requested geometric dimension.
+ */
+ void iMesh_setGeometricDimension( iMesh_Instance instance,
+ /*in*/ int geom_dim,
+ /*out*/ int* err );
+
/**\brief Get the default storage order used by this implementation
*
* Get the default storage order used by this implementation. Value
@@ -262,30 +277,10 @@
/*out*/ int* adjacency_table_size,
/*out*/ int *err);
- /**\brief Set the adjacency table and interior entity information for this implementation
- *
- * Set the adjacency table and interior entity information for this
- * implementation. This table
- * is a 4x4 array, with indices 0-based, where A(i,j) (i=row, j=column)
- * non-zero requests that adjacencies be stored explicitly from type i
- * to type j. Non-zero diagonal elements request that interior entities
- * of that dimension be represented explicitly, and created along with
- * higher-dimensional entities.
- * \param instance iMesh instance handle
- * \param *adjacency_table Array representing adjacency table
- * passed to function
- * \param adjacency_table_size Size of adjacency table (should be 16)
- * \param *err Pointer to error type returned from function
- */
- void iMesh_setAdjTable (iMesh_Instance instance,
- /*in*/ int* adjacency_table,
- /*in*/ int adjacency_table_size,
- /*out*/ int *err);
-
/**\brief Get the number of entities with the specified type in the instance or set
*
* Get the number of entities with the specified type in the instance
- * or set. If entity set handle is zero, return information for instance,
+ * or set. If entity set handle is root set, return information for instance,
* otherwise for set. Value of entity type must be from the
* iBase_EntityType enumeration. If iBase_ALL_TYPES is specified,
* total number of entities (excluding entity sets) is returned.
@@ -304,7 +299,7 @@
/**\brief Get the number of entities with the specified topology in the instance or set
*
* Get the number of entities with the specified topology in the instance
- * or set. If entity set handle is zero, return information for instance,
+ * or set. If entity set handle is root set, return information for instance,
* otherwise for set. Value of entity topology must be from the
* iMesh_EntityTopology enumeration. If iMesh_ALL_TOPOLOGIES is specified,
* total number of entities (excluding entity sets) is returned.
@@ -339,88 +334,7 @@
/*out*/ int *areHandlesInvariant,
/*out*/ int *err);
- /**\brief Return coordinates of all vertices defined in this instance or set
- *
- * Return coordinates of all vertices defined in this instance or set.
- * If non-zero set is input, return coordinates for vertices either in
- * the set or contained by entities in the set. If storage order is
- * a value other than iBase_UNDETERMINED, coordinates are returned with
- * that storage order; otherwise storage order is in native order with
- * respect to the implementation. On return, storage order contains
- * order of the returned coordinates.
- * \param instance iMesh instance handle
- * \param entity_set_handle Entity set for which vertex coordinates are
- * requested
- * \param *coordinates Pointer to array holding coordinates
- * \param *coordinates_allocated Pointer to allocated size of coordinates
- * array
- * \param *coordinates_size Pointer to occupied size of coordinates
- * array
- * \param *in_entity_set Pointer to array of flags; if entity set was
- * input, (*in_entity_set)[i]=1 indicates that vertex i was in
- * the entity set, zero otherwise.
- * \param *in_entity_set_allocated Pointer to allocated size of
- * in_entity_set array
- * \param *in_entity_set_size Pointer to occupied size of
- * in_entity_set array
- * \param *storage_order Pointer to storage order requested/returned from
- * function
- * \param *err Pointer to error type returned from function
- */
- void iMesh_getAllVtxCoords (iMesh_Instance instance,
- /*in*/ const iBase_EntitySetHandle entity_set_handle,
- /*inout*/ double** coordinates,
- /*inout*/ int* coordinates_allocated,
- /*out*/ int* coordinates_size,
- /*inout*/ int** in_entity_set,
- /*inout*/ int* in_entity_set_allocated,
- /*out*/ int* in_entity_set_size,
- /*inout*/ int* storage_order, /*out*/ int *err);
- /**\brief Get adjacent entities as connectivity lists
- *
- * For a specified set handle, entity type and/or entity topology,
- * return connectivity of adjacent entities of specified dimension.
- * Connectivity is expressed as index into array of vertices returned
- * by getEntities function. \em offset[i] is the index of the first
- * vertex of the first entity adjacent to entity \em i in the entity set
- * or the mesh. The topology of entities whose connectivity is returned
- * is given in the entity_topologies array.
- * \param instance iMesh instance handle
- * \param entity_set_handle Entity set being queried
- * \param requested_entity_type Type of entity requested
- * \param requested_entity_topology Topology of entity requested
- * \param entity_adjacency_type Adjacency type
- * \param *offset Pointer to array of offsets returned from function
- * \param *offset_allocated Pointer to allocated size of offset array
- * \param *offset_size Pointer to occupied size of offset array
- * \param *index Pointer to array of indices returned from function
- * \param *index_allocated Pointer to allocated size of index array
- * \param *index_size Pointer to occupied size of index array
- * \param *entity_topologies Pointer to array of entity topologies
- * returned from function
- * \param *entity_topologies_allocated Pointer to allocated size of
- * entity_topologies array
- * \param *entity_topologies_size Pointer to occupied size of
- * entity_topologies array
- * \param *err Pointer to error type returned from function
- */
- void iMesh_getVtxCoordIndex (iMesh_Instance instance,
- /*in*/ const iBase_EntitySetHandle entity_set_handle,
- /*in*/ const int requested_entity_type,
- /*in*/ const int requested_entity_topology,
- /*in*/ const int entity_adjacency_type,
- /*inout*/ int** offset,
- /*inout*/ int* offset_allocated,
- /*out*/ int* offset_size,
- /*inout*/ int** index,
- /*inout*/ int* index_allocated,
- /*out*/ int* index_size,
- /*inout*/ int** entity_topologies,
- /*inout*/ int* entity_topologies_allocated,
- /*out*/ int* entity_topologies_size,
- /*out*/ int *err);
-
/**\brief Get entities of specific type and/or topology in set or instance
*
* Get entities of specific type and/or topology in set or instance. All
@@ -490,7 +404,7 @@
* mesh or set.
* \param instance iMesh instance handle
* \param entity_set_handle Entity set whose adjacent entities are requested
- * (zero indicates whole mesh)
+ * (root set indicates whole mesh)
* \param entity_type_requestor Return entities adjacent to entities of this
* type
* \param entity_topology_requestor Return entities adjacent to entities of
@@ -514,7 +428,7 @@
* \param *err Pointer to error type returned from function
*/
void iMesh_getAdjEntities(iMesh_Instance instance,
- /*in*/ const iBase_EntityHandle entity_set_handle,
+ /*in*/ const iBase_EntitySetHandle entity_set_handle,
/*in*/ const int entity_type_requestor,
/*in*/ const int entity_topology_requestor,
/*in*/ const int entity_type_requested,
@@ -690,16 +604,16 @@
* \param instance iMesh instance for this call
* \param entity_handles Entities from which adjacencies are requested
* \param entity_handles_size Number of entities whose adjacencies are requested
- * \param order_adjacent_key Bridge dimension for 2nd order adjacencies
- * \param requested_entity_type Dimension of adjacent entities returned
- * \param *adj_entity_handles Adjacent entities
- * \param *adj_entity_handles_allocated Allocated size of returned array
- * \param *adj_entity_handles_size Occupied size of returned array
- * \param *offset Offset[i] is offset into adj_entity_handles of 2nd order
+ * \param bridge_dimension Bridge dimension for 2nd order adjacencies
+ * \param to_dimension Dimension of adjacent entities returned
+ * \param adj_entity_handles Adjacent entities
+ * \param adj_entity_handles_allocated Allocated size of returned array
+ * \param adj_entity_handles_size Occupied size of returned array
+ * \param offset Offset[i] is offset into adj_entity_handles of 2nd order
* adjacencies of ith entity in entity_handles
- * \param *offset_allocated Allocated size of offset array
- * \param *offset_size Occupied size of offset array
- * \param *err Pointer to error type returned from function
+ * \param offset_allocated Allocated size of offset array
+ * \param offset_size Occupied size of offset array
+ * \param err
*/
void iMesh_getEntArr2ndAdj( iMesh_Instance instance,
iBase_EntityHandle const* entity_handles,
@@ -714,6 +628,62 @@
int* offset_size,
int* err );
+ /**\brief Get indexed representation of mesh or subset of mesh
+ *
+ * Given an entity set and optionally a type or topology, return:
+ * - The entities in the set of the specified type or topology
+ * - The entities adjacent to those entities with a specified
+ * type, as a list of unique handles.
+ * - For each entity in the first list, the adjacent entities,
+ * specified as indices into the second list.
+ *
+ *\param entity_set_handle The set of entities from which to query
+ *\param entity_type_requestor If not iBase_ALL_TYPES, act only on
+ * the subset of 'entity_set_handle' of the
+ * specified type.
+ *\param entity_topology_requestor If not iMesh_ALL_TOPOLOGIES, act only
+ * on the subset of 'entity_set_handle' with
+ * the specified topology.
+ *\param entity_type_requested The type of the adjacent entities to
+ * return.
+ *\param entity_handles The handles of the (non-struct) subset of
+ * the entity set indicated by
+ * 'entity_set_handle' and the optional type
+ * and topology filtering arguments.
+ *\param adj_entity_handles The union of the entities of type
+ * 'requested_entity_type' adjacent to each
+ * entity in 'entity_handles'.
+ *\param adj_entity_indices For each entity in 'entity_handles', the
+ * adjacent entities of type
+ * 'entity_type_requested', specified as
+ * indices into 'adj_entity_handles'. The
+ * values are concatenated into a single
+ * array in the order of the entity handles
+ * in 'entity_handles'.
+ *\param offset For each entity in the corresponding
+ * position in 'entity_handles', the position
+ * in 'adj_entity_indices' at which values
+ * for that entity are stored.
+ */
+ void iMesh_getAdjEntIndices(iMesh_Instance instance,
+ /*in*/ iBase_EntitySetHandle entity_set_handle,
+ /*in*/ int entity_type_requestor,
+ /*in*/ int entity_topology_requestor,
+ /*in*/ int entity_type_requested,
+ /*inout*/ iBase_EntityHandle** entity_handles,
+ /*inout*/ int* entity_handles_allocated,
+ /*out*/ int* entity_handles_size,
+ /*inout*/ iBase_EntityHandle** adj_entity_handles,
+ /*inout*/ int* adj_entity_handles_allocated,
+ /*out*/ int* adj_entity_handles_size,
+ /*inout*/ int** adj_entity_indices,
+ /*inout*/ int* adj_entity_indices_allocated,
+ /*out*/ int* adj_entity_indices_size,
+ /*inout*/ int** offset,
+ /*inout*/ int* offset_allocated,
+ /*out*/ int* offset_size,
+ /*out*/ int *err);
+
/**\brief Create an entity set
*
* Create an entity set, either ordered (isList=1) or unordered
@@ -810,8 +780,8 @@
* \param *err Pointer to error type returned from function
*/
void iMesh_addEntToSet(iMesh_Instance instance,
- /*in*/ const iBase_EntityHandle entity_handle,
- /*inout*/ iBase_EntitySetHandle* entity_set,
+ /*in*/ iBase_EntityHandle entity_handle,
+ /*in*/ iBase_EntitySetHandle entity_set,
/*out*/ int *err);
/**\brief Remove an entity from a set
@@ -824,8 +794,8 @@
* \param *err Pointer to error type returned from function
*/
void iMesh_rmvEntFromSet(iMesh_Instance instance,
- /*in*/ const iBase_EntityHandle entity_handle,
- /*inout*/ iBase_EntitySetHandle* entity_set,
+ /*in*/ iBase_EntityHandle entity_handle,
+ /*in*/ iBase_EntitySetHandle entity_set,
/*out*/ int *err);
@@ -839,9 +809,9 @@
* \param *err Pointer to error type returned from function
*/
void iMesh_addEntArrToSet(iMesh_Instance instance,
- /*in*/ const iBase_EntityHandle* entity_handles,
- /*in*/ const int entity_handles_size,
- /*inout*/ iBase_EntitySetHandle* entity_set,
+ /*in*/ iBase_EntityHandle* entity_handles,
+ /*in*/ int entity_handles_size,
+ /*in*/ iBase_EntitySetHandle entity_set,
/*out*/ int *err);
@@ -855,9 +825,9 @@
* \param *err Pointer to error type returned from function
*/
void iMesh_rmvEntArrFromSet(iMesh_Instance instance,
- /*in*/ const iBase_EntityHandle* entity_handles,
- /*in*/ const int entity_handles_size,
- /*inout*/ iBase_EntitySetHandle* entity_set,
+ /*in*/ iBase_EntityHandle* entity_handles,
+ /*in*/ int entity_handles_size,
+ /*in*/ iBase_EntitySetHandle entity_set,
/*out*/ int *err);
@@ -870,8 +840,8 @@
* \param *err Pointer to error type returned from function
*/
void iMesh_addEntSet(iMesh_Instance instance,
- /*in*/ const iBase_EntityHandle entity_set_to_add,
- /*inout*/ iBase_EntitySetHandle* entity_set_handle,
+ /*in*/ iBase_EntitySetHandle entity_set_to_add,
+ /*in*/ iBase_EntitySetHandle entity_set_handle,
/*out*/ int *err);
@@ -884,8 +854,8 @@
* \param *err Pointer to error type returned from function
*/
void iMesh_rmvEntSet(iMesh_Instance instance,
- /*in*/ const iBase_EntitySetHandle entity_set_to_remove,
- /*inout*/ iBase_EntitySetHandle* entity_set_handle,
+ /*in*/ iBase_EntitySetHandle entity_set_to_remove,
+ /*in*/ iBase_EntitySetHandle entity_set_handle,
/*out*/ int *err);
/**\brief Return whether an entity is contained in another set
@@ -901,18 +871,28 @@
*/
void iMesh_isEntContained(iMesh_Instance instance,
/*in*/ const iBase_EntitySetHandle containing_entity_set,
- /*in*/ const iBase_EntitySetHandle contained_entity,
+ /*in*/ const iBase_EntityHandle contained_entity,
/*out*/ int *is_contained,
/*out*/ int *err);
-
+
+ /**\brief Return whether entities are contained in a set
+ *
+ * Return whether each entity is contained in the set.
+ * \param instance iMesh instance handle
+ * \param containing_entity_set Entity set being queried
+ * \param entity_handles List of entities for which to check containment.
+ * \param is_contained One value for each input entity, 1 if contained
+ * in set, zero otherwise.
+ * \param *err Pointer to error type returned from function
+ */
void iMesh_isEntArrContained( iMesh_Instance instance,
- /*in*/ iBase_EntitySetHandle containing_set,
- /*in*/ const iBase_EntitySetHandle* entity_handles,
- /*in*/ int num_entity_handles,
- /*inout*/ int** is_contained,
- /*inout*/ int* is_contained_allocated,
- /*out*/ int* is_contained_size,
- /*out*/ int* err );
+ /*in*/ iBase_EntitySetHandle containing_set,
+ /*in*/ const iBase_EntityHandle* entity_handles,
+ /*in*/ int num_entity_handles,
+ /*inout*/ int** is_contained,
+ /*inout*/ int* is_contained_allocated,
+ /*out*/ int* is_contained_size,
+ /*out*/ int* err );
/**\brief Return whether an entity set is contained in another set
*
@@ -941,8 +921,8 @@
* \param *err Pointer to error type returned from function
*/
void iMesh_addPrntChld(iMesh_Instance instance,
- /*inout*/ iBase_EntitySetHandle* parent_entity_set,
- /*inout*/ iBase_EntitySetHandle* child_entity_set,
+ /*in*/ iBase_EntitySetHandle parent_entity_set,
+ /*in*/ iBase_EntitySetHandle child_entity_set,
/*out*/ int *err);
/**\brief Remove parent/child links between two sets
@@ -954,8 +934,8 @@
* \param *err Pointer to error type returned from function
*/
void iMesh_rmvPrntChld(iMesh_Instance instance,
- /*inout*/ iBase_EntitySetHandle* parent_entity_set,
- /*inout*/ iBase_EntitySetHandle* child_entity_set,
+ /*in*/ iBase_EntitySetHandle parent_entity_set,
+ /*in*/ iBase_EntitySetHandle child_entity_set,
/*out*/ int *err);
/**\brief Return whether two sets are related by parent/child links
@@ -1987,12 +1967,12 @@
* specified "to" dimension.
* \param instance iMesh instance for this call
* \param entity_handle Entity from which adjacencies are requested
- * \param order_adjacent_key Bridge dimension for 2nd order adjacencies
- * \param requested_entity_type Dimension of adjacent entities returned
- * \param *adjacent_entities Pointer to array of adjacent entities
- * \param *adjacent_entities_allocated Pointer to allocated size of returned array
- * \param *adjacent_entities_size Pointer to occupied size of returned array
- * \param *err Pointer to error type returned from function
+ * \param bridge_dimension Bridge dimension for 2nd order adjacencies
+ * \param to_dimension Dimension of adjacent entities returned
+ * \param adjacent_entities Adjacent entities
+ * \param adjacent_entities_allocated Allocated size of returned array
+ * \param adjacent_entities_size Occupied size of returned array
+ * \param err
*/
void iMesh_getEnt2ndAdj( iMesh_Instance instance,
iBase_EntityHandle entity_handle,
Modified: MOAB/trunk/tools/iMesh/iMesh_MOAB.cpp
===================================================================
--- MOAB/trunk/tools/iMesh/iMesh_MOAB.cpp 2009-01-20 22:54:22 UTC (rev 2563)
+++ MOAB/trunk/tools/iMesh/iMesh_MOAB.cpp 2009-01-21 01:05:15 UTC (rev 2564)
@@ -191,7 +191,7 @@
iter->currentPos = iter->iteratorRange.begin();
iter->requestedSize = array_size;
}
- return iter;
+ return reinterpret_cast<iMesh_EntityIterator>(iter);
}
@@ -293,7 +293,7 @@
}
void iMesh_load(iMesh_Instance instance,
- const iBase_EntityHandle handle,
+ const iBase_EntitySetHandle handle,
const char *name, const char *options,
int *err, int name_len, int options_len)
{
@@ -337,7 +337,7 @@
}
void iMesh_save(iMesh_Instance instance,
- const iBase_EntityHandle handle,
+ const iBase_EntitySetHandle handle,
const char *name, const char *options,
int *err, const int name_len, int options_len)
{
@@ -835,7 +835,7 @@
/*in*/ const int requested_entity_type,
/*in*/ const int requested_entity_topology,
/*in*/ const int requested_array_size,
- /*out*/ iMesh_EntityIterator* entArr_iterator,
+ /*out*/ iMesh_EntityArrIterator* entArr_iterator,
int *err)
{
MBEntityType req_type = mb_topology_table[requested_entity_topology];
@@ -867,7 +867,8 @@
RETURN(iMesh_LAST_ERROR.error_type);
}
- *entArr_iterator = create_itaps_iterator( range, requested_array_size );
+ *entArr_iterator = reinterpret_cast<iMesh_EntityArrIterator>
+ (create_itaps_iterator( range, requested_array_size ));
RETURN(iBase_SUCCESS);
}
@@ -875,7 +876,7 @@
* Method: getEntArrNextIter[]
*/
void iMesh_getNextEntArrIter (iMesh_Instance instance,
- /*in*/ iMesh_EntityIterator entArr_iterator,
+ /*in*/ iMesh_EntityArrIterator entArr_iterator,
/*inout*/ iBase_EntityHandle** entity_handles,
/*inout*/ int* entity_handles_allocated,
/*out*/ int* entity_handles_size,
@@ -906,7 +907,7 @@
* Method: resetEntArrIter[]
*/
void iMesh_resetEntArrIter (iMesh_Instance instance,
- /*in*/ iMesh_EntityIterator entArr_iterator, int *err)
+ /*in*/ iMesh_EntityArrIterator entArr_iterator, int *err)
{
RangeIterator *this_it = RANGE_ITERATOR(entArr_iterator);
@@ -916,7 +917,7 @@
}
void iMesh_endEntArrIter (iMesh_Instance instance,
- /*in*/ iMesh_EntityIterator entArr_iterator, int *err)
+ /*in*/ iMesh_EntityArrIterator entArr_iterator, int *err)
{
RangeIterator *this_it = RANGE_ITERATOR(entArr_iterator);
@@ -1139,6 +1140,122 @@
RETURN(iBase_SUCCESS);
}
+ void iMesh_getAdjEntIndices(iMesh_Instance instance,
+ /*in*/ iBase_EntitySetHandle entity_set_handle,
+ /*in*/ int entity_type_requestor,
+ /*in*/ int entity_topology_requestor,
+ /*in*/ int entity_type_requested,
+ /*inout*/ iBase_EntityHandle** entity_handles,
+ /*inout*/ int* entity_handles_allocated,
+ /*out*/ int* entity_handles_size,
+ /*inout*/ iBase_EntityHandle** adj_entity_handles,
+ /*inout*/ int* adj_entity_handles_allocated,
+ /*out*/ int* adj_entity_handles_size,
+ /*inout*/ int** adj_entity_indices,
+ /*inout*/ int* adj_entity_indices_allocated,
+ /*out*/ int* adj_entity_indices_size,
+ /*inout*/ int** offset,
+ /*inout*/ int* offset_allocated,
+ /*out*/ int* offset_size,
+ /*out*/ int *err)
+ {
+ // get source entities
+ iMesh_getEntities( instance,
+ entity_set_handle,
+ entity_type_requestor,
+ entity_topology_requestor,
+ entity_handles,
+ entity_handles_allocated,
+ entity_handles_size,
+ err );
+ if (iBase_SUCCESS != *err)
+ return;
+
+ // get adjacencies
+ // If int and iBase_EntityHandle are the same size, put directly
+ // into adj_entity_indices
+ iBase_EntityHandle* temp_storage = 0;
+ int size = 0;
+ if (sizeof(int) == sizeof(iBase_EntityHandle)) {
+ iMesh_getEntArrAdj( instance,
+ *entity_handles, *entity_handles_size,
+ entity_type_requested,
+ reinterpret_cast<iBase_EntityHandle**>(adj_entity_indices),
+ adj_entity_indices_allocated,
+ adj_entity_indices_size,
+ offset, offset_allocated, offset_size,
+ err );
+ temp_storage = reinterpret_cast<iBase_EntityHandle*>(*adj_entity_indices);
+ size = *adj_entity_indices_size;
+ }
+ // Otherwise put result into new, temporary array and make sure
+ // that adj_entity_indices can hold the same number of entries.
+ else {
+ int alloc = 0;
+ iMesh_getEntArrAdj( instance,
+ *entity_handles, *entity_handles_size,
+ entity_type_requested,
+ &temp_storage, &alloc, &size,
+ offset, offset_allocated, offset_size,
+ err );
+ if (!*adj_entity_indices_allocated) {
+ *adj_entity_indices = (int*)malloc(sizeof(iBase_EntityHandle)*size);
+ if (!*adj_entity_indices) {
+ *err = iBase_MEMORY_ALLOCATION_FAILED;
+ return;
+ }
+ *adj_entity_indices_allocated = size;
+ }
+ else if (*adj_entity_indices_allocated < size) {
+ *err = iBase_BAD_ARRAY_DIMENSION;
+ return;
+ }
+ *adj_entity_indices_size = size;
+ }
+ if (*err != iBase_SUCCESS)
+ return;
+
+ // Put sorted unique version of temp array into final one
+ // If input allocation is too small, need to use another temporary
+ iBase_EntityHandle* unique_adj = 0;
+ if (*adj_entity_handles_allocated == 0) {
+ *adj_entity_handles_allocated = size;
+ *adj_entity_handles = (iBase_EntityHandle*)malloc(sizeof(iBase_EntityHandle) * size);
+ unique_adj = *adj_entity_handles;
+ }
+ else if (*adj_entity_handles_allocated >= size) {
+ unique_adj = *adj_entity_handles;
+ }
+ else {
+ unique_adj = (iBase_EntityHandle*)malloc(sizeof(iBase_EntityHandle) * size);
+ }
+ std::copy( temp_storage, temp_storage+size, unique_adj );
+ std::sort( unique_adj, unique_adj + size );
+ *adj_entity_handles_size = std::unique( unique_adj, unique_adj + size ) - unique_adj;
+
+ // now copy data and relase temporary storage if necessary
+ if (*adj_entity_handles != unique_adj) {
+ if (*adj_entity_handles_allocated < *adj_entity_handles_size) {
+ *err = iBase_BAD_ARRAY_DIMENSION;
+ free(unique_adj);
+ if ((int*)temp_storage != *adj_entity_indices)
+ free(temp_storage);
+ return;
+ }
+ std::copy( unique_adj, unique_adj + size, *adj_entity_handles );
+ free( unique_adj );
+ unique_adj = *adj_entity_handles;
+ }
+
+ // convert from adjacency list to indices into unique_adj
+ for (int i = 0; i < *adj_entity_indices_size; ++i)
+ (*adj_entity_indices)[i] = std::lower_bound( unique_adj,
+ unique_adj + *adj_entity_handles_size, temp_storage[i] ) - unique_adj;
+ if ((int*)temp_storage != *adj_entity_indices)
+ free(temp_storage);
+ }
+
+
void iMesh_createEntSet(iMesh_Instance instance,
/*in*/ const int isList,
/*out*/ iBase_EntitySetHandle* entity_set_created, int *err)
@@ -1158,7 +1275,7 @@
}
// return EntitySet_Handle
- *entity_set_created = (iBase_EntityHandle)meshset;
+ *entity_set_created = (iBase_EntitySetHandle)meshset;
RETURN(iBase_ERROR_MAP[result]);
}
@@ -1241,19 +1358,20 @@
int k = 0;
for (; iter != end_iter; iter++)
- (*contained_entset_handles)[k++] = (iBase_EntityHandle)*iter;
+ (*contained_entset_handles)[k++] = (iBase_EntitySetHandle)*iter;
*contained_entset_handles_size = sets.size();
RETURN(iBase_SUCCESS);
}
void iMesh_addEntArrToSet(iMesh_Instance instance,
- /*in*/ const iBase_EntityHandle* entity_handles,
- /*in*/ const int entity_handles_size,
- /*inout*/ iBase_EntitySetHandle* entity_set, int *err)
+ /*in*/ iBase_EntityHandle* entity_handles,
+ /*in*/ int entity_handles_size,
+ /*in*/ iBase_EntitySetHandle entity_set,
+ int *err)
{
const MBEntityHandle *ents = CONST_HANDLE_ARRAY_PTR(entity_handles);
- MBErrorCode result = MBI->add_entities(ENTITY_HANDLE(*entity_set),
+ MBErrorCode result = MBI->add_entities(ENTITY_HANDLE(entity_set),
ents, entity_handles_size);
if (result != MB_SUCCESS) {
@@ -1267,21 +1385,21 @@
}
void iMesh_addEntToSet(iMesh_Instance instance,
- /*in*/ const iBase_EntityHandle entity_handle,
- /*inout*/ iBase_EntitySetHandle* entity_set, int *err)
+ /*in*/ iBase_EntityHandle entity_handle,
+ /*in*/ iBase_EntitySetHandle entity_set, int *err)
{
iMesh_addEntArrToSet(instance, &entity_handle, 1, entity_set, err);
}
void iMesh_rmvEntArrFromSet(iMesh_Instance instance,
- /*in*/ const iBase_EntityHandle* entity_handles,
- /*in*/ const int entity_handles_size,
- /*inout*/ iBase_EntitySetHandle* entity_set, int *err)
+ /*in*/ iBase_EntityHandle* entity_handles,
+ /*in*/ int entity_handles_size,
+ /*in*/ iBase_EntitySetHandle entity_set, int *err)
{
const MBEntityHandle *ents = CONST_HANDLE_ARRAY_PTR(entity_handles);
MBErrorCode result = MBI->remove_entities
- (ENTITY_HANDLE(*entity_set), ents, entity_handles_size);
+ (ENTITY_HANDLE(entity_set), ents, entity_handles_size);
if (result != MB_SUCCESS) {
std::string msg("iMesh_rmvEntArrFromSet:ERROR removing entities in EntitySet, "
@@ -1294,17 +1412,19 @@
}
void iMesh_rmvEntFromSet(iMesh_Instance instance,
- /*in*/ const iBase_EntityHandle entity_handle,
- /*inout*/ iBase_EntitySetHandle* entity_set, int *err)
+ /*in*/ iBase_EntityHandle entity_handle,
+ /*in*/ iBase_EntitySetHandle entity_set,
+ int *err)
{
iMesh_rmvEntArrFromSet(instance, &entity_handle, 1, entity_set, err);
}
void iMesh_addEntSet(iMesh_Instance instance,
- /*in*/ const iBase_EntitySetHandle entity_set_to_add,
- /*inout*/ iBase_EntitySetHandle* entity_set_handle, int *err)
+ /*in*/ iBase_EntitySetHandle entity_set_to_add,
+ /*in*/ iBase_EntitySetHandle entity_set_handle,
+ int *err)
{
- MBErrorCode result = MBI->add_entities(ENTITY_HANDLE(*entity_set_handle),
+ MBErrorCode result = MBI->add_entities(ENTITY_HANDLE(entity_set_handle),
CONST_HANDLE_ARRAY_PTR(&entity_set_to_add), 1);
if (result != MB_SUCCESS) {
@@ -1318,11 +1438,12 @@
}
void iMesh_rmvEntSet(iMesh_Instance instance,
- /*in*/ const iBase_EntitySetHandle entity_set_to_remove,
- /*inout*/ iBase_EntitySetHandle *entity_set_handle, int *err)
+ /*in*/ iBase_EntitySetHandle entity_set_to_remove,
+ /*in*/ iBase_EntitySetHandle entity_set_handle,
+ int *err)
{
MBErrorCode result = MBI->remove_entities
- (ENTITY_HANDLE(*entity_set_handle), CONST_HANDLE_ARRAY_PTR(&entity_set_to_remove), 1);
+ (ENTITY_HANDLE(entity_set_handle), CONST_HANDLE_ARRAY_PTR(&entity_set_to_remove), 1);
if (result != MB_SUCCESS) {
std::string msg("iMesh_rmvEntSet:ERROR removing entitysets in EntitySet, "
@@ -1335,32 +1456,19 @@
}
void iMesh_isEntContained (iMesh_Instance instance,
- /*in*/ const iBase_EntitySetHandle containing_entity_set,
- /*in*/ const iBase_EntitySetHandle contained_entity,
+ /*in*/ iBase_EntitySetHandle containing_entity_set,
+ /*in*/ iBase_EntityHandle contained_entity,
int *is_contained, int *err)
{
- MBRange all_ents;
- MBErrorCode result = MBI->get_entities_by_handle(ENTITY_HANDLE(containing_entity_set),
- all_ents);
- if (result != MB_SUCCESS) {
- std::string msg("iMesh_isContainedIn:ERROR getting entities in EntitySet, "
- "with error type: ");
- msg += MBI->get_error_string(result);
- iMesh_processError(iBase_ERROR_MAP[result], msg.c_str());
- }
-
- if (all_ents.find(ENTITY_HANDLE(contained_entity)) == all_ents.end())
- *is_contained = false;
-
- else
- *is_contained = true;
-
- RETURN(iBase_ERROR_MAP[result]);
+ int junk1 = 1, junk2 = 1;
+ iMesh_isEntArrContained( instance, containing_entity_set,
+ &contained_entity, 1, &is_contained,
+ &junk1, &junk2, err );
}
void iMesh_isEntArrContained( iMesh_Instance instance,
/*in*/ iBase_EntitySetHandle containing_set,
- /*in*/ const iBase_EntitySetHandle* entity_handles,
+ /*in*/ const iBase_EntityHandle* entity_handles,
/*in*/ int num_entity_handles,
/*inout*/ int** is_contained,
/*inout*/ int* is_contained_allocated,
@@ -1390,17 +1498,19 @@
/*in*/ const iBase_EntitySetHandle contained_entity_set,
int *is_contained, int *err)
{
- iMesh_isEntContained(instance, containing_entity_set, contained_entity_set,
+ iMesh_isEntContained(instance, containing_entity_set,
+ reinterpret_cast<iBase_EntityHandle>(contained_entity_set),
is_contained, err);
}
void iMesh_addPrntChld(iMesh_Instance instance,
- /*inout*/ iBase_EntitySetHandle* parent_entity_set,
- /*inout*/ iBase_EntitySetHandle* child_entity_set, int *err)
+ /*inout*/ iBase_EntitySetHandle parent_entity_set,
+ /*inout*/ iBase_EntitySetHandle child_entity_set,
+ int *err)
{
MBErrorCode result = MBI->add_parent_child
- (ENTITY_HANDLE(*parent_entity_set),
- ENTITY_HANDLE(*child_entity_set));
+ (ENTITY_HANDLE(parent_entity_set),
+ ENTITY_HANDLE(child_entity_set));
if (result != MB_SUCCESS) {
std::string msg("MB Mesh::addPrntChld: ERROR addParentChild failed, with error type: ");
@@ -1413,12 +1523,13 @@
}
void iMesh_rmvPrntChld(iMesh_Instance instance,
- /*inout*/ iBase_EntitySetHandle* parent_entity_set,
- /*inout*/ iBase_EntitySetHandle* child_entity_set, int *err)
+ /*inout*/ iBase_EntitySetHandle parent_entity_set,
+ /*inout*/ iBase_EntitySetHandle child_entity_set,
+ int *err)
{
MBErrorCode result = MBI->remove_parent_child
- (ENTITY_HANDLE(*parent_entity_set),
- ENTITY_HANDLE(*child_entity_set));
+ (ENTITY_HANDLE(parent_entity_set),
+ ENTITY_HANDLE(child_entity_set));
if (result != MB_SUCCESS) {
std::string msg("iMesh_rmvPrntChld: ERROR RemoveParentChild failed, with error type: ");
@@ -2139,7 +2250,7 @@
*status = iBase_CREATION_FAILED;
else
*status = iBase_SUCCESS;
- *new_entity_handle = CAST_TO_VOID(tmp_ent);
+ *new_entity_handle = reinterpret_cast<iBase_EntityHandle>(tmp_ent);
*err = *status;
}
@@ -2515,7 +2626,8 @@
int *err)
{
iMesh_initEntArrIter(instance, entity_set_handle, requested_entity_type,
- requested_entity_topology, 1, entity_iterator,
+ requested_entity_topology, 1,
+ reinterpret_cast<iMesh_EntityArrIterator*>(entity_iterator),
err);
}
@@ -2526,20 +2638,25 @@
{
int eh_size = 1;
iMesh_getNextEntArrIter(instance,
- entity_iterator, &entity_handle, &eh_size, &eh_size, is_end, err);
+ reinterpret_cast<iMesh_EntityArrIterator>(entity_iterator),
+ &entity_handle, &eh_size, &eh_size, is_end, err);
}
void iMesh_resetEntIter (iMesh_Instance instance,
/*in*/ iMesh_EntityIterator entity_iterator, int *err)
{
- iMesh_resetEntArrIter(instance, entity_iterator, err);
+ iMesh_resetEntArrIter(instance,
+ reinterpret_cast<iMesh_EntityArrIterator>(entity_iterator),
+ err);
}
void iMesh_endEntIter (iMesh_Instance instance,
/*in*/ iMesh_EntityIterator entity_iterator, int *err)
{
- iMesh_endEntArrIter(instance, entity_iterator, err);
+ iMesh_endEntArrIter(instance,
+ reinterpret_cast<iMesh_EntityArrIterator>(entity_iterator),
+ err);
}
void iMesh_getEntTopo (iMesh_Instance instance,
@@ -3123,31 +3240,32 @@
MBRange &from_ents,
MBEntityHandle in_set)
{
- assert(MBimesh->AdjTable[10] || MBimesh->AdjTable[5]);
+ MBiMesh* mbimesh = dynamic_cast<MBiMesh*>(instance);
+ assert(mbimesh->AdjTable[10] || mbimesh->AdjTable[5]);
MBRange int_ents;
MBErrorCode result;
- if (MBimesh->AdjTable[10]) {
- result = MBI->get_adjacencies(from_ents, 2, true, int_ents,
+ if (mbimesh->AdjTable[10]) {
+ result = instance->get_adjacencies(from_ents, 2, true, int_ents,
MBInterface::UNION);
if (MB_SUCCESS != result) return result;
unsigned int old_size = from_ents.size();
from_ents.merge(int_ents);
if (old_size != from_ents.size() && in_set) {
- result = MBI->add_entities(in_set, int_ents);
+ result = instance->add_entities(in_set, int_ents);
if (MB_SUCCESS != result) return result;
}
}
- if (MBimesh->AdjTable[5]) {
+ if (mbimesh->AdjTable[5]) {
int_ents.clear();
- result = MBI->get_adjacencies(from_ents, 1, true, int_ents,
+ result = instance->get_adjacencies(from_ents, 1, true, int_ents,
MBInterface::UNION);
if (MB_SUCCESS != result) return result;
unsigned int old_size = from_ents.size();
from_ents.merge(int_ents);
if (old_size != from_ents.size() && in_set) {
- result = MBI->add_entities(in_set, int_ents);
+ result = instance->add_entities(in_set, int_ents);
if (MB_SUCCESS != result) return result;
}
}
Modified: MOAB/trunk/tools/iMesh/iMesh_protos.h
===================================================================
--- MOAB/trunk/tools/iMesh/iMesh_protos.h 2009-01-20 22:54:22 UTC (rev 2563)
+++ MOAB/trunk/tools/iMesh/iMesh_protos.h 2009-01-21 01:05:15 UTC (rev 2564)
@@ -10,13 +10,12 @@
#define iMesh_save FC_FUNC_(imesh_save, IMESH_SAVE)
#define iMesh_getRootSet FC_FUNC_(imesh_getrootset, IMESH_GETROOTSET)
#define iMesh_getGeometricDimension FC_FUNC_(imesh_getgeometricdimension, IMESH_GETGEOMETRICDIMENSION)
+#define iMesh_setGeometricDimension FC_FUNC_(imesh_setgeometricdimension, IMESH_SETGEOMETRICDIMENSION)
#define iMesh_getDfltStorage FC_FUNC_(imesh_getdfltstorage, IMESH_GETDFLTSTORAGE)
#define iMesh_getAdjTable FC_FUNC_(imesh_getadjtable, IMESH_GETADJTABLE)
#define iMesh_getNumOfType FC_FUNC_(imesh_getnumoftype, IMESH_GETNUMOFTYPE)
#define iMesh_getNumOfTopo FC_FUNC_(imesh_getnumoftopo, IMESH_GETNUMOFTOPO)
#define iMesh_areEHValid FC_FUNC_(imesh_areehvalid, IMESH_AREEHVALID)
-#define iMesh_getAllVtxCoords FC_FUNC_(imesh_getallvtxcoords, IMESH_GETALLVTXCOORDS)
-#define iMesh_getVtxCoordIndex FC_FUNC_(imesh_getvtxcoordindex, IMESH_GETVTXCOORDINDEX)
#define iMesh_fetErrorType FC_FUNC_(imesh_feterrorType, IMESH_FETERRORTYPE)
#define iMesh_getEntities FC_FUNC_(imesh_getentities, IMESH_GETENTITIES)
#define iMesh_getVtxArrCoords FC_FUNC_(imesh_getvtxarrcoords, IMESH_GETVTXARRCOORDS)
@@ -29,6 +28,7 @@
#define iMesh_getEntArrType FC_FUNC_(imesh_getentarrtype, IMESH_GETENTARRTYPE)
#define iMesh_getEntArrAdj FC_FUNC_(imesh_getentarradj, IMESH_GETENTARRADJ)
#define iMesh_getEntArr2ndAdj FC_FUNC_(imesh_getentarr2ndadj, IMESH_GETENTARR2NDADJ)
+#define iMesh_getAdjEntIndices FC_FUNC_(imesh_getadjentindices, IMESH_GETADJENTINDICES)
#define iMesh_createEntSet FC_FUNC_(imesh_createentset, IMESH_CREATEENTSET)
#define iMesh_destroyEntSet FC_FUNC_(imesh_destroyentset, IMESH_DESTROYENTSET)
#define iMesh_isList FC_FUNC_(imesh_islist, IMESH_ISLIST)
@@ -41,6 +41,7 @@
#define iMesh_addEntSet FC_FUNC_(imesh_addentset, IMESH_ADDENTSET)
#define iMesh_rmvEntSet FC_FUNC_(imesh_rmventset, IMESH_RMVENTSET)
#define iMesh_isEntContained FC_FUNC_(imesh_isentcontained, IMESH_ISENTCONTAINED)
+#define iMesh_isEntArrContained FC_FUNC_(imesh_isentarrcontained, IMESH_ISENTARRCONTAINED)
#define iMesh_isEntSetContained FC_FUNC_(imesh_isentsetcontained, IMESH_ISENTSETCONTAINED)
#define iMesh_addPrntChld FC_FUNC_(imesh_addprntchld, IMESH_ADDPRNTCHLD)
#define iMesh_rmvPrntChld FC_FUNC_(imesh_rmvprntchld, IMESH_RMVPRNTCHLD)
More information about the moab-dev
mailing list