Dune Core Modules (2.9.0)
Dune::TypeTree::FilteredCompositeNode< Node, Filter > Class Template Reference
Base class for composite nodes representing a filtered view on an underlying composite node. More...
#include <dune/typetree/filteredcompositenode.hh>
Classes | |
struct | Child |
Access to the type and storage type of the i-th child. More... | |
Public Types | |
typedef CompositeNodeTag | NodeTag |
The type tag that describes a CompositeNode. | |
typedef mapped_children::NodeStorage | NodeStorage |
The type used for storing the children. | |
typedef mapped_children::ChildTypes | ChildTypes |
A tuple storing the types of all children. | |
Public Member Functions | |
Child Access | |
template<std::size_t k, typename std::enable_if< lazy_enable< k >::value, int >::type = 0> | |
auto & | child (index_constant< k >={}) |
Returns the k-th child. More... | |
template<std::size_t k> | |
const auto & | child (index_constant< k >={}) const |
Returns the k-th child (const version). More... | |
template<std::size_t k, typename std::enable_if< lazy_enable< k >::value, int >::type = 0> | |
auto | childStorage (index_constant< k >={}) |
Returns the storage of the k-th child. More... | |
template<std::size_t k> | |
auto | childStorage (index_constant< k >={}) const |
Returns the storage of the k-th child (const version). More... | |
template<std::size_t k, class ChildType > | |
void | setChild (ChildType &&child, typename std::enable_if< lazy_enable< k >::value, void * >::type=0) |
Sets the k-th child to the passed-in value. | |
Constructors | |
FilteredCompositeNode (std::shared_ptr< Node > node) | |
Initialize the CompositeNode with copies of the passed in Storage objects. | |
FilteredCompositeNode (Node &node) | |
Initialize the CompositeNode with a copy of the passed-in storage type. | |
Static Public Attributes | |
static const bool | isLeaf = false |
Mark this class as non leaf in the dune-typetree. | |
static const bool | isPower = false |
Mark this class as a non power in the dune-typetree. | |
static const bool | isComposite = true |
Mark this class as a composite in the dune-typetree. | |
static const std::size_t | CHILDREN = filter_result::size |
The number of children. | |
Protected Member Functions | |
Access to unfiltered node | |
template<bool enabled = !nodeIsConst> | |
std::enable_if< enabled, Node & >::type | unfiltered () |
Returns the unfiltered node. More... | |
const Node & | unfiltered () const |
Returns the unfiltered node (const version). More... | |
template<bool enabled = !nodeIsConst> | |
std::enable_if< enabled, std::shared_ptr< Node > >::type | unfilteredStorage () |
Returns the storage object of the unfiltered node. More... | |
std::shared_ptr< const Node > | unfilteredStorage () const |
Returns the storage object of the unfiltered node (const version). More... | |
Detailed Description
template<typename Node, typename Filter>
class Dune::TypeTree::FilteredCompositeNode< Node, Filter >
Base class for composite nodes representing a filtered view on an underlying composite node.
Member Function Documentation
◆ child() [1/2]
template<typename Node , typename Filter >
template<std::size_t k, typename std::enable_if< lazy_enable< k >::value, int >::type = 0>
|
inline |
Returns the k-th child.
- Returns
- a reference to the k-th child.
Referenced by Dune::TypeTree::FilteredCompositeNode< Node, Filter >::setChild().
◆ child() [2/2]
template<typename Node , typename Filter >
template<std::size_t k>
|
inline |
Returns the k-th child (const version).
- Returns
- a const reference to the k-th child.
◆ childStorage() [1/2]
template<typename Node , typename Filter >
template<std::size_t k, typename std::enable_if< lazy_enable< k >::value, int >::type = 0>
|
inline |
Returns the storage of the k-th child.
- Returns
- a copy of the object storing the k-th child.
◆ childStorage() [2/2]
template<typename Node , typename Filter >
template<std::size_t k>
|
inline |
Returns the storage of the k-th child (const version).
- Returns
- a copy of the object storing the k-th child.
◆ unfiltered() [1/2]
template<typename Node , typename Filter >
template<bool enabled = !nodeIsConst>
|
inlineprotected |
Returns the unfiltered node.
- Returns
- A reference to the original, unfiltered node.
◆ unfiltered() [2/2]
template<typename Node , typename Filter >
|
inlineprotected |
Returns the unfiltered node (const version).
- Returns
- A const reference to the original, unfiltered node.
◆ unfilteredStorage() [1/2]
template<typename Node , typename Filter >
template<bool enabled = !nodeIsConst>
|
inlineprotected |
Returns the storage object of the unfiltered node.
- Returns
- A shared_ptr to the original, unfiltered node.
◆ unfilteredStorage() [2/2]
template<typename Node , typename Filter >
|
inlineprotected |
Returns the storage object of the unfiltered node (const version).
- Returns
- A shared_ptr to the original, unfiltered node.
The documentation for this class was generated from the following file:
- dune/typetree/filteredcompositenode.hh
|
Legal Statements / Impressum |
Hosted by TU Dresden |
generated with Hugo v0.80.0
(Apr 25, 22:37, 2024)