MOAB: Mesh Oriented datABase  (version 5.4.1)
moab::serial_tag_data Struct Reference

Public Member Functions

size_t len () const
void * default_value ()
const void * default_value () const
void set_default_value (const void *val)

Static Public Member Functions

static size_t pad (size_t len)
static size_t def_val_bytes (int def_val_len, DataType type)
static size_t len (int name_len, int def_val_len, DataType type)

Public Attributes

TagType storage
DataType type
int size
int name_len
int def_val_len
char name [sizeof(unsigned long)]

Detailed Description

Definition at line 524 of file WriteHDF5Parallel.cpp.


Member Function Documentation

static size_t moab::serial_tag_data::def_val_bytes ( int  def_val_len,
DataType  type 
) [inline, static]

Definition at line 541 of file WriteHDF5Parallel.cpp.

References def_val_len, MB_TYPE_BIT, MB_TYPE_DOUBLE, MB_TYPE_HANDLE, MB_TYPE_INTEGER, and MB_TYPE_OPAQUE.

Referenced by len(), and set_default_value().

    {
        switch( type )
        {
            case MB_TYPE_BIT:
                return def_val_len ? 1 : 0;
            case MB_TYPE_OPAQUE:
                return def_val_len;
            case MB_TYPE_INTEGER:
                return def_val_len * sizeof( int );
            case MB_TYPE_DOUBLE:
                return def_val_len * sizeof( double );
            case MB_TYPE_HANDLE:
                return def_val_len * sizeof( EntityHandle );
        }
        return 0;
    }
const void* moab::serial_tag_data::default_value ( ) const [inline]

Definition at line 572 of file WriteHDF5Parallel.cpp.

References default_value().

    {
        return const_cast< serial_tag_data* >( this )->default_value();
    }
static size_t moab::serial_tag_data::len ( int  name_len,
int  def_val_len,
DataType  type 
) [inline, static]

Definition at line 559 of file WriteHDF5Parallel.cpp.

References def_val_bytes(), and pad().

Referenced by moab::WriteHDF5Parallel::check_serial_tag_data().

    {
        return sizeof( serial_tag_data ) + pad( name_len + def_val_bytes( def_val_len, type ) ) -
               sizeof( unsigned long );
    }
size_t moab::serial_tag_data::len ( ) const [inline]

Definition at line 564 of file WriteHDF5Parallel.cpp.

References def_val_len, name_len, and type.

Referenced by moab::WriteHDF5Parallel::append_serial_tag_data(), and pad().

    {
        return len( name_len, def_val_len, type );
    }
static size_t moab::serial_tag_data::pad ( size_t  len) [inline, static]

Definition at line 533 of file WriteHDF5Parallel.cpp.

References len().

Referenced by len().

    {
        if( len % sizeof( unsigned long ) )
            return len + sizeof( unsigned long ) - len % sizeof( unsigned long );
        else
            return len;
    }
void moab::serial_tag_data::set_default_value ( const void *  val) [inline]

Member Data Documentation

List of all members.


The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines