[MOAB-dev] r5143 - MOAB/trunk/doc

Jason Kraftcheck kraftche at cae.wisc.edu
Wed Aug 31 11:23:00 CDT 2011


On 08/31/2011 11:11 AM, Iulian Grindeanu wrote:
> Thanks Jason, These are very nice, and very helpful in understanding the
> core of moab. I am still reading them :) There is also an online document
> explaining the hdf5 format used by moab 
> http://trac.mcs.anl.gov/projects/ITAPS/wiki/MOAB/h5m
> 
> can you add a few comments somewhere about the hdf5 reader/writer and the
> relation between SequenceData / EntitySequence and how are they retrieved
> / build during hdf5 reading/writing? Or is a document somewhere
> describing these?
> 

There is no explicit relation.  The HDF5 reader/writer instantiates data
using the normal APIs defined in Interface, WriteUtilIface, and ReadUtilIface.

> I am confused about the IDMap, RangeMap, moab::RangeMap::Range (different
> from moab::Range :( )

IDMap is a typedef of RangeMap.  RangeMap::Range is an internal data
structure used by RangeMap.  None of these have anything to do with
moab::Range other than using the same type of compressed data storage.

RangeMap maintains a mapping between two ID spaces (e.g. MOAB handles and
file IDs) where it is assumed that the data is nicely range-compressible.
It stores an array of tuples of the form {key, value, count} where if the
map is from MOAB handles to file IDs then 'key' is the start handle, 'value'
is the start file_id, and count is some number of consecutive handles and
ids that map to each other (i.e. key+5 maps to value+5 if 5<count).
RangeMap is very compact and supports very fast look-ups, but performs
poorly if insertions are not appends because it maintains a sorted array
internally.

- jason






More information about the moab-dev mailing list