Feature/CMake (#1443)

General CMake cleanup/overhaul
* Enable precompiled headers for all projects
* Move specifications itto separate CMakeLists files
  * Add openspace-core as a subdirectory
  * Move handle_modules functionality into modules/CMakeLists.txt
  * Move handleapplications logic into apps/CMakeLists.txt
* Introduce openspace-module-collection interface library to simplify inclusion of modules in applications
* Turn module initialization into a two-step process to adapt to the new minimal dependency scenario
* Compile time speedup
  * Remove circular dependencies between modules and core preventing multithreaded compilation on MSVC
  * Build Spice multithreaded and as static library
  * Remove dependency from core to module-webbrowser
  * Remove unused dependency from kameleon
  * Remove additional unnecessary dependencies
  * Cleanup volume/kameleon/kameleonvolume modules
  * Fix visibility issues. Restrict include paths
  * Compile kameleon in parallel
* Other cleanup
  * Only copy CEF files from one target (hard-coded to OpenSpace right now)
  * Remove unused instrumentation code
  * Remove the ability to render AABB for globes as it caused a circular dependency between GlobeBrowsing and Debugging
  * Removing compiler and cppcheck warnings
  * Turn almost all includes into non-system includes
  * Don't warn on deprecrated copy
* Updated submodules
This commit is contained in:
Alexander Bock
2020-12-28 18:26:57 +01:00
committed by GitHub
parent feb3078641
commit ad8af3ffeb
181 changed files with 2250 additions and 2540 deletions

View File

@@ -88,8 +88,7 @@ public:
* previously
* \pre \p module must not be nullptr
*/
void registerModule(std::unique_ptr<OpenSpaceModule> module,
const ghoul::Dictionary& configuration);
void registerModule(std::unique_ptr<OpenSpaceModule> module);
/**
* Returns a list of all registered OpenSpaceModule%s that have been registered with

View File

@@ -36,7 +36,7 @@
#pragma GCC diagnostic ignored "-Wuseless-cast"
#endif // __GNUC__
#include <ext/json/json.hpp>
#include <json/json.hpp>
#if defined(__GNUC__) && !defined(__clang__)
#pragma GCC diagnostic pop

View File

@@ -25,9 +25,9 @@
#ifndef __OPENSPACE_CORE___MESSAGESTRUCTURES___H__
#define __OPENSPACE_CORE___MESSAGESTRUCTURES___H__
#include <ghoul/fmt.h>
#include <ghoul/glm.h>
#include <ghoul/logging/logmanager.h>
#include <fmt/format.h>
#include <algorithm>
#include <cstring>
#include <fstream>

View File

@@ -202,20 +202,6 @@ private:
properties::BoolProperty _applyWarping;
properties::BoolProperty _showFrameInformation;
#ifdef OPENSPACE_WITH_INSTRUMENTATION
struct FrameInfo {
uint64_t iFrame;
double deltaTime;
double avgDeltaTime;
};
struct {
std::vector<FrameInfo> frames;
uint64_t lastSavedFrame = 0;
uint16_t saveEveryNthFrame = 2048;
} _frameInfo;
properties::BoolProperty _saveFrameInformation;
#endif // OPENSPACE_WITH_INSTRUMENTATION
properties::BoolProperty _disableMasterRendering;
properties::FloatProperty _globalBlackOutFactor;

View File

@@ -52,12 +52,9 @@ public:
glm::vec4 sample(size_t offset);
size_t width();
void setCallback(TfChangedCallback callback);
void setTextureFromTxt(std::shared_ptr<ghoul::opengl::Texture> ptr);
void setTextureFromTxt();
private:
void setTextureFromTxt() {
setTextureFromTxt(_texture);
}
void setTextureFromImage();
void uploadTexture();

View File

@@ -66,8 +66,7 @@ public:
* is set in the OpenSpaceModule constructor. This method will call the
* internalInitialize method for further customization for each subclass.
*/
void initialize(const ModuleEngine* moduleEngine,
const ghoul::Dictionary& configuration);
void initialize(const ghoul::Dictionary& configuration);
/**
* This method calls the internalInitializeGL method for further customization for
@@ -168,9 +167,6 @@ protected:
* Returns a const pointer to the module engine
*/
const ModuleEngine* moduleEngine() const;
private:
const ModuleEngine* _moduleEngine = nullptr;
};
} // namespace openspace

View File

@@ -35,9 +35,24 @@
#include <string>
#include <vector>
#include <set>
#ifdef __clang__
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wold-style-cast"
#elif defined(__GNUC__)
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wold-style-cast"
#endif
#include "SpiceUsr.h"
#include "SpiceZpr.h"
#ifdef __clang__
#pragma clang diagnostic pop
#elif defined(__GNUC__)
#pragma GCC diagnostic pop
#endif
namespace openspace {
namespace scripting { struct LuaLibrary; }