16 #ifndef SPARSE_TAG_HPP
17 #define SPARSE_TAG_HPP
19 #ifndef IS_BUILDING_MB
20 #error "SparseTag.hpp isn't supposed to be included into an application"
24 #pragma warning( disable : 4786 )
28 #define STRINGIFY_( X ) #X
29 #define STRINGIFY( X ) STRINGIFY_( X )
30 #ifdef MOAB_HAVE_UNORDERED_MAP
31 #include STRINGIFY( MOAB_HAVE_UNORDERED_MAP )
54 return malloc( data_size );
100 Error* error_handler,
116 Error* error_handler,
134 Error* error_handler,
137 const void** data_ptrs,
138 int* data_lengths )
const;
153 Error* error_handler,
155 const void** data_ptrs,
156 int* data_lengths )
const;
169 Error* error_handler,
184 Error* error_handler,
203 Error* error_handler,
206 void const*
const* data_ptrs,
207 const int* data_lengths );
223 Error* error_handler,
225 void const*
const* data_ptrs,
226 const int* data_lengths );
242 Error* error_handler,
245 const void* value_ptr,
261 Error* error_handler,
263 const void* value_ptr,
275 Error* error_handler,
277 size_t num_entities );
312 Error* error_handler,
316 bool allocate =
true );
332 Range& output_entities,
350 size_t& output_count,
368 Error* error_handler,
369 Range& output_entities,
373 const Range* intersect_entities = 0 )
const;
382 unsigned long& total,
383 unsigned long& per_entity )
const;
392 #ifdef MOAB_HAVE_UNORDERED_MAP
393 typedef MOAB_UNORDERED_MAP_NS::unordered_map< EntityHandle, void* >
MapType;
395 typedef std::map< EntityHandle, void* >
MapType;
429 MapType::const_iterator iter,
431 MapType::const_iterator,
436 #ifdef MOAB_HAVE_UNORDERED_MAP
437 mData.insert( iter, std::pair< const EntityHandle, void* >( h, new_data ) );