mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-01-06 03:29:44 -06:00
Merge remote-tracking branch 'origin/master' into feature/properties-visibility
This commit is contained in:
@@ -27,6 +27,7 @@
|
||||
|
||||
#include <openspace/properties/propertyowner.h>
|
||||
|
||||
#include <openspace/properties/list/stringlistproperty.h>
|
||||
#include <map>
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
@@ -123,7 +124,10 @@ public:
|
||||
static scripting::LuaLibrary luaLibrary();
|
||||
|
||||
private:
|
||||
/// The list of all registered OpenSpaceModule%s
|
||||
/// The list of all names of all registered OpenSpaceModules
|
||||
properties::StringListProperty _allModules;
|
||||
|
||||
/// The list of all registered OpenSpaceModules
|
||||
std::vector<std::unique_ptr<OpenSpaceModule>> _modules;
|
||||
};
|
||||
|
||||
|
||||
@@ -35,6 +35,7 @@ namespace openspace {
|
||||
class Camera;
|
||||
class Layer;
|
||||
class Profile;
|
||||
class Renderable;
|
||||
class SceneGraphNode;
|
||||
class ScreenSpaceRenderable;
|
||||
class Time;
|
||||
@@ -74,6 +75,8 @@ struct Event {
|
||||
LayerRemoved,
|
||||
SessionRecordingPlayback,
|
||||
PointSpacecraft,
|
||||
RenderableEnabled,
|
||||
RenderableDisabled,
|
||||
Custom
|
||||
};
|
||||
constexpr explicit Event(Type type_) : type(type_) {}
|
||||
@@ -108,12 +111,17 @@ void logAllEvents(const Event* e);
|
||||
* This event is created whenever a new scene graph node is added to the system. By the
|
||||
* time this event is signalled, the scene graph node has already been created and added
|
||||
* to the scene.
|
||||
*
|
||||
* \param Node The identifier of the node that was added
|
||||
*/
|
||||
struct EventSceneGraphNodeAdded : public Event {
|
||||
static const Type Type = Event::Type::SceneGraphNodeAdded;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventSceneGraphNodeAdded event.
|
||||
*
|
||||
* \param Node The identifier of the node that was added
|
||||
*
|
||||
* \pre node_ must not be nullptr
|
||||
*/
|
||||
explicit EventSceneGraphNodeAdded(const SceneGraphNode* node_);
|
||||
const tstring node;
|
||||
};
|
||||
@@ -121,12 +129,17 @@ struct EventSceneGraphNodeAdded : public Event {
|
||||
/**
|
||||
* This event is created whenever a scene graph node was removed. By the time this event
|
||||
* is signalled, the scene graph node has already been removed.
|
||||
*
|
||||
* \param Node The identifier of that node that was removed
|
||||
*/
|
||||
struct EventSceneGraphNodeRemoved : public Event {
|
||||
static const Type Type = Event::Type::SceneGraphNodeRemoved;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventSceneGraphNodeRemoved event.
|
||||
*
|
||||
* \param Node The identifier of the node that was removed
|
||||
*
|
||||
* \pre node_ must not be nullptr
|
||||
*/
|
||||
explicit EventSceneGraphNodeRemoved(const SceneGraphNode* node_);
|
||||
const tstring node;
|
||||
};
|
||||
@@ -134,9 +147,6 @@ struct EventSceneGraphNodeRemoved : public Event {
|
||||
/**
|
||||
* This event is created whenever something in the parallel connection subsystem changes.
|
||||
* The new state is sent as an argument with this event.
|
||||
*
|
||||
* \param State The new state of the parallel connection system; is one of `Established`,
|
||||
* `Lost`, `HostshipGained`, or `HostshipLost`
|
||||
*/
|
||||
struct EventParallelConnection : public Event {
|
||||
static const Type Type = Event::Type::ParallelConnection;
|
||||
@@ -147,6 +157,13 @@ struct EventParallelConnection : public Event {
|
||||
HostshipGained,
|
||||
HostshipLost
|
||||
};
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventParallelConnection event.
|
||||
*
|
||||
* \param State The new state of the parallel connection system; is one of
|
||||
* `Established`, `Lost`, `HostshipGained`, or `HostshipLost`
|
||||
*/
|
||||
explicit EventParallelConnection(State state_);
|
||||
State state;
|
||||
};
|
||||
@@ -158,6 +175,9 @@ struct EventParallelConnection : public Event {
|
||||
struct EventProfileLoadingFinished : public Event {
|
||||
static const Type Type = Event::Type::ProfileLoadingFinished;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventProfileLoadingFinished event.
|
||||
*/
|
||||
EventProfileLoadingFinished();
|
||||
};
|
||||
|
||||
@@ -165,9 +185,6 @@ struct EventProfileLoadingFinished : public Event {
|
||||
* This event is created whenever some information about the application shutdown sequence
|
||||
* changes. This can either be that the seqeuence started, was aborted, or is finished,
|
||||
* which means that OpenSpace is just about the shutdown.
|
||||
*
|
||||
* \param State The next state of the application shutdown sequence; is one of `Started`,
|
||||
* `Aborted`, or `Finished`
|
||||
*/
|
||||
struct EventApplicationShutdown : public Event {
|
||||
static const Type Type = Event::Type::ApplicationShutdown;
|
||||
@@ -178,6 +195,12 @@ struct EventApplicationShutdown : public Event {
|
||||
Finished
|
||||
};
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventApplicationShutdown event.
|
||||
*
|
||||
* \param State The next state of the application shutdown sequence; is one of
|
||||
* `Started`, `Aborted`, or `Finished`
|
||||
*/
|
||||
explicit EventApplicationShutdown(State state_);
|
||||
const State state;
|
||||
};
|
||||
@@ -185,13 +208,17 @@ struct EventApplicationShutdown : public Event {
|
||||
/**
|
||||
* This event is created when a new screenspace renderable has been created. By the time
|
||||
* this event is craeted, the screenspace renderable is already registered and available.
|
||||
*
|
||||
* \param Renderable The identifier of the new screenspace renderable that was just added
|
||||
* to the system
|
||||
*/
|
||||
struct EventScreenSpaceRenderableAdded : public Event {
|
||||
static const Type Type = Event::Type::ScreenSpaceRenderableAdded;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventScreenSpaceRenderableAdded event.
|
||||
*
|
||||
* \param renderable_ The the new screenspace renderable that was added to the system
|
||||
*
|
||||
* \pre renderable_ must not be nullptr
|
||||
*/
|
||||
explicit EventScreenSpaceRenderableAdded(const ScreenSpaceRenderable* renderable_);
|
||||
const tstring renderable;
|
||||
};
|
||||
@@ -200,12 +227,15 @@ struct EventScreenSpaceRenderableAdded : public Event {
|
||||
* This event is created when a screenspace renderable has been removed from the system.
|
||||
* When this event is created, the screenspace renderable has already been removed and is
|
||||
* no longer available
|
||||
*
|
||||
* \param Renderable The identifier of the screenspace renderable that was removed
|
||||
*/
|
||||
struct EventScreenSpaceRenderableRemoved : public Event {
|
||||
static const Type Type = Event::Type::ScreenSpaceRenderableRemoved;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventScreenSpaceRenderableRemoved event.
|
||||
*
|
||||
* \param renderable_ The the new screenspace renderable that was removed
|
||||
*/
|
||||
explicit EventScreenSpaceRenderableRemoved(const ScreenSpaceRenderable* renderable_);
|
||||
const tstring renderable;
|
||||
};
|
||||
@@ -227,11 +257,6 @@ interaction sphere radius are all taken from the current focus node.
|
||||
^ ^ ^ ^
|
||||
Exiting Receding Reaching Approaching
|
||||
```
|
||||
*
|
||||
* \param Node The name of the node the camera is transitioning relative to. Currently is
|
||||
* always the same as the camera's focus node
|
||||
* \param Transition The transition type that the camera just finished; is one of
|
||||
* `Approaching`, `Reaching`, `Receding`, or `Exiting`
|
||||
*/
|
||||
struct EventCameraFocusTransition : public Event {
|
||||
static const Type Type = Event::Type::CameraFocusTransition;
|
||||
@@ -243,6 +268,18 @@ struct EventCameraFocusTransition : public Event {
|
||||
Exiting
|
||||
};
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventCameraFocusTransition event.
|
||||
*
|
||||
* \param camera_ The camera object that caused the transition
|
||||
* \param node_ The name of the node the camera is transitioning relative to.
|
||||
* Currently is always the same as the camera's focus node
|
||||
* \param transition_ The transition type that the camera just finished; is one of
|
||||
* `Approaching`, `Reaching`, `Receding`, or `Exiting`
|
||||
*
|
||||
* \pre camera_ must not be nullptr
|
||||
* \pre node_ must not be nullptr
|
||||
*/
|
||||
EventCameraFocusTransition(const Camera* camera_, const SceneGraphNode* node_,
|
||||
Transition transition_);
|
||||
|
||||
@@ -259,7 +296,14 @@ struct EventCameraFocusTransition : public Event {
|
||||
struct EventTimeOfInterestReached : public Event {
|
||||
static const Type Type = Event::Type::TimeOfInterestReached;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventTimeOfInterestReached event.
|
||||
*
|
||||
* \param time_ The time of interest that has been reached
|
||||
* \param camera_ Information about the camera for the specific transition
|
||||
*/
|
||||
EventTimeOfInterestReached(const Time* time_, const Camera* camera_);
|
||||
|
||||
const Time* time = nullptr;
|
||||
const Camera* camera = nullptr;
|
||||
};
|
||||
@@ -279,16 +323,21 @@ struct EventMissionEventReached : public Event {
|
||||
/**
|
||||
* This event is created when a planet is eclipsed by a moon or a different planet. This
|
||||
* event is currently unused.
|
||||
*
|
||||
* \param Eclipsee The identifier of the scene graph node that is eclipsed by another
|
||||
* object
|
||||
* \param Eclipser The identifier of the scene graph node that is eclipsing the other
|
||||
* object
|
||||
*/
|
||||
struct EventPlanetEclipsed : public Event {
|
||||
static const Type Type = Event::Type::PlanetEclipsed;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventPlanetEclipsed event.
|
||||
*
|
||||
* \param eclipsee_ The scene graph node that is eclipsed by another object
|
||||
* \param eclipser_ The scene graph node that is eclipsing the other object
|
||||
*
|
||||
* \pre eclipsee_ must not be nullptr
|
||||
* \pre eclipser_ must not be nullptr
|
||||
*/
|
||||
EventPlanetEclipsed(const SceneGraphNode* eclipsee_, const SceneGraphNode* eclipser_);
|
||||
|
||||
const tstring eclipsee;
|
||||
const tstring eclipser;
|
||||
};
|
||||
@@ -296,12 +345,17 @@ struct EventPlanetEclipsed : public Event {
|
||||
/**
|
||||
* This event is created when the interpolation of a property value is finished. If the
|
||||
* interpolation time of a property change is 0s, this event is not fired
|
||||
*
|
||||
* \param Property The URI of the property whose interpolation has finished
|
||||
*/
|
||||
struct EventInterpolationFinished : public Event {
|
||||
static const Type Type = Event::Type::InterpolationFinished;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventInterpolationFinished event.
|
||||
*
|
||||
* \param Property The property whose interpolation has finished
|
||||
*
|
||||
* \pre property_ must not be nullptr
|
||||
*/
|
||||
EventInterpolationFinished(const properties::Property* property_);
|
||||
const tstring property;
|
||||
};
|
||||
@@ -310,30 +364,45 @@ struct EventInterpolationFinished : public Event {
|
||||
* This event is created when the camera changes focus nodes. Even if the camera position
|
||||
* is interpolated, the node change happens instantaneously and the event is fired at the
|
||||
* same time.
|
||||
*
|
||||
* \param OldNode The identifier of the scene graph node which was the old focus node
|
||||
* \param NewNode The identifier of the scene graph node that is the new focus node
|
||||
*/
|
||||
struct EventFocusNodeChanged : public Event {
|
||||
static const Type Type = Event::Type::FocusNodeChanged;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventFocusNodeChanged event.
|
||||
*
|
||||
* \param oldNode_ The scene graph node which was the old focus node
|
||||
* \param newNode_ The scene graph node that is the new focus node
|
||||
*
|
||||
* \pre oldNode_ must not be nullptr
|
||||
* \pre newNode_ must not be nullptr
|
||||
*/
|
||||
EventFocusNodeChanged(const SceneGraphNode* oldNode_, const SceneGraphNode* newNode_);
|
||||
|
||||
const tstring oldNode;
|
||||
const tstring newNode;
|
||||
};
|
||||
|
||||
/**
|
||||
* This event is created when a layer is added to to a globe.
|
||||
*
|
||||
* \param Globe The identifier of the globe to which the layer is added
|
||||
* \param Group The identifier of the layer group to which the layer is added
|
||||
* \param Layer The identifier of the layer that was added
|
||||
*/
|
||||
struct EventLayerAdded : public Event {
|
||||
static const Type Type = Event::Type::LayerAdded;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventLayerAdded event.
|
||||
*
|
||||
* \param node_ The identifier of the globe to which the layer is added
|
||||
* \param layerGroup_ The identifier of the layer group to which the layer is added
|
||||
* \param layer_ The identifier of the layer that was added
|
||||
*
|
||||
* \pre node_ must not be empty
|
||||
* \pre layerGroup_ must not be empty
|
||||
* \pre layer_ must not be empty
|
||||
*/
|
||||
explicit EventLayerAdded(std::string_view node_, std::string_view layerGroup_,
|
||||
std::string_view layer_);
|
||||
|
||||
const tstring node;
|
||||
const tstring layerGroup;
|
||||
const tstring layer;
|
||||
@@ -341,16 +410,24 @@ struct EventLayerAdded : public Event {
|
||||
|
||||
/**
|
||||
* This event is created when a layer is removed from a globe.
|
||||
*
|
||||
* \param Globe The identifier of the globe from which the layer is removed
|
||||
* \param Group The identifier of the layer group from which the layer is removed
|
||||
* \param Layer The identifier of the layer that was removed
|
||||
*/
|
||||
struct EventLayerRemoved : public Event {
|
||||
static const Type Type = Event::Type::LayerRemoved;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventLayerRemoved event.
|
||||
*
|
||||
* \param node_ The identifier of the globe to which the layer is removed
|
||||
* \param layerGroup_ The identifier of the layer group to which the layer is removed
|
||||
* \param layer_ The identifier of the layer that was removed
|
||||
*
|
||||
* \pre node_ must not be empty
|
||||
* \pre layerGroup_ must not be empty
|
||||
* \pre layer_ must not be empty
|
||||
*/
|
||||
explicit EventLayerRemoved(std::string_view node_, std::string_view layerGroup_,
|
||||
std::string_view layer_);
|
||||
|
||||
const tstring node;
|
||||
const tstring layerGroup;
|
||||
const tstring layer;
|
||||
@@ -359,9 +436,6 @@ struct EventLayerRemoved : public Event {
|
||||
/**
|
||||
* This event is created when something regarding a session recording playback changes.
|
||||
* The event contains information about the new state of the session recording subsystem.
|
||||
*
|
||||
* \param State The new state of the session recording; one of `Started`, `Paused`,
|
||||
* `Resumed`, `Finished`
|
||||
*/
|
||||
struct EventSessionRecordingPlayback : public Event {
|
||||
static const Type Type = Event::Type::SessionRecordingPlayback;
|
||||
@@ -373,7 +447,14 @@ struct EventSessionRecordingPlayback : public Event {
|
||||
Finished
|
||||
};
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventSessionRecordingPlayback event.
|
||||
*
|
||||
* \param state_ The new state of the session recording; one of `Started`, `Paused`,
|
||||
* `Resumed`, `Finished`
|
||||
*/
|
||||
EventSessionRecordingPlayback(State state_);
|
||||
|
||||
const State state;
|
||||
};
|
||||
|
||||
@@ -382,21 +463,63 @@ struct EventSessionRecordingPlayback : public Event {
|
||||
* coordinate in the sky is issued. The event contains information about the sky
|
||||
* coordinate to point the spacecraft towards, and an optional argument for the duration
|
||||
* it should do the pointing.
|
||||
*
|
||||
* \param Ra The Ra part of the sky coordinate in decimal degrees to point towards
|
||||
* \param Dec The Dec part of the sky coordinate in decimal degrees to point towards
|
||||
* \param Duration The duration of time in seconds that the spacecraft should redirect
|
||||
* itself to the coordinate. Default is 3 seconds
|
||||
*/
|
||||
struct EventPointSpacecraft : public Event {
|
||||
static const Type Type = Event::Type::PointSpacecraft;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventSessionRecordingPlayback event.
|
||||
*
|
||||
* \param ra_ The Ra part of the sky coordinate in decimal degrees to point towards
|
||||
* \param dec_ The Dec part of the sky coordinate in decimal degrees to point towards
|
||||
* \param duration_ The duration of time in seconds that the spacecraft should
|
||||
* redirect itself to the coordinate. Default is 3 seconds
|
||||
*/
|
||||
EventPointSpacecraft(double ra_, double dec_, double duration_ = 3.0);
|
||||
|
||||
const double ra;
|
||||
const double dec;
|
||||
const double duration;
|
||||
};
|
||||
|
||||
/**
|
||||
* This event is created whenever a renderable is enabled. By the time this event is
|
||||
* signalled, the renderable has already been enabled.
|
||||
*/
|
||||
struct EventRenderableEnabled : public Event {
|
||||
static const Type Type = Event::Type::RenderableEnabled;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventRenderableEnabled event.
|
||||
*
|
||||
* \param node_ The identifier of the node that contains the renderable
|
||||
*
|
||||
* \pre node_ must not be nullptr
|
||||
*/
|
||||
explicit EventRenderableEnabled(const SceneGraphNode* node_);
|
||||
|
||||
const tstring node;
|
||||
};
|
||||
|
||||
/**
|
||||
* This event is created whenever a renderable is disabled. By the time this event is
|
||||
* signalled, the renderable has already been disabled.
|
||||
*/
|
||||
struct EventRenderableDisabled : public Event {
|
||||
static const Type Type = Event::Type::RenderableDisabled;
|
||||
|
||||
/**
|
||||
* Creates an instance of an EventRenderableDisabled event.
|
||||
*
|
||||
* \param node_ The identifier of that node that contains the renderable
|
||||
*
|
||||
* \pre node_ must not be nullptr
|
||||
*/
|
||||
explicit EventRenderableDisabled(const SceneGraphNode* node_);
|
||||
|
||||
const tstring node;
|
||||
};
|
||||
|
||||
/**
|
||||
* A custom event type that can be used in a pinch when no explicit event type is
|
||||
* available. This should only be used in special circumstances and it should be
|
||||
@@ -405,6 +528,14 @@ struct EventPointSpacecraft : public Event {
|
||||
struct CustomEvent : public Event {
|
||||
static const Type Type = Event::Type::Custom;
|
||||
|
||||
/**
|
||||
* Creates an instance of a CustomEvent event.
|
||||
*
|
||||
* \param subtype_ A textual description of the custom subtype that is emitted
|
||||
* \param payload_ The payload in a string form
|
||||
*
|
||||
* \pre subtype_ must not be empty
|
||||
*/
|
||||
CustomEvent(std::string_view subtype_, std::string_view payload_);
|
||||
|
||||
const tstring subtype;
|
||||
|
||||
@@ -101,7 +101,7 @@ public:
|
||||
SessionRecording();
|
||||
SessionRecording(bool isGlobal);
|
||||
|
||||
~SessionRecording();
|
||||
~SessionRecording() override;
|
||||
|
||||
/**
|
||||
* Used to de-initialize the session recording feature. Any recording or playback
|
||||
@@ -604,7 +604,7 @@ protected:
|
||||
Timestamps t3stamps;
|
||||
};
|
||||
double _timestampRecordStarted = 0.0;
|
||||
Timestamps _timestamps3RecordStarted;
|
||||
Timestamps _timestamps3RecordStarted{ 0.0, 0.0, 0.0 };
|
||||
double _timestampPlaybackStarted_application = 0.0;
|
||||
double _timestampPlaybackStarted_simulation = 0.0;
|
||||
double _timestampApplicationStarted_simulation = 0.0;
|
||||
@@ -696,10 +696,12 @@ protected:
|
||||
std::string& version, DataMode& mode);
|
||||
void populateListofLoadedSceneGraphNodes();
|
||||
|
||||
bool checkIfScriptUsesScenegraphNode(std::string s);
|
||||
void checkForScenegraphNodeAccess_Scene(std::string& s, std::string& result);
|
||||
void checkForScenegraphNodeAccess_Nav(std::string& s, std::string& result);
|
||||
void checkIfScriptUsesScenegraphNode(std::string s);
|
||||
bool checkForScenegraphNodeAccessScene(std::string& s);
|
||||
bool checkForScenegraphNodeAccessNav(std::string& navTerm);
|
||||
std::string extractScenegraphNodeFromScene(std::string& s);
|
||||
bool checkIfInitialFocusNodeIsLoaded(unsigned int firstCamIndex);
|
||||
std::string isolateTermFromQuotes(std::string s);
|
||||
void eraseSpacesFromString(std::string& s);
|
||||
std::string getNameFromSurroundingQuotes(std::string& s);
|
||||
|
||||
@@ -733,11 +735,11 @@ protected:
|
||||
|
||||
bool _saveRenderingDuringPlayback = false;
|
||||
double _saveRenderingDeltaTime = 1.0 / 30.0;
|
||||
double _saveRenderingCurrentRecordedTime;
|
||||
double _saveRenderingCurrentRecordedTime = 0.0;
|
||||
std::chrono::steady_clock::duration _saveRenderingDeltaTime_interpolation_usec;
|
||||
std::chrono::steady_clock::time_point _saveRenderingCurrentRecordedTime_interpolation;
|
||||
double _saveRenderingCurrentApplicationTime_interpolation;
|
||||
long long _saveRenderingClockInterpolation_countsPerSec;
|
||||
double _saveRenderingCurrentApplicationTime_interpolation = 0.0;
|
||||
long long _saveRenderingClockInterpolation_countsPerSec = 1;
|
||||
bool _saveRendering_isFirstFrame = true;
|
||||
|
||||
unsigned char _keyframeBuffer[_saveBufferMaxSize_bytes];
|
||||
@@ -835,7 +837,7 @@ protected:
|
||||
class SessionRecording_legacy_0085 : public SessionRecording {
|
||||
public:
|
||||
SessionRecording_legacy_0085() : SessionRecording() {}
|
||||
~SessionRecording_legacy_0085() {}
|
||||
~SessionRecording_legacy_0085() override {}
|
||||
char FileHeaderVersion[FileHeaderVersionLength+1] = "00.85";
|
||||
char TargetConvertVersion[FileHeaderVersionLength+1] = "01.00";
|
||||
std::string fileFormatVersion() override {
|
||||
|
||||
@@ -37,7 +37,7 @@ namespace openspace::interaction {
|
||||
class ConvertRecFileVersionTask : public Task {
|
||||
public:
|
||||
ConvertRecFileVersionTask(const ghoul::Dictionary& dictionary);
|
||||
~ConvertRecFileVersionTask();
|
||||
~ConvertRecFileVersionTask() override;
|
||||
std::string description() override;
|
||||
void perform(const Task::ProgressCallback& progressCallback) override;
|
||||
static documentation::Documentation documentation();
|
||||
|
||||
@@ -41,7 +41,7 @@ public:
|
||||
ToBinary
|
||||
};
|
||||
ConvertRecFormatTask(const ghoul::Dictionary& dictionary);
|
||||
~ConvertRecFormatTask();
|
||||
~ConvertRecFormatTask() override;
|
||||
std::string description() override;
|
||||
void perform(const Task::ProgressCallback& progressCallback) override;
|
||||
static documentation::Documentation documentation();
|
||||
|
||||
@@ -61,7 +61,7 @@ class PathNavigator;
|
||||
class NavigationHandler : public properties::PropertyOwner {
|
||||
public:
|
||||
NavigationHandler();
|
||||
~NavigationHandler();
|
||||
virtual ~NavigationHandler() override;
|
||||
|
||||
void initialize();
|
||||
void deinitialize();
|
||||
|
||||
@@ -51,7 +51,7 @@ class Path;
|
||||
class PathNavigator : public properties::PropertyOwner {
|
||||
public:
|
||||
PathNavigator();
|
||||
~PathNavigator();
|
||||
virtual ~PathNavigator() override;
|
||||
|
||||
// Accessors
|
||||
Camera* camera() const;
|
||||
|
||||
@@ -47,7 +47,7 @@ namespace scripting { struct LuaLibrary; }
|
||||
class ParallelPeer : public properties::PropertyOwner {
|
||||
public:
|
||||
ParallelPeer();
|
||||
~ParallelPeer();
|
||||
~ParallelPeer() override;
|
||||
|
||||
void connect();
|
||||
void setPort(std::string port);
|
||||
|
||||
@@ -35,7 +35,7 @@ class ListProperty : public TemplateProperty<std::vector<T>> {
|
||||
public:
|
||||
ListProperty(Property::PropertyInfo info, std::vector<T> values);
|
||||
|
||||
virtual ~ListProperty() = 0;
|
||||
virtual ~ListProperty() override = 0;
|
||||
};
|
||||
|
||||
} // namespace openspace::properties
|
||||
|
||||
@@ -77,7 +77,7 @@ public:
|
||||
* The destructor will remove all Propertys and PropertyOwners it owns along with
|
||||
* itself.
|
||||
*/
|
||||
virtual ~PropertyOwner();
|
||||
virtual ~PropertyOwner() override;
|
||||
|
||||
/**
|
||||
* Sets the identifier for this PropertyOwner. If the PropertyOwner does not have an
|
||||
|
||||
@@ -41,7 +41,7 @@ namespace scripting { struct LuaLibrary; }
|
||||
class Dashboard : public properties::PropertyOwner {
|
||||
public:
|
||||
Dashboard();
|
||||
~Dashboard() = default;
|
||||
virtual ~Dashboard() override = default;
|
||||
|
||||
void render(glm::vec2& penPosition);
|
||||
|
||||
|
||||
@@ -58,7 +58,7 @@ class FramebufferRenderer : public RaycasterListener,
|
||||
public DeferredcasterListener
|
||||
{
|
||||
public:
|
||||
virtual ~FramebufferRenderer() = default;
|
||||
virtual ~FramebufferRenderer() override final = default;
|
||||
|
||||
void initialize();
|
||||
void deinitialize();
|
||||
|
||||
@@ -46,7 +46,7 @@ namespace openspace {
|
||||
class LuaConsole : public properties::PropertyOwner {
|
||||
public:
|
||||
LuaConsole();
|
||||
~LuaConsole();
|
||||
~LuaConsole() override;
|
||||
|
||||
void initialize();
|
||||
void deinitialize();
|
||||
|
||||
@@ -65,7 +65,7 @@ public:
|
||||
ghoul::Dictionary dictionary);
|
||||
|
||||
Renderable(const ghoul::Dictionary& dictionary);
|
||||
virtual ~Renderable() = default;
|
||||
virtual ~Renderable() override = default;
|
||||
|
||||
virtual void initialize();
|
||||
virtual void initializeGL();
|
||||
|
||||
@@ -66,7 +66,7 @@ struct ShutdownInformation;
|
||||
class RenderEngine : public properties::PropertyOwner {
|
||||
public:
|
||||
RenderEngine();
|
||||
~RenderEngine();
|
||||
virtual ~RenderEngine() override;
|
||||
|
||||
void initialize();
|
||||
void initializeGL();
|
||||
|
||||
@@ -58,7 +58,7 @@ public:
|
||||
static constexpr const char* KeyIdentifier = "Identifier";
|
||||
|
||||
ScreenSpaceRenderable(const ghoul::Dictionary& dictionary);
|
||||
virtual ~ScreenSpaceRenderable();
|
||||
virtual ~ScreenSpaceRenderable() override;
|
||||
|
||||
virtual void render();
|
||||
|
||||
@@ -130,6 +130,7 @@ protected:
|
||||
properties::Vec3Property _localRotation;
|
||||
|
||||
properties::FloatProperty _scale;
|
||||
properties::FloatProperty _gamma;
|
||||
properties::Vec3Property _multiplyColor;
|
||||
properties::Vec4Property _backgroundColor;
|
||||
properties::FloatProperty _opacity;
|
||||
@@ -137,7 +138,7 @@ protected:
|
||||
properties::TriggerProperty _delete;
|
||||
|
||||
glm::ivec2 _objectSize = glm::ivec2(0);
|
||||
UniformCache(color, opacity, mvp, texture, backgroundColor) _uniformCache;
|
||||
UniformCache(color, opacity, mvp, texture, backgroundColor, gamma) _uniformCache;
|
||||
std::unique_ptr<ghoul::opengl::ProgramObject> _shader;
|
||||
};
|
||||
|
||||
|
||||
@@ -47,7 +47,7 @@ public:
|
||||
|
||||
LightSource();
|
||||
LightSource(const ghoul::Dictionary& dictionary);
|
||||
virtual ~LightSource() = default;
|
||||
~LightSource() override = default;
|
||||
|
||||
virtual glm::vec3 directionViewSpace(const RenderData& renderData) const = 0;
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@ public:
|
||||
const ghoul::Dictionary& dictionary);
|
||||
|
||||
Rotation();
|
||||
virtual ~Rotation() = default;
|
||||
virtual ~Rotation() override = default;
|
||||
|
||||
virtual bool initialize();
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@ public:
|
||||
const ghoul::Dictionary& dictionary);
|
||||
|
||||
Scale();
|
||||
virtual ~Scale() = default;
|
||||
virtual ~Scale() override = default;
|
||||
|
||||
virtual bool initialize();
|
||||
|
||||
|
||||
@@ -82,7 +82,7 @@ public:
|
||||
|
||||
// constructors & destructor
|
||||
Scene(std::unique_ptr<SceneInitializer> initializer);
|
||||
~Scene();
|
||||
virtual ~Scene() override;
|
||||
|
||||
/**
|
||||
* Clear the scene graph,
|
||||
@@ -253,6 +253,17 @@ public:
|
||||
*/
|
||||
void setPropertiesFromProfile(const Profile& p);
|
||||
|
||||
/**
|
||||
* Searches for any properties that match the regex propertyString, and returns
|
||||
* the results in a vector.
|
||||
*
|
||||
* \param propertyString the regex string that is intended to match one or more
|
||||
* properties in the currently-available properties
|
||||
* \return Vector of Property objs containing property names that matched the regex
|
||||
*/
|
||||
std::vector<properties::Property*> propertiesMatchingRegex(
|
||||
std::string propertyString);
|
||||
|
||||
private:
|
||||
/**
|
||||
* Accepts string version of a property value from a profile, converts it to the
|
||||
|
||||
@@ -81,7 +81,7 @@ public:
|
||||
static constexpr const char* KeyTag = "Tag";
|
||||
|
||||
SceneGraphNode();
|
||||
~SceneGraphNode();
|
||||
virtual ~SceneGraphNode() override;
|
||||
|
||||
static ghoul::mm_unique_ptr<SceneGraphNode> createFromDictionary(
|
||||
const ghoul::Dictionary& dictionary);
|
||||
|
||||
@@ -45,7 +45,7 @@ public:
|
||||
const ghoul::Dictionary& dictionary);
|
||||
|
||||
TimeFrame();
|
||||
virtual ~TimeFrame() = default;
|
||||
virtual ~TimeFrame() override = default;
|
||||
|
||||
virtual bool initialize();
|
||||
|
||||
|
||||
@@ -47,7 +47,7 @@ public:
|
||||
const ghoul::Dictionary& dictionary);
|
||||
|
||||
Translation();
|
||||
virtual ~Translation() = default;
|
||||
virtual ~Translation() override = default;
|
||||
virtual bool initialize();
|
||||
|
||||
virtual void update(const UpdateData& data);
|
||||
|
||||
@@ -375,7 +375,7 @@ public:
|
||||
* This destructor will cancel any ongoing download and wait for its completion, so it
|
||||
* might not block for a short amount of time.
|
||||
*/
|
||||
virtual ~HttpFileDownload() = default;
|
||||
virtual ~HttpFileDownload() override = default;
|
||||
|
||||
/**
|
||||
* Returns the path where the contents of the URL provided in the constructor will be
|
||||
@@ -443,7 +443,7 @@ public:
|
||||
* This destructor will cancel any ongoing download and wait for its completion, so it
|
||||
* might not block for a short amount of time.
|
||||
*/
|
||||
virtual ~HttpMemoryDownload() = default;
|
||||
virtual ~HttpMemoryDownload() override = default;
|
||||
|
||||
/**
|
||||
* Returns a reference to the buffer that is used to store the contents of the URL
|
||||
|
||||
@@ -58,7 +58,7 @@ public:
|
||||
OpenSpaceModule(std::string name);
|
||||
|
||||
/// Default destructor
|
||||
virtual ~OpenSpaceModule() = default;
|
||||
virtual ~OpenSpaceModule() override = default;
|
||||
|
||||
/**
|
||||
* Initialization method that will register a token of the form
|
||||
|
||||
@@ -82,7 +82,7 @@ public:
|
||||
/**
|
||||
* Destructor
|
||||
*/
|
||||
~ScreenLog() = default;
|
||||
~ScreenLog() override = default;
|
||||
|
||||
/**
|
||||
* Overwritten ghoul::loggling::Log method that is called whenever a new log message
|
||||
|
||||
Reference in New Issue
Block a user