Banuba SDK
debug_renderer.hpp
Go to the documentation of this file.
1 /// \file
2 /// \addtogroup Renderer
3 /// @{
4 ///
5 // AUTOGENERATED FILE - DO NOT MODIFY!
6 // This file generated by Djinni from renderer.djinni
7 
8 #pragma once
9 
11 #include <bnb/types/full_image.hpp>
12 #include <bnb/utils/defs.hpp>
13 #include <cstdint>
14 #include <memory>
15 #include <vector>
16 
17 namespace bnb { namespace interfaces {
18 
19 /**
20  * Renders debug views of all enabled features
21  * Requires creation with active gl context for correct feature subrenderers' init
22  */
23 class BNB_EXPORT debug_renderer {
24 public:
25  virtual ~debug_renderer() {}
26 
27  /** This method may return `null` when debug renderer is unavailable */
28  static std::shared_ptr<debug_renderer> create();
29 
30  /** this pixel density is relative to a real one! */
31  virtual void surface_changed(int32_t width, int32_t height, float pixel_density_w, float pixel_density_h) = 0;
32 
33  virtual void draw(const std::shared_ptr<::bnb::interfaces::frame_data> & frame_data) = 0;
34 
35  /** return rgba image, src_image can be rgb or rgba */
36  static ::bnb::full_image_t morph_mesh(::bnb::full_image_t src_image, const std::vector<float> & original_verts, const std::vector<float> & morphed_verts, const std::vector<int32_t> & indices, const std::vector<float> & mvp);
37 };
38 
39 } } // namespace bnb::interfaces
40 /// @}
41 
frame_data.hpp
bnb::interfaces::debug_renderer
Renders debug views of all enabled features Requires creation with active gl context for correct feat...
Definition: debug_renderer.hpp:23
bnb::interfaces::debug_renderer::morph_mesh
::bnb::full_image_t morph_mesh(::bnb::full_image_t src_image, const std::vector< float > &original_verts, const std::vector< float > &morphed_verts, const std::vector< int32_t > &indices, const std::vector< float > &mvp)
return rgba image, src_image can be rgb or rgba
bnb::interfaces::debug_renderer::surface_changed
virtual void surface_changed(int32_t width, int32_t height, float pixel_density_w, float pixel_density_h)=0
this pixel density is relative to a real one!
bnb::interfaces::frame_data
getters throw exceptions when data are not available android NNs usually output gpu masks
Definition: frame_data.hpp:37
bnb::interfaces::debug_renderer::create
static std::shared_ptr< debug_renderer > create()
This method may return null when debug renderer is unavailable.