picogl.tests.test_renderer_initializable ======================================== .. py:module:: picogl.tests.test_renderer_initializable Classes ------- .. autoapisummary:: picogl.tests.test_renderer_initializable._CountingInitializable picogl.tests.test_renderer_initializable._ConcreteRenderer picogl.tests.test_renderer_initializable._CountingBindable Functions --------- .. autoapisummary:: picogl.tests.test_renderer_initializable.test_initializable_initialize_calls_do_initialize_once picogl.tests.test_renderer_initializable.test_initializable_ensure_and_require_initialized picogl.tests.test_renderer_initializable.test_renderer_base_initialize_uses_template_hook_once picogl.tests.test_renderer_initializable.test_renderer_base_dispatch_list_stores_draw_callable picogl.tests.test_renderer_initializable.test_bindable_bind_calls_do_binding_once picogl.tests.test_renderer_initializable.test_bindable_ensure_and_require_bound picogl.tests.test_renderer_initializable.test_bindable_context_manager_binds_once_and_unbinds picogl.tests.test_renderer_initializable.test_bindable_unbind_when_not_bound_is_safe picogl.tests.test_renderer_initializable.test_bindable_importable_from_renderer_package Module Contents --------------- .. py:class:: _CountingInitializable Bases: :py:obj:`picogl.renderer.initializable.Initializable` Enforces one-time initialization with optional lazy semantics. .. py:attribute:: calls :value: 0 .. py:method:: _do_initialize() Subclass must implement actual initialization. .. py:class:: _ConcreteRenderer Bases: :py:obj:`picogl.renderer.base.RendererBase` Base Renderer Class .. py:attribute:: initialize_calls :value: 0 .. py:attribute:: draw_calls :value: 0 .. py:method:: _do_initialize() Initialize OpenGL resources (shaders, atoms_buffers, etc.). .. py:method:: _draw_model() draw_model .. py:method:: _draw_selection() draw_selection .. py:function:: test_initializable_initialize_calls_do_initialize_once() .. py:function:: test_initializable_ensure_and_require_initialized() .. py:function:: test_renderer_base_initialize_uses_template_hook_once() .. py:function:: test_renderer_base_dispatch_list_stores_draw_callable() .. py:class:: _CountingBindable Bases: :py:obj:`picogl.renderer.initializable.Bindable` Enforces one-time binding with optional lazy semantics. Not for VAO/VBO/``VertexBase`` types; see module docstring. .. py:attribute:: bind_calls :value: 0 .. py:attribute:: unbind_calls :value: 0 .. py:method:: _do_binding() -> None .. py:method:: _do_unbinding() -> None .. py:function:: test_bindable_bind_calls_do_binding_once() .. py:function:: test_bindable_ensure_and_require_bound() .. py:function:: test_bindable_context_manager_binds_once_and_unbinds() .. py:function:: test_bindable_unbind_when_not_bound_is_safe() .. py:function:: test_bindable_importable_from_renderer_package()