Blue Brain BioExplorer
PluginManager.h
Go to the documentation of this file.
1
/*
2
*
3
* The Blue Brain BioExplorer is a tool for scientists to extract and analyse
4
* scientific data from visualization
5
*
6
* This file is part of Blue Brain BioExplorer <https://github.com/BlueBrain/BioExplorer>
7
*
8
* Copyright 2020-2024 Blue BrainProject / EPFL
9
*
10
* This program is free software: you can redistribute it and/or modify it under
11
* the terms of the GNU General Public License as published by the Free Software
12
* Foundation, either version 3 of the License, or (at your option) any later
13
* version.
14
*
15
* This program is distributed in the hope that it will be useful, but WITHOUT
16
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
17
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
18
* details.
19
*
20
* You should have received a copy of the GNU General Public License along with
21
* this program. If not, see <https://www.gnu.org/licenses/>.
22
*/
23
24
#pragma once
25
26
#include <
platform/core/common/Types.h
>
27
#include <
platform/core/common/utils/DynamicLib.h
>
28
#include <
platform/core/pluginapi/ExtensionPlugin.h
>
29
30
#include <vector>
31
32
namespace
core
33
{
36
class
PluginManager
37
{
38
public
:
44
PluginManager
(
int
argc,
const
char
** argv);
45
47
void
initPlugins
(
PluginAPI
* api);
48
50
void
destroyPlugins
();
51
53
void
preRender
();
54
56
void
postRender
();
57
58
private
:
59
std::vector<DynamicLib> _libs;
60
std::vector<std::unique_ptr<ExtensionPlugin>> _extensions;
61
62
void
_loadPlugin(
const
char
* name,
int
argc,
const
char
* argv[]);
63
};
64
}
// namespace core
DynamicLib.h
ExtensionPlugin.h
core::PluginAPI
Definition:
Plugin.h:32
core::PluginManager
Definition:
PluginManager.h:37
core::PluginManager::destroyPlugins
void destroyPlugins()
Definition:
PluginManager.cpp:106
core::PluginManager::postRender
void postRender()
Definition:
PluginManager.cpp:118
core::PluginManager::PluginManager
PluginManager(int argc, const char **argv)
Constructor.
Definition:
PluginManager.cpp:48
core::PluginManager::initPlugins
void initPlugins(PluginAPI *api)
Definition:
PluginManager.cpp:79
core::PluginManager::preRender
void preRender()
Definition:
PluginManager.cpp:112
core
Definition:
BaseWindow.cpp:53
Types.h
platform
core
PluginManager.h
Generated by
1.9.1