13 #ifndef OGLPLUS_CONTEXT_OBJECT_BINDING_1404142131_HPP
14 #define OGLPLUS_CONTEXT_OBJECT_BINDING_1404142131_HPP
36 template <
typename Object>
37 static void Bind(
typename Object::Target target,
const Object&
object)
49 template <
typename Object>
51 typename Object::IndexedTarget target,
56 object.Bind(target, index);
66 template <
typename Object>
67 static void Bind(
const Object&
object)
79 template <
typename Object>
80 static void Use(
const Object&
object)
85 template <
typename Object>
88 typename Classify<Object>::ObjTag
91 typedef typename Classify<Object>::ObjTag ObjTag;
97 template <
typename ObjectTarget>
100 typename ObjectTargetTag<ObjectTarget>::Type
103 typedef typename ObjectTargetTag<ObjectTarget>::Type ObjTag;
109 template <
typename Object>
112 typename ObjectTargetTag<typename Object::Target>::Type
113 >>
Bound(
typename Object::Target target,
const Object&
object)
116 return Current(target);
123 #endif // include guard
Wrapper for object binding operations.
Definition: object_binding.hpp:26
static void Bind(typename Object::IndexedTarget target, GLuint index, const Object &object)
Binds the specified object to the specified indexed target.
Definition: object_binding.hpp:50
Generic OpenGL object wrapper.
static void Bind(typename Object::Target target, const Object &object)
Binds the specified object to the specified target.
Definition: object_binding.hpp:37
Implements operations applicable to named (non-zero) objects.
Definition: wrap_tpl.hpp:45
static Reference< ObjectOps< tag::CurrentBound, typename ObjectTargetTag< typename Object::Target >::Type > > Bound(typename Object::Target target, const Object &object)
Binds the object to the specified target, returns a managed reference.
Definition: object_binding.hpp:113
static Reference< ObjectOps< tag::CurrentBound, typename ObjectTargetTag< ObjectTarget >::Type > > Current(ObjectTarget target)
Returns a managed reference to the object currently bound to target.
Definition: object_binding.hpp:101
static void Bind(const Object &object)
Binds the specified object to the appropriate binding point.
Definition: object_binding.hpp:67
static void Use(const Object &object)
Uses (makes current) the specified object.
Definition: object_binding.hpp:80
Allows to make managed copies of instances of Object.
Definition: fwd.hpp:172