| 2545 | |
| 2546 | |
| 2547 | ProxyNode FESpace :: |
| 2548 | MakeProxyFunction (bool testfunction, |
| 2549 | const function<shared_ptr<ProxyFunction>(shared_ptr<ProxyFunction>)> & addblock) const |
| 2550 | { |
| 2551 | shared_ptr<FESpace> fes = dynamic_pointer_cast<FESpace> (const_cast<FESpace*>(this)->shared_from_this()); |
| 2552 | |
| 2553 | auto proxy = make_shared<ProxyFunction> (fes, testfunction, testfunction ? false : fes->IsComplex(), |
| 2554 | fes->GetEvaluator(), |
| 2555 | fes->GetFluxEvaluator(), |
| 2556 | fes->GetEvaluator(BND), |
| 2557 | fes->GetFluxEvaluator(BND), |
| 2558 | fes->GetEvaluator(BBND), |
| 2559 | fes->GetFluxEvaluator(BBND)); |
| 2560 | |
| 2561 | auto add_diffops = fes->GetAdditionalEvaluators(); |
| 2562 | for (int i = 0; i < add_diffops.Size(); i++) |
| 2563 | proxy->SetAdditionalEvaluator (add_diffops.GetName(i), add_diffops[i]); |
| 2564 | |
| 2565 | proxy = addblock(proxy); |
| 2566 | return ProxyNode (proxy); |
| 2567 | } |
| 2568 | |
| 2569 | |
| 2570 | ProxyNode FESpace :: GetProxyFunction(bool testfunction) const |
nothing calls this directly
no test coverage detected