Wildmeshing Toolkit
Loading...
Searching...
No Matches
MinOperationSequence.hpp
Go to the documentation of this file.
1#pragma once
2
4
5#include <wmtk/Tuple.hpp>
6
7
8namespace wmtk {
9class Mesh;
10
11namespace operations {
12
13
15{
16public:
18 Mesh& mesh,
19 const std::vector<std::shared_ptr<Operation>>& operations = {});
21
22
23 inline void set_value_function(
24 const std::function<double(int64_t, const simplex::Simplex&)>& func)
25 {
26 m_value = func;
27 }
28
29
30protected:
31 std::vector<simplex::Simplex> execute_operations(const simplex::Simplex& simplex) override;
32
33
34private:
35 std::function<double(int64_t, const simplex::Simplex&)> m_value = nullptr;
36};
37
38} // namespace operations
39} // namespace wmtk
std::function< double(int64_t, const simplex::Simplex &)> m_value
void set_value_function(const std::function< double(int64_t, const simplex::Simplex &)> &func)
std::vector< simplex::Simplex > execute_operations(const simplex::Simplex &simplex) override
const Mesh & mesh() const
Definition Operation.hpp:45