Loading...
Searching...
No Matches
Transformation
dune-typetree
Collaboration diagram for Transformation:

## Classes

struct | Dune::TypeTree::GenericLeafNodeTransformation< SourceNode, Transformation, TransformedNode >
struct | Dune::TypeTree::TemplatizedGenericPowerNodeTransformation< SourceNode, Transformation, TransformedNodeTemplate >
struct | Dune::TypeTree::GenericPowerNodeTransformation< SourceNode, Transformation, TransformedNode >
struct | Dune::TypeTree::TemplatizedGenericDynamicPowerNodeTransformation< SourceNode, Transformation, TransformedNodeTemplate >
struct | Dune::TypeTree::GenericDynamicPowerNodeTransformation< SourceNode, Transformation, TransformedNode >
struct | Dune::TypeTree::TemplatizedGenericCompositeNodeTransformation< SourceNode, Transformation, TransformedNodeTemplate >
struct | Dune::TypeTree::GenericCompositeNodeTransformation< SourceNode, Transformation, TransformedNode >
struct | Dune::TypeTree::GenericPowerNodeTransformationTemplate< SourceNode, Transformation, TransformedNode >
struct | Dune::TypeTree::GenericDynamicPowerNodeTransformationTemplate< SourceNode, Transformation, TransformedNode >
struct | Dune::TypeTree::GenericCompositeNodeTransformationTemplate< SourceNode, Transformation, TransformedNode >
struct | Dune::TypeTree::SimpleLeafNodeTransformation< SourceNode, Transformation, TransformedNode >
struct | Dune::TypeTree::SimplePowerNodeTransformation< SourceNode, Transformation, TransformedNode >
struct | Dune::TypeTree::SimpleDynamicPowerNodeTransformation< SourceNode, Transformation, TransformedNode >
struct | Dune::TypeTree::SimpleCompositeNodeTransformation< SourceNode, Transformation, TransformedNode >
struct | Dune::TypeTree::TransformTree< SourceTree, Transformation, Tag, recursive >
| Transform a TypeTree. More...

## Functions

template<typename SourceNode, typename Transformation, typename Tag>
void | Dune::TypeTree::registerNodeTransformation (SourceNode *, Transformation *, Tag *)
| Register transformation descriptor to transform SourceNode with Transformation.

## Detailed Description

## Function Documentation

## registerNodeTransformation()

template<typename SourceNode, typename Transformation, typename Tag>

void Dune::TypeTree::registerNodeTransformation | ( | SourceNode * | ,
|  | Transformation * | ,
|  | Tag * | )

Register transformation descriptor to transform SourceNode with Transformation.

The tree transformation engine expects this function to return a struct describing how to perform the Transformation for the type SourceNode, which has ImplementationTag Tag. This function has to be specialized for every combination of Transformation and Tag that the transformation engine should support.

Note
  The arguments are given as pointers to avoid problems with incomplete types.
  The specialization does not have to placed in the namespace Dune::TypeTree, it can simply reside in the same namespace as either the SourceNode or the Tag.
  This function will never be really called, the engine only extracts the return type. It is thus not necessary to actually implement the function, it is sufficient to declare it.

Template Parameters

  SourceNode | The type of the node in the source tree that should be transformed.
  Transformation | The type of the transformation to apply to the source node.
  Tag | The implementation tag of the source node.