Visual Servoing Platform  version 3.6.1 under development (2025-02-09)
vpPanda3DFrameworkManager.cpp
1 #include <visp3/ar/vpPanda3DFrameworkManager.h>
2 
3 #if defined(VISP_HAVE_PANDA3D)
4 
5 #include "load_prc_file.h"
7 {
8  if (!m_frameworkIsOpen) {
9  load_prc_file_data("",
10  "gl-version 3 2\n"
11  "textures-power-2 none\n"
12  "back-buffers 0\n"
13  "auto-flip 1\n"
14  // "pstats-gpu-timing 1\n"
15  // "gl-finish 1\n"
16  // "texture-minfilter mipmap\n"
17  "no-singular-invert\n"
18  "load-file-type p3assimp\n"
19  "audio-library-name null\n"
20  "model-cache-dir\n");
21  m_framework.open_framework();
22  m_frameworkIsOpen = true;
23  }
24 
25 }
26 
28 {
29  m_framework.close_framework();
30 }
31 
32 
33 void vpPanda3DFrameworkManager::registerDisabledWindow(PointerTo<WindowFramework> wf)
34 {
35  m_disabledWindows.push_back(wf);
36 }
37 
38 void vpPanda3DFrameworkManager::disableAllOtherRenderers(PointerTo<WindowFramework> &active)
39 {
40  for (int i = 0; i < m_framework.get_num_windows(); ++i) {
41  PointerTo<WindowFramework> fi = m_framework.get_window(i);
42  if (fi != active) {
43  fi->get_graphics_output()->get_gsg()->set_active(false);
44  }
45  else {
46  fi->get_graphics_output()->get_gsg()->set_active(true);
47  }
48  }
49 }
50 
52 {
53  for (int i = 0; i < m_framework.get_num_windows(); ++i) {
54  WindowFramework *fi = m_framework.get_window(i);
55  if (std::find(m_disabledWindows.begin(), m_disabledWindows.end(), fi) == m_disabledWindows.end()) {
56 
57  fi->get_graphics_output()->get_gsg()->set_active(true);
58  }
59  }
60 }
61 
62 #endif
void registerDisabledWindow(PointerTo< WindowFramework > wf)
std::vector< PointerTo< WindowFramework > > m_disabledWindows
bool m_frameworkIsOpen
Panda Rendering framework.
void disableAllOtherRenderers(PointerTo< WindowFramework > &active)