Blue Brain BioExplorer
Core.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 
28 
29 namespace core
30 {
49 class Core
50 {
51 public:
66  PLATFORM_API Core(int argc, const char** argv);
68 
81  PLATFORM_API void commitAndRender(const RenderInput& renderInput, RenderOutput& renderOutput);
82 
100 
112  PLATFORM_API bool commit();
113 
118  PLATFORM_API void render();
119 
125  PLATFORM_API void postRender();
127 
132 
137 
142 
147 
148 private:
149  struct Impl;
150  std::unique_ptr<Impl> _impl;
151 };
152 } // namespace core
#define PLATFORM_API
Definition: Api.h:37
PLATFORM_API Engine & getEngine()
Definition: Core.cpp:510
PLATFORM_API void render()
Definition: Core.cpp:502
PLATFORM_API Core(int argc, const char **argv)
Definition: Core.cpp:473
PLATFORM_API void postRender()
Definition: Core.cpp:506
PLATFORM_API AbstractManipulator & getCameraManipulator()
Definition: Core.cpp:524
PLATFORM_API bool commitAndRender()
Definition: Core.cpp:488
PLATFORM_API ParametersManager & getParametersManager()
Definition: Core.cpp:514
PLATFORM_API KeyboardHandler & getKeyboardHandler()
Definition: Core.cpp:519
PLATFORM_API bool commit()
Definition: Core.cpp:498
PLATFORM_API ~Core()
Provides an abstract implementation of a ray-tracing engine.
Definition: Engine.h:59
The KeyboardHandler class manages keyboard shortcuts and special keys.