lestes::md::types::tm_dt_bitfield_base Class Reference

Bitfield type. More...

#include <tm_data_type_base.g.hh>

Inheritance diagram for lestes::md::types::tm_dt_bitfield_base:

Inheritance graph
[legend]
List of all members.

Public Member Functions

ulint bitfield_width_get () const
 The method bitfield_width_get returns the value of the field tm_dt_bitfield_base::bitfield_width.
void bitfield_width_set (ulint)
 The method bitfield_width_set sets the field tm_dt_bitfield_base::bitfield_width to the given value.
virtual tm_data_type_base::kind_type kind_get ()
 Returns kind of the data type represented by this instance.
virtual ptr< reflection_listreflection_get () const
 for purposes of dumping
virtual ptr< field_list_listfield_values_get () const
 for purposes of dumping

Protected Member Functions

 tm_dt_bitfield_base (tm_data_type_base::id_type a__tm_data_type_base__id, format_type a__tm_data_type_base__format, ulint a__tm_data_type_base__bitwidth, ulint a__tm_data_type_base__alignment, ptr< ::lestes::md::registers::tm_register_base > a__tm_data_type_base__return_reg, lstring a__tm_data_type_base__asm_output, lstring a__tm_data_type_base__asm_decl, ulint a__tm_dt_bitfield_base__bitfield_width)
 Generated constructor for class tm_dt_bitfield_base.
virtual void gc_mark ()
 Marking routine for class tm_dt_bitfield_base.

Private Attributes

ulint bitfield_width
 Bitfield width.

Static Private Attributes

static ptr< reflection_listreflection = reflection

Detailed Description

Bitfield type.

Bitfield is subtype of tm_dt_simple_base - it has different bitwidth and layout than its base data type.

Note: Two bitfields can occupy single inseparable memory unit (e.g byte ) so that they must be transfered from memory together and some extra CPU work is needed to unpack them before and pack them after computation.

Note: This type is base class for bitfields. A concrete implementation is target machine-dependent and it is placed in /target/machine/${TARGET_CPU}/lestes/md/types/ directory.


Constructor & Destructor Documentation

lestes::md::types::tm_dt_bitfield_base::tm_dt_bitfield_base ( tm_data_type_base::id_type  a__tm_data_type_base__id,
format_type  a__tm_data_type_base__format,
ulint  a__tm_data_type_base__bitwidth,
ulint  a__tm_data_type_base__alignment,
ptr< ::lestes::md::registers::tm_register_base a__tm_data_type_base__return_reg,
lstring  a__tm_data_type_base__asm_output,
lstring  a__tm_data_type_base__asm_decl,
ulint  a__tm_dt_bitfield_base__bitfield_width 
) [protected]

Generated constructor for class tm_dt_bitfield_base.

Generated constructor for class tm_dt_bitfield_base.

Author:
lsg


Member Function Documentation

ulint lestes::md::types::tm_dt_bitfield_base::bitfield_width_get (  )  const

The method bitfield_width_get returns the value of the field tm_dt_bitfield_base::bitfield_width.

Returns:
The value of tm_dt_bitfield_base::bitfield_width.
Author:
lsg

void lestes::md::types::tm_dt_bitfield_base::bitfield_width_set ( ulint  x  ) 

The method bitfield_width_set sets the field tm_dt_bitfield_base::bitfield_width to the given value.

Parameters:
[in] x The new value to set tm_dt_bitfield_base::bitfield_width to.
Author:
lsg

tm_data_type_base::kind_type lestes::md::types::tm_dt_bitfield_base::kind_get (  )  [virtual]

Returns kind of the data type represented by this instance.

Returns kind of the data type.

Returns:
Data type kind.

Reimplemented from lestes::md::types::tm_dt_simple_base.

ptr< object::reflection_list > lestes::md::types::tm_dt_bitfield_base::reflection_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::md::types::tm_dt_simple_base.

Reimplemented in lestes::md::types::tm_dt_bitfield.

ptr< object::field_list_list > lestes::md::types::tm_dt_bitfield_base::field_values_get (  )  const [virtual]

for purposes of dumping

Reimplemented from lestes::md::types::tm_dt_simple_base.

Reimplemented in lestes::md::types::tm_dt_bitfield.

void lestes::md::types::tm_dt_bitfield_base::gc_mark ( void   )  [protected, virtual]

Marking routine for class tm_dt_bitfield_base.

Marking routine is used for garbage collection.

Author:
lsg

Reimplemented from lestes::md::types::tm_dt_simple_base.

Reimplemented in lestes::md::types::tm_dt_bitfield.


Member Data Documentation

ulint lestes::md::types::tm_dt_bitfield_base::bitfield_width [private]

Bitfield width.

ptr< object::reflection_list > lestes::md::types::tm_dt_bitfield_base::reflection = reflection [static, private]

Reimplemented from lestes::md::types::tm_dt_simple_base.

Reimplemented in lestes::md::types::tm_dt_bitfield.


The documentation for this class was generated from the following files:
Generated on Mon Feb 12 18:49:28 2007 for lestes by doxygen 1.5.1-20070107