+++ /dev/null
-/* $Id$
-
-This file is part of libmspgl
-Copyright © 2007, 2010 Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
-#include "tests.h"
-
-namespace Msp {
-namespace GL {
-
-AlphaTest::AlphaTest():
- pred(ALWAYS),
- ref(0)
-{ }
-
-AlphaTest::AlphaTest(Predicate p, float r):
- pred(p),
- ref(r)
-{ }
-
-void AlphaTest::bind() const
-{
- if(set_current(this))
- {
- glEnable(GL_ALPHA_TEST);
- glAlphaFunc(pred, ref);
- }
-}
-
-void AlphaTest::unbind()
-{
- if(set_current(0))
- glDisable(GL_ALPHA_TEST);
-}
-
-void alpha_func(Predicate func, float ref)
-{
- glAlphaFunc(func, ref);
-}
-
-
-DepthTest::DepthTest():
- write(true),
- pred(LESS)
-{ }
-
-DepthTest::DepthTest(Predicate p, bool w):
- write(w),
- pred(p)
-{ }
-
-void DepthTest::bind() const
-{
- if(set_current(this))
- {
- glEnable(GL_DEPTH_TEST);
- glDepthFunc(pred);
- glDepthMask(write);
- }
-}
-
-const DepthTest &DepthTest::lequal()
-{
- static DepthTest test(LEQUAL);
- return test;
-}
-
-void DepthTest::unbind()
-{
- if(set_current(0))
- {
- glDisable(GL_DEPTH_TEST);
- // Allow glClear(GL_DEPTH_BUFFER_BIT) to work
- glDepthMask(true);
- }
-}
-
-void depth_func(Predicate func)
-{
- glDepthFunc(func);
-}
-
-
-ScissorTest::ScissorTest():
- left(0),
- bottom(0),
- width(1),
- height(1)
-{ }
-
-ScissorTest::ScissorTest(int l, int b, unsigned w, unsigned h):
- left(l),
- bottom(b),
- width(w),
- height(h)
-{ }
-
-void ScissorTest::bind() const
-{
- if(set_current(this))
- {
- glEnable(GL_SCISSOR_TEST);
- glScissor(left, bottom, width, height);
- }
-}
-
-void ScissorTest::unbind()
-{
- if(set_current(0))
- glDisable(GL_SCISSOR_TEST);
-}
-
-void scissor(int left, int bottom, unsigned width, unsigned height)
-{
- glScissor(left, bottom, width, height);
-}
-
-} // namespace GL
-} // namespace Msp