12 #include <nlohmann/json_fwd.hpp>
28 std::string
const&
name,
29 int const n_components,
30 int const integration_order,
31 std::vector<std::unique_ptr<LocalAssemblerInterface>>
const&
42 ... f_args = std::forward<Args>(args)]
46 std::vector<std::vector<double>> result;
47 result.reserve(local_assemblers.size());
49 std::transform(begin(local_assemblers), end(local_assemblers),
50 std::back_inserter(result),
52 {
return (*la.*getIpData)(f_args...); });
66 std::function<std::vector<std::vector<double>>()>
_callback;
78 std::vector<std::unique_ptr<IntegrationPointWriter>>
const&
79 integration_point_writer);
94 std::string
const&
name);
IntegrationPointMetaData getIntegrationPointMetaData(MeshLib::Mesh const &mesh, std::string const &name)
void addIntegrationPointWriter(MeshLib::Mesh &mesh, std::vector< std::unique_ptr< IntegrationPointWriter >> const &integration_point_writer)
int const _integration_order
int numberOfComponents() const
std::function< std::vector< std::vector< double > >)> _callback
IntegrationPointWriter(std::string const &name, int const n_components, int const integration_order, std::vector< std::unique_ptr< LocalAssemblerInterface >> const &local_assemblers, std::vector< double >(LocalAssemblerInterface::*getIpData)(Args...) const, Args &&... args)
int integrationOrder() const
std::vector< std::vector< double > > values() const