Tag information which is used in AdaptiveControl. More...
#include <space.hh>

Public Types | |
| enum | tagInfo { NO_TAG = 0, MEMBER = 1, PASSIVE = 2, VLD_IDX = 4, VLD_P = 8 } |
| Enumeration of the bit values in data_. More... | |
Public Member Functions | |
| void | activate () |
| AdaptiveControlTag (uchar t=0) | |
| Constructor. | |
| void | deactivate () |
| bool | idxValid () const |
| Checks for a valid index. | |
| void | invalidateIdx () |
| void | invalidateP () |
| bool | isActive () const |
| Checks activity. | |
| bool | isMember () const |
| Checks member of the space. | |
| bool | isPassive () const |
| Checks activity. | |
| uchar | operator= (const uchar &t) |
| Assignement operator. | |
| bool | pValid () const |
| Checks for a valid polynomial degree. | |
| void | takeIn () |
| Takes into the space. | |
| void | takeOut () |
| Takes out of the space. | |
| void | validateIdx () |
| void | validateP () |
Public Attributes | |
| uchar | data_ |
| Control information. | |
Tag information which is used in AdaptiveControl.
Enumeration of the bit values in data_.
This makes the handling of the bits in the data_ easier: to check
(data_ & MEMBER) != 0
(data_ & PASSIVE) == 0
or to change
data_ |= PASSIVE;
data_ &= ~PASSIVE;
| concepts::AdaptiveControlTag::AdaptiveControlTag | ( | uchar | t = 0 | ) | [inline] |
| bool concepts::AdaptiveControlTag::idxValid | ( | ) | const [inline] |
| void concepts::AdaptiveControlTag::invalidateIdx | ( | ) | [inline] |
| void concepts::AdaptiveControlTag::invalidateP | ( | ) | [inline] |
| bool concepts::AdaptiveControlTag::isActive | ( | ) | const [inline] |
| bool concepts::AdaptiveControlTag::isMember | ( | ) | const [inline] |
| bool concepts::AdaptiveControlTag::isPassive | ( | ) | const [inline] |
Checks activity.
Note: isPassive() == !isActive().
| bool concepts::AdaptiveControlTag::pValid | ( | ) | const [inline] |
| void concepts::AdaptiveControlTag::takeIn | ( | ) | [inline] |
| void concepts::AdaptiveControlTag::takeOut | ( | ) | [inline] |
| void concepts::AdaptiveControlTag::validateIdx | ( | ) | [inline] |
Control information.
The information stored in the tag has to be viewed as a bit field containing the following information:
bit 0: member of the space (1), not member(0)
bit 1: passive(1), active(0) (eg. for enforcing boundary conditions)
bit 2: valid index, ie. this index is already used for assembling, useful for enforcing continuity of the solution
bit 3: valid p (for high order methods)