Typedefs | |
template<class T > | |
using | RotateReturnType = decltype(Rotate(std::declval< T & >(), std::declval< Angle >())) |
Return type for a Rotate function taking an arbitrary type and a value. More... | |
template<class T > | |
using | ScaleReturnType = decltype(Scale(std::declval< T & >(), std::declval< Vec2 >())) |
Return type for a Scale function taking an arbitrary type and a value. More... | |
template<class T > | |
using | SetDensityReturnType = decltype(SetDensity(std::declval< T & >(), std::declval< NonNegative< AreaDensity > >())) |
Return type for a SetDensity function taking an arbitrary type and a value. More... | |
template<class T > | |
using | SetFilterReturnType = decltype(SetFilter(std::declval< T & >(), std::declval< Filter >())) |
Return type for a SetFilter function taking an arbitrary type and a value. More... | |
template<class T > | |
using | SetFrictionReturnType = decltype(SetFriction(std::declval< T & >(), std::declval< Real >())) |
Return type for a SetFriction function taking an arbitrary type and a value. More... | |
template<class T > | |
using | SetRestitutionReturnType = decltype(SetRestitution(std::declval< T & >(), std::declval< Real >())) |
Return type for a SetRestitution function taking an arbitrary type and a value. More... | |
template<class T > | |
using | SetSensorReturnType = decltype(SetSensor(std::declval< T & >(), std::declval< bool >())) |
Return type for a SetSensor function taking an arbitrary type and a value. More... | |
template<class T > | |
using | TranslateReturnType = decltype(Translate(std::declval< T & >(), std::declval< Length2 >())) |
Return type for a Translate function taking an arbitrary type and a value. More... | |
Functions | |
template<class T > | |
auto | Rotate (T &, const UnitVec &value) -> std::enable_if_t< IsValidShapeTypeV< T > &&!HasRotateV< T >, void > |
Fallback rotate function that throws unless the given value has no effect. | |
template<class T > | |
auto | Scale (T &, const Vec2 &value) -> std::enable_if_t< IsValidShapeTypeV< T > &&!HasScaleV< T >, void > |
Fallback scale function that throws unless the given value has no effect. | |
template<class T > | |
auto | SetDensity (T &o, NonNegative< AreaDensity > value) -> std::enable_if_t< IsValidShapeTypeV< T > &&!HasSetDensityV< T >, void > |
Fallback density setter that throws unless given the same value as current. | |
template<class T > | |
auto | SetFilter (T &o, Filter value) -> std::enable_if_t< IsValidShapeTypeV< T > &&!HasSetFilterV< T >, void > |
Fallback filter setter that throws unless given the same value as current. | |
template<class T > | |
auto | SetFriction (T &o, NonNegative< Real > value) -> std::enable_if_t< IsValidShapeTypeV< T > &&!HasSetFrictionV< T >, void > |
Fallback friction setter that throws unless given the same value as current. | |
template<class T > | |
auto | SetRestitution (T &o, Real value) -> std::enable_if_t< IsValidShapeTypeV< T > &&!HasSetRestitutionV< T >, void > |
Fallback restitution setter that throws unless given the same value as current. | |
template<class T > | |
auto | SetSensor (T &o, bool value) -> std::enable_if_t< IsValidShapeTypeV< T > &&!HasSetSensorV< T >, void > |
Fallback sensor setter that throws unless given the same value as current. | |
template<class T > | |
auto | Translate (T &, const Length2 &value) -> std::enable_if_t< IsValidShapeTypeV< T > &&!HasTranslateV< T >, void > |
Fallback translate function that throws unless the given value has no effect. | |
Variables | |
template<class T > | |
constexpr bool | HasRotateV = playrho::detail::is_detected_v<RotateReturnType, T> |
Helper variable template on whether Rotate(T&, Angle) is found. | |
template<class T > | |
constexpr bool | HasScaleV = playrho::detail::is_detected_v<ScaleReturnType, T> |
Helper variable template on whether Scale(T&, Vec2) is found. | |
template<class T > | |
constexpr bool | HasSetDensityV = playrho::detail::is_detected_v<SetDensityReturnType, T> |
Helper variable template on whether SetDensity(T&, NonNegative<AreaDensity>) is found. | |
template<class T > | |
constexpr bool | HasSetFilterV = playrho::detail::is_detected_v<SetFilterReturnType, T> |
Helper variable template on whether SetFilter(T&, Filter) is found. | |
template<class T > | |
constexpr bool | HasSetFrictionV = playrho::detail::is_detected_v<SetFrictionReturnType, T> |
Helper variable template on whether SetFriction(T&, Real) is found. | |
template<class T > | |
constexpr bool | HasSetRestitutionV = playrho::detail::is_detected_v<SetRestitutionReturnType, T> |
Helper variable template on whether SetRestitution(T&, Real) is found. | |
template<class T > | |
constexpr bool | HasSetSensorV = playrho::detail::is_detected_v<SetSensorReturnType, T> |
Helper variable template on whether SetSensor(T&, bool) is found. | |
template<class T > | |
constexpr bool | HasTranslateV = playrho::detail::is_detected_v<TranslateReturnType, T> |
Helper variable template on whether Translate(T&, Length2) is found. | |
template<class T > | |
constexpr bool | IsValidShapeTypeV = IsValidShapeType<T>::value |
Boolean value for whether the specified type is a valid shape type. More... | |
Name space for internal/detail 2-dimensionally related PlayRho names.
using playrho::d2::detail::RotateReturnType = typedef decltype(Rotate(std::declval<T&>(), std::declval<Angle>())) |
Return type for a Rotate function taking an arbitrary type and a value.
T | type to find function return type for. |
using playrho::d2::detail::ScaleReturnType = typedef decltype(Scale(std::declval<T&>(), std::declval<Vec2>())) |
Return type for a Scale function taking an arbitrary type and a value.
T | type to find function return type for. |
using playrho::d2::detail::SetDensityReturnType = typedef decltype(SetDensity(std::declval<T&>(), std::declval<NonNegative<AreaDensity> >())) |
Return type for a SetDensity function taking an arbitrary type and a value.
T | type to find function return type for. |
using playrho::d2::detail::SetFilterReturnType = typedef decltype(SetFilter(std::declval<T&>(), std::declval<Filter>())) |
Return type for a SetFilter function taking an arbitrary type and a value.
T | type to find function return type for. |
using playrho::d2::detail::SetFrictionReturnType = typedef decltype(SetFriction(std::declval<T&>(), std::declval<Real>())) |
Return type for a SetFriction function taking an arbitrary type and a value.
T | type to find function return type for. |
using playrho::d2::detail::SetRestitutionReturnType = typedef decltype(SetRestitution(std::declval<T&>(), std::declval<Real>())) |
Return type for a SetRestitution function taking an arbitrary type and a value.
T | type to find function return type for. |
using playrho::d2::detail::SetSensorReturnType = typedef decltype(SetSensor(std::declval<T&>(), std::declval<bool>())) |
Return type for a SetSensor function taking an arbitrary type and a value.
T | type to find function return type for. |
using playrho::d2::detail::TranslateReturnType = typedef decltype(Translate(std::declval<T&>(), std::declval<Length2>())) |
Return type for a Translate function taking an arbitrary type and a value.
T | type to find function return type for. |
|
constexpr |
Boolean value for whether the specified type is a valid shape type.