namespace Msp {
namespace GL {
-enum StencilOp
+enum StencilOp: std::uint8_t
{
KEEP,
SET_ZERO,
StencilOp depth_fail_op = KEEP;
StencilOp depth_pass_op = KEEP;
unsigned reference = 0;
+
+ bool operator==(const StencilTest &) const;
+ bool operator!=(const StencilTest &s) const { return !operator==(s); }
};
+inline bool StencilTest::operator==(const StencilTest &other) const
+{
+ return enabled==other.enabled && compare==other.compare && stencil_fail_op==other.stencil_fail_op &&
+ depth_fail_op==other.depth_fail_op && depth_pass_op==other.depth_pass_op && reference==other.reference;
+}
+
void operator>>(const LexicalConverter &, StencilOp &);
void operator<<(LexicalConverter &, StencilOp);