template<template<class, class> class Eq>
registerDiffEq struct
Function object for registering a differential equation into the differential equation factory.
Contents
This functor is repeatedly called by brigand's cartesian_product, sweeping all combinations of the differential equation policies. The purpose of template template is to simplify client code as that will not have to specify the template arguments of the template argument (the policies of Eq), since we can figure it out here. See also http:/
Constructors, destructors, conversion operators

registerDiffEq(DiffEqFactory& f,
ctr::
DiffEqType t, std::set<ctr::DiffEqType >& eqTypes) explicit  Constructor, also count number of unique equation types registered.
Public functions

template<typename U>void operator()(brigand::type_<U>)
 Function call operator called with tk::
cartesian_product for each unique sequence of policy combinations.
Public variables
 DiffEqFactory& factory
 Need to store the reference to factory we are registering into.
 const ctr::
DiffEqType type  Need to store which differential equation we are registering.