11 namespace operations {
56 throw std::runtime_error(
"This shoud never be called");
65 throw std::runtime_error(
"This shoud never be called");
const Mesh & mesh() const
virtual bool use_random_priority() const
std::function< double(const simplex::Simplex &)> m_priority
void reserve_enough_simplices() override
bool use_random_priority() const override
double priority(const simplex::Simplex &simplex) const override
void add_operation(const std::shared_ptr< Operation > &op)
std::vector< simplex::Simplex > operator()(const simplex::Simplex &simplex) override
PrimitiveType primitive_type() const override
std::vector< simplex::Simplex > execute(const simplex::Simplex &simplex) override
returns an empty vector in case of failure
std::vector< simplex::Simplex > unmodified_primitives(const simplex::Simplex &simplex) const override
Returns all simplices that will be potentially affected by the OperationSequence.
virtual std::vector< simplex::Simplex > execute_operations(const simplex::Simplex &simplex)=0
std::vector< std::shared_ptr< Operation > > m_operations
bool & use_random_priority() override
bool m_internal_random_priority
OperationSequence(Mesh &mesh, const std::vector< std::shared_ptr< Operation >> &operations={})
virtual ~OperationSequence()