Class abstract_kernel

Inheritance Relationships

Derived Types

Class Documentation

class abstract_kernel

Subclassed by ifcopenshell::geom::kernels::cgal_kernel, ifcopenshell::geom::kernels::hybrid_kernel, ifcopenshell::geom::kernels::manifold_kernel, ifcopenshell::geom::kernels::passthrough_kernel, ifcopenshell::geom::open_cascade_kernel

Public Functions

inline abstract_kernel(const std::string &geometry_library, const ifcopenshell::geom::settings &settings, ifcopenshell::logger &logger = ifcopenshell::logger::root())
virtual ~abstract_kernel() = default
virtual bool convert(const taxonomy::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
const ifcopenshell::geom::settings &settings() const
inline void apply_settings(const ifcopenshell::geom::settings &settings)
inline const std::string &geometry_library() const
inline virtual std::string_view backend_id() const
inline virtual bool accepts(const ifcopenshell::geom::conversion_result_shape &shape) const
inline ifcopenshell::logger &logger() const
virtual bool supports_boolean_operations() const = 0
inline virtual bool convert_impl(const taxonomy::matrix4::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::point3::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::direction3::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::line::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::circle::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::ellipse::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::bspline_curve::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::edge::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::loop::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::shell::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::face::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::extrusion::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::node::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::colour::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::boolean_result::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::plane::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::offset_curve::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::revolve::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::bspline_surface::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::cylinder::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::sphere::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::torus::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::solid::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::sweep_along_curve::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
inline virtual bool convert_impl(const taxonomy::loft::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
virtual bool convert_impl(const taxonomy::collection::ptr, std::vector<ifcopenshell::geom::conversion_result>&)
virtual bool convert_impl(const taxonomy::function_item::ptr item, std::vector<ifcopenshell::geom::conversion_result> &cs)
virtual bool convert_impl(const taxonomy::functor_item::ptr item, std::vector<ifcopenshell::geom::conversion_result> &cs)
virtual bool convert_impl(const taxonomy::piecewise_function::ptr item, std::vector<ifcopenshell::geom::conversion_result> &cs)
virtual bool convert_impl(const taxonomy::gradient_function::ptr item, std::vector<ifcopenshell::geom::conversion_result> &cs)
virtual bool convert_impl(const taxonomy::cant_function::ptr item, std::vector<ifcopenshell::geom::conversion_result> &cs)
virtual bool convert_impl(const taxonomy::offset_function::ptr item, std::vector<ifcopenshell::geom::conversion_result> &cs)
inline virtual bool apply_layerset(std::vector<ifcopenshell::geom::conversion_result>&, const ifcopenshell::geom::layerset_information&)
inline virtual bool apply_folded_layerset(std::vector<ifcopenshell::geom::conversion_result>&, const ifcopenshell::geom::layerset_information&, const std::map<express::base, ifcopenshell::geom::layerset_information>&)
virtual bool convert_openings(const express::base &entity, const std::vector<std::pair<taxonomy::ptr, ifcopenshell::geom::taxonomy::matrix4>> &openings, const std::vector<ifcopenshell::geom::conversion_result> &entity_shapes, const ifcopenshell::geom::taxonomy::matrix4 &entity_trsf, std::vector<ifcopenshell::geom::conversion_result> &cut_shapes) = 0
inline virtual bool unify_shapes(const std::vector<ifcopenshell::geom::conversion_result>&, std::vector<ifcopenshell::geom::conversion_result>&)
virtual abstract_kernel *clone(ifcopenshell::logger &logger) const = 0

Public Members

bool propagate_exceptions = false
bool partial_success_is_success = true

Protected Attributes

std::string geometry_library_
ifcopenshell::geom::settings settings_
ifcopenshell::logger &logger_