$extrastylesheet
#include <elem.h>
Public Member Functions | |
| SideIter (const unsigned int side_number, Elem *parent) | |
| SideIter () | |
| SideIter (const SideIter &other) | |
| SideIter & | operator= (const SideIter &other) |
| Elem *& | operator* () const |
| SideIter & | operator++ () |
| bool | operator== (const SideIter &other) const |
| bool | side_on_boundary () const |
Private Member Functions | |
| void | _update_side_ptr () const |
Private Attributes | |
| UniquePtr< Elem > | _side |
| Elem * | _side_ptr |
| Elem * | _parent |
| unsigned int | _side_number |
| libMesh::Elem::SideIter::SideIter | ( | const unsigned int | side_number, |
| Elem * | parent | ||
| ) | [inline] |
| libMesh::Elem::SideIter::SideIter | ( | ) | [inline] |
Definition at line 2046 of file elem.h.
: _side(), _side_ptr(NULL), _parent(NULL), _side_number(libMesh::invalid_uint) {}
| libMesh::Elem::SideIter::SideIter | ( | const SideIter & | other | ) | [inline] |
| void libMesh::Elem::SideIter::_update_side_ptr | ( | ) | const [inline, private] |
Definition at line 2109 of file elem.h.
References _parent, _side, _side_number, _side_ptr, and libMesh::Elem::build_side().
Referenced by operator*().
{
// Construct new side, store in UniquePtr
this->_side = this->_parent->build_side(this->_side_number);
// Also set our internal naked pointer. Memory is still owned
// by the UniquePtr.
this->_side_ptr = _side.get();
}
| Elem*& libMesh::Elem::SideIter::operator* | ( | ) | const [inline] |
Definition at line 2072 of file elem.h.
References _side_ptr, and _update_side_ptr().
{
// Set the UniquePtr
this->_update_side_ptr();
// Return a reference to _side_ptr
return this->_side_ptr;
}
| SideIter& libMesh::Elem::SideIter::operator++ | ( | ) | [inline] |
Definition at line 2064 of file elem.h.
References _parent, and _side_number.
{
this->_parent = other._parent;
this->_side_number = other._side_number;
return *this;
}
| bool libMesh::Elem::SideIter::operator== | ( | const SideIter & | other | ) | const [inline] |
Definition at line 2090 of file elem.h.
References _parent, and _side_number.
{
return (this->_side_number == other._side_number &&
this->_parent == other._parent);
}
| bool libMesh::Elem::SideIter::side_on_boundary | ( | ) | const [inline] |
Definition at line 2101 of file elem.h.
References _parent, _side_number, and libMesh::Elem::neighbor().
{
return this->_parent->neighbor(_side_number) == NULL;
}
Elem* libMesh::Elem::SideIter::_parent [private] |
Definition at line 2133 of file elem.h.
Referenced by _update_side_ptr(), operator=(), operator==(), and side_on_boundary().
UniquePtr<Elem> libMesh::Elem::SideIter::_side [mutable, private] |
Definition at line 2121 of file elem.h.
Referenced by _update_side_ptr().
unsigned int libMesh::Elem::SideIter::_side_number [private] |
Definition at line 2136 of file elem.h.
Referenced by _update_side_ptr(), operator++(), operator=(), operator==(), and side_on_boundary().
Elem* libMesh::Elem::SideIter::_side_ptr [mutable, private] |
Definition at line 2130 of file elem.h.
Referenced by _update_side_ptr(), and operator*().