34 typename RemoveRef<T>::ScalarType s,
35 typename RemoveRef<T>::ScalarType& sR,
36 typename RemoveRef<T>::ProjectionMode pm,
37 typename RemoveRef<T>::ProjectionMode& pmR) {
39 typename RemoveRef<T>::ScalarType;
40 typename RemoveRef<T>::PointType;
41 typename RemoveRef<T>::MatrixType;
42 typename RemoveRef<T>::ProjectionMode;
50 { obj.fieldOfView() } -> std::convertible_to<
decltype(s)>;
51 { obj.projectionMode() } -> std::convertible_to<
decltype(pm)>;
52 { obj.verticalHeight() } -> std::convertible_to<
decltype(s)>;
53 { obj.aspectRatio() } -> std::convertible_to<
decltype(s)>;
54 { obj.nearPlane() } -> std::convertible_to<
decltype(s)>;
55 { obj.farPlane() } -> std::convertible_to<
decltype(s)>;
61 { obj.reset() } -> std::same_as<void>;
62 { obj.fieldOfView() } -> std::same_as<
decltype(sR)>;
63 { obj.projectionMode() } -> std::same_as<
decltype(pmR)>;
64 { obj.setFieldOfViewAdaptingEyeDistance(s) } -> std::same_as<void>;
65 { obj.verticalHeight() } -> std::same_as<
decltype(sR)>;
66 { obj.aspectRatio() } -> std::same_as<
decltype(sR)>;
67 { obj.nearPlane() } -> std::same_as<
decltype(sR)>;
68 { obj.farPlane() } -> std::same_as<
decltype(sR)>;