ImageLeftAction¶
-
template<typename TElementType, typename TPointType, typename = void>
struct ImageLeftAction¶ Adapter for the value of a left action.
Defined in
adapters.hpp
.Specialisations of this struct should be stateless trivially default constructible with a call operator of signature
void operator()(TPointType& res, TElementType const& x, TPointType const& pt) const
(possiblynoexcept
,inline
and/orconstexpr
also).The call operator should change
res
in-place to contain the image of the pointpt
under the left action of the elementx
. The purpose of the 1st parameter is to avoid repeated allocations of memory to hold temporary points that are discarded soon after they are created.The third template parameter exists for SFINAE.
- Example
template <> struct ImageLeftAction<BMat8, BMat8> { void operator()(BMat8& res, BMat8 pt, BMat8 x) const noexcept { res = (x * pt).col_space_basis(); } };
- Template Parameters:
TElementType – the type of the elements of a semigroup.
TPointType – the type of the points acted on.