mirror of
https://github.com/overte-org/overte.git
synced 2025-04-14 15:47:02 +02:00
Check plugin activation success
This commit is contained in:
parent
776893a5ab
commit
931cad34d1
23 changed files with 66 additions and 39 deletions
|
@ -19,9 +19,7 @@ const QString Basic2DWindowOpenGLDisplayPlugin::NAME("Desktop");
|
||||||
|
|
||||||
static const QString FULLSCREEN = "Fullscreen";
|
static const QString FULLSCREEN = "Fullscreen";
|
||||||
|
|
||||||
void Basic2DWindowOpenGLDisplayPlugin::internalActivate() {
|
bool Basic2DWindowOpenGLDisplayPlugin::internalActivate() {
|
||||||
Parent::internalActivate();
|
|
||||||
|
|
||||||
_framerateActions.clear();
|
_framerateActions.clear();
|
||||||
_container->addMenuItem(PluginType::DISPLAY_PLUGIN, MENU_PATH(), FULLSCREEN,
|
_container->addMenuItem(PluginType::DISPLAY_PLUGIN, MENU_PATH(), FULLSCREEN,
|
||||||
[this](bool clicked) {
|
[this](bool clicked) {
|
||||||
|
@ -33,6 +31,8 @@ void Basic2DWindowOpenGLDisplayPlugin::internalActivate() {
|
||||||
}, true, false);
|
}, true, false);
|
||||||
|
|
||||||
updateFramerate();
|
updateFramerate();
|
||||||
|
|
||||||
|
return Parent::internalActivate();
|
||||||
}
|
}
|
||||||
|
|
||||||
void Basic2DWindowOpenGLDisplayPlugin::submitSceneTexture(uint32_t frameIndex, const gpu::TexturePointer& sceneTexture) {
|
void Basic2DWindowOpenGLDisplayPlugin::submitSceneTexture(uint32_t frameIndex, const gpu::TexturePointer& sceneTexture) {
|
||||||
|
|
|
@ -22,7 +22,7 @@ public:
|
||||||
|
|
||||||
virtual float getTargetFrameRate() override { return _framerateTarget ? (float) _framerateTarget : TARGET_FRAMERATE_Basic2DWindowOpenGL; }
|
virtual float getTargetFrameRate() override { return _framerateTarget ? (float) _framerateTarget : TARGET_FRAMERATE_Basic2DWindowOpenGL; }
|
||||||
|
|
||||||
virtual void internalActivate() override;
|
virtual bool internalActivate() override;
|
||||||
|
|
||||||
virtual void submitSceneTexture(uint32_t frameIndex, const gpu::TexturePointer& sceneTexture) override;
|
virtual void submitSceneTexture(uint32_t frameIndex, const gpu::TexturePointer& sceneTexture) override;
|
||||||
|
|
||||||
|
|
|
@ -219,7 +219,7 @@ void OpenGLDisplayPlugin::cleanupForSceneTexture(const gpu::TexturePointer& scen
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void OpenGLDisplayPlugin::activate() {
|
bool OpenGLDisplayPlugin::activate() {
|
||||||
if (!_cursorsData.size()) {
|
if (!_cursorsData.size()) {
|
||||||
auto& cursorManager = Cursor::Manager::instance();
|
auto& cursorManager = Cursor::Manager::instance();
|
||||||
for (const auto iconId : cursorManager.registeredIcons()) {
|
for (const auto iconId : cursorManager.registeredIcons()) {
|
||||||
|
@ -238,7 +238,9 @@ void OpenGLDisplayPlugin::activate() {
|
||||||
|
|
||||||
// Child classes may override this in order to do things like initialize
|
// Child classes may override this in order to do things like initialize
|
||||||
// libraries, etc
|
// libraries, etc
|
||||||
internalActivate();
|
if (!internalActivate()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#if THREADED_PRESENT
|
#if THREADED_PRESENT
|
||||||
|
@ -263,7 +265,8 @@ void OpenGLDisplayPlugin::activate() {
|
||||||
customizeContext();
|
customizeContext();
|
||||||
_container->makeRenderingContextCurrent();
|
_container->makeRenderingContextCurrent();
|
||||||
#endif
|
#endif
|
||||||
DisplayPlugin::activate();
|
|
||||||
|
return DisplayPlugin::activate();
|
||||||
}
|
}
|
||||||
|
|
||||||
void OpenGLDisplayPlugin::deactivate() {
|
void OpenGLDisplayPlugin::deactivate() {
|
||||||
|
|
|
@ -32,7 +32,7 @@ public:
|
||||||
|
|
||||||
// These must be final to ensure proper ordering of operations
|
// These must be final to ensure proper ordering of operations
|
||||||
// between the main thread and the presentation thread
|
// between the main thread and the presentation thread
|
||||||
void activate() override final;
|
bool activate() override final;
|
||||||
void deactivate() override final;
|
void deactivate() override final;
|
||||||
|
|
||||||
bool eventFilter(QObject* receiver, QEvent* event) override;
|
bool eventFilter(QObject* receiver, QEvent* event) override;
|
||||||
|
@ -77,7 +77,8 @@ protected:
|
||||||
virtual void customizeContext();
|
virtual void customizeContext();
|
||||||
virtual void uncustomizeContext();
|
virtual void uncustomizeContext();
|
||||||
|
|
||||||
virtual void internalActivate() {}
|
// Returns true on successful activation
|
||||||
|
virtual bool internalActivate() { return true; }
|
||||||
virtual void internalDeactivate() {}
|
virtual void internalDeactivate() {}
|
||||||
virtual void cleanupForSceneTexture(const gpu::TexturePointer& sceneTexture);
|
virtual void cleanupForSceneTexture(const gpu::TexturePointer& sceneTexture);
|
||||||
// Plugin specific functionality to send the composed scene to the output window or device
|
// Plugin specific functionality to send the composed scene to the output window or device
|
||||||
|
|
|
@ -32,7 +32,7 @@ glm::uvec2 HmdDisplayPlugin::getRecommendedUiSize() const {
|
||||||
return CompositorHelper::VIRTUAL_SCREEN_SIZE;
|
return CompositorHelper::VIRTUAL_SCREEN_SIZE;
|
||||||
}
|
}
|
||||||
|
|
||||||
void HmdDisplayPlugin::internalActivate() {
|
bool HmdDisplayPlugin::internalActivate() {
|
||||||
_monoPreview = _container->getBoolSetting("monoPreview", DEFAULT_MONO_VIEW);
|
_monoPreview = _container->getBoolSetting("monoPreview", DEFAULT_MONO_VIEW);
|
||||||
|
|
||||||
_container->addMenuItem(PluginType::DISPLAY_PLUGIN, MENU_PATH(), MONO_PREVIEW,
|
_container->addMenuItem(PluginType::DISPLAY_PLUGIN, MENU_PATH(), MONO_PREVIEW,
|
||||||
|
@ -41,7 +41,8 @@ void HmdDisplayPlugin::internalActivate() {
|
||||||
_container->setBoolSetting("monoPreview", _monoPreview);
|
_container->setBoolSetting("monoPreview", _monoPreview);
|
||||||
}, true, _monoPreview);
|
}, true, _monoPreview);
|
||||||
_container->removeMenu(FRAMERATE);
|
_container->removeMenu(FRAMERATE);
|
||||||
Parent::internalActivate();
|
|
||||||
|
return Parent::internalActivate();
|
||||||
}
|
}
|
||||||
|
|
||||||
void HmdDisplayPlugin::customizeContext() {
|
void HmdDisplayPlugin::customizeContext() {
|
||||||
|
|
|
@ -33,7 +33,7 @@ protected:
|
||||||
virtual bool isHmdMounted() const = 0;
|
virtual bool isHmdMounted() const = 0;
|
||||||
virtual void postPreview() {};
|
virtual void postPreview() {};
|
||||||
|
|
||||||
void internalActivate() override;
|
bool internalActivate() override;
|
||||||
void compositeOverlay() override;
|
void compositeOverlay() override;
|
||||||
void compositePointer() override;
|
void compositePointer() override;
|
||||||
void internalPresent() override;
|
void internalPresent() override;
|
||||||
|
|
|
@ -58,7 +58,7 @@ glm::mat4 StereoDisplayPlugin::getEyeProjection(Eye eye, const glm::mat4& basePr
|
||||||
static const QString FRAMERATE = DisplayPlugin::MENU_PATH() + ">Framerate";
|
static const QString FRAMERATE = DisplayPlugin::MENU_PATH() + ">Framerate";
|
||||||
|
|
||||||
std::vector<QAction*> _screenActions;
|
std::vector<QAction*> _screenActions;
|
||||||
void StereoDisplayPlugin::internalActivate() {
|
bool StereoDisplayPlugin::internalActivate() {
|
||||||
auto screens = qApp->screens();
|
auto screens = qApp->screens();
|
||||||
_screenActions.resize(screens.size());
|
_screenActions.resize(screens.size());
|
||||||
for (int i = 0; i < screens.size(); ++i) {
|
for (int i = 0; i < screens.size(); ++i) {
|
||||||
|
@ -77,7 +77,8 @@ void StereoDisplayPlugin::internalActivate() {
|
||||||
|
|
||||||
_screen = qApp->primaryScreen();
|
_screen = qApp->primaryScreen();
|
||||||
_container->setFullscreen(_screen);
|
_container->setFullscreen(_screen);
|
||||||
Parent::internalActivate();
|
|
||||||
|
return Parent::internalActivate();
|
||||||
}
|
}
|
||||||
|
|
||||||
void StereoDisplayPlugin::updateScreen() {
|
void StereoDisplayPlugin::updateScreen() {
|
||||||
|
|
|
@ -29,7 +29,7 @@ public:
|
||||||
// virtual glm::mat4 getEyeToHeadTransform(Eye eye) const override;
|
// virtual glm::mat4 getEyeToHeadTransform(Eye eye) const override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
virtual void internalActivate() override;
|
virtual bool internalActivate() override;
|
||||||
virtual void internalDeactivate() override;
|
virtual void internalDeactivate() override;
|
||||||
void updateScreen();
|
void updateScreen();
|
||||||
|
|
||||||
|
|
|
@ -4,11 +4,11 @@
|
||||||
|
|
||||||
#include "PluginContainer.h"
|
#include "PluginContainer.h"
|
||||||
|
|
||||||
void DisplayPlugin::activate() {
|
bool DisplayPlugin::activate() {
|
||||||
Parent::activate();
|
|
||||||
if (isHmd() && (getHmdScreen() >= 0)) {
|
if (isHmd() && (getHmdScreen() >= 0)) {
|
||||||
_container->showDisplayPluginsTools();
|
_container->showDisplayPluginsTools();
|
||||||
}
|
}
|
||||||
|
return Parent::activate();
|
||||||
}
|
}
|
||||||
|
|
||||||
void DisplayPlugin::deactivate() {
|
void DisplayPlugin::deactivate() {
|
||||||
|
|
|
@ -59,7 +59,7 @@ class DisplayPlugin : public Plugin {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
using Parent = Plugin;
|
using Parent = Plugin;
|
||||||
public:
|
public:
|
||||||
void activate() override;
|
bool activate() override;
|
||||||
void deactivate() override;
|
void deactivate() override;
|
||||||
virtual bool isHmd() const { return false; }
|
virtual bool isHmd() const { return false; }
|
||||||
virtual int getHmdScreen() const { return -1; }
|
virtual int getHmdScreen() const { return -1; }
|
||||||
|
|
|
@ -38,8 +38,10 @@ public:
|
||||||
virtual void deinit();
|
virtual void deinit();
|
||||||
|
|
||||||
/// Called when a plugin is being activated for use. May be called multiple times.
|
/// Called when a plugin is being activated for use. May be called multiple times.
|
||||||
virtual void activate() {
|
/// Returns true if plugin was successfully activated.
|
||||||
|
virtual bool activate() {
|
||||||
_active = true;
|
_active = true;
|
||||||
|
return _active;
|
||||||
}
|
}
|
||||||
|
|
||||||
/// Called when a plugin is no longer being used. May be called multiple times.
|
/// Called when a plugin is no longer being used. May be called multiple times.
|
||||||
|
|
|
@ -451,10 +451,10 @@ bool NeuronPlugin::isSupported() const {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void NeuronPlugin::activate() {
|
bool NeuronPlugin::activate() {
|
||||||
#ifdef HAVE_NEURON
|
|
||||||
InputPlugin::activate();
|
InputPlugin::activate();
|
||||||
|
|
||||||
|
#ifdef HAVE_NEURON
|
||||||
// register with userInputMapper
|
// register with userInputMapper
|
||||||
auto userInputMapper = DependencyManager::get<controller::UserInputMapper>();
|
auto userInputMapper = DependencyManager::get<controller::UserInputMapper>();
|
||||||
userInputMapper->registerDevice(_inputDevice);
|
userInputMapper->registerDevice(_inputDevice);
|
||||||
|
@ -473,11 +473,15 @@ void NeuronPlugin::activate() {
|
||||||
if (!_socketRef) {
|
if (!_socketRef) {
|
||||||
// error
|
// error
|
||||||
qCCritical(inputplugins) << "NeuronPlugin: error connecting to " << _serverAddress.c_str() << ":" << _serverPort << ", error = " << BRGetLastErrorMessage();
|
qCCritical(inputplugins) << "NeuronPlugin: error connecting to " << _serverAddress.c_str() << ":" << _serverPort << ", error = " << BRGetLastErrorMessage();
|
||||||
|
return false;
|
||||||
} else {
|
} else {
|
||||||
qCDebug(inputplugins) << "NeuronPlugin: success connecting to " << _serverAddress.c_str() << ":" << _serverPort;
|
qCDebug(inputplugins) << "NeuronPlugin: success connecting to " << _serverAddress.c_str() << ":" << _serverPort;
|
||||||
|
|
||||||
BRRegisterAutoSyncParmeter(_socketRef, Cmd_CombinationMode);
|
BRRegisterAutoSyncParmeter(_socketRef, Cmd_CombinationMode);
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
#else
|
||||||
|
return false;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,7 @@ public:
|
||||||
virtual const QString& getName() const override { return NAME; }
|
virtual const QString& getName() const override { return NAME; }
|
||||||
const QString& getID() const override { return NEURON_ID_STRING; }
|
const QString& getID() const override { return NEURON_ID_STRING; }
|
||||||
|
|
||||||
virtual void activate() override;
|
virtual bool activate() override;
|
||||||
virtual void deactivate() override;
|
virtual void deactivate() override;
|
||||||
|
|
||||||
virtual void pluginFocusOutEvent() override { _inputDevice->focusOutEvent(); }
|
virtual void pluginFocusOutEvent() override { _inputDevice->focusOutEvent(); }
|
||||||
|
|
|
@ -99,15 +99,19 @@ void SDL2Manager::deinit() {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void SDL2Manager::activate() {
|
bool SDL2Manager::activate() {
|
||||||
|
InputPlugin::activate();
|
||||||
|
|
||||||
#ifdef HAVE_SDL2
|
#ifdef HAVE_SDL2
|
||||||
auto userInputMapper = DependencyManager::get<controller::UserInputMapper>();
|
auto userInputMapper = DependencyManager::get<controller::UserInputMapper>();
|
||||||
for (auto joystick : _openJoysticks) {
|
for (auto joystick : _openJoysticks) {
|
||||||
userInputMapper->registerDevice(joystick);
|
userInputMapper->registerDevice(joystick);
|
||||||
emit joystickAdded(joystick.get());
|
emit joystickAdded(joystick.get());
|
||||||
}
|
}
|
||||||
|
return true;
|
||||||
|
#else
|
||||||
|
return false;
|
||||||
#endif
|
#endif
|
||||||
InputPlugin::activate();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SDL2Manager::deactivate() {
|
void SDL2Manager::deactivate() {
|
||||||
|
|
|
@ -34,9 +34,7 @@ public:
|
||||||
virtual void init() override;
|
virtual void init() override;
|
||||||
virtual void deinit() override;
|
virtual void deinit() override;
|
||||||
|
|
||||||
/// Called when a plugin is being activated for use. May be called multiple times.
|
virtual bool activate() override;
|
||||||
virtual void activate() override;
|
|
||||||
/// Called when a plugin is no longer being used. May be called multiple times.
|
|
||||||
virtual void deactivate() override;
|
virtual void deactivate() override;
|
||||||
|
|
||||||
virtual void pluginFocusOutEvent() override;
|
virtual void pluginFocusOutEvent() override;
|
||||||
|
|
|
@ -79,7 +79,7 @@ bool SixenseManager::isSupported() const {
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void SixenseManager::activate() {
|
bool SixenseManager::activate() {
|
||||||
InputPlugin::activate();
|
InputPlugin::activate();
|
||||||
|
|
||||||
#ifdef HAVE_SIXENSE
|
#ifdef HAVE_SIXENSE
|
||||||
|
@ -101,6 +101,9 @@ void SixenseManager::activate() {
|
||||||
|
|
||||||
loadSettings();
|
loadSettings();
|
||||||
_sixenseLoaded = (sixenseInit() == SIXENSE_SUCCESS);
|
_sixenseLoaded = (sixenseInit() == SIXENSE_SUCCESS);
|
||||||
|
return _sixenseLoaded;
|
||||||
|
#else
|
||||||
|
return false;
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -32,7 +32,7 @@ public:
|
||||||
virtual const QString& getName() const override { return NAME; }
|
virtual const QString& getName() const override { return NAME; }
|
||||||
virtual const QString& getID() const override { return HYDRA_ID_STRING; }
|
virtual const QString& getID() const override { return HYDRA_ID_STRING; }
|
||||||
|
|
||||||
virtual void activate() override;
|
virtual bool activate() override;
|
||||||
virtual void deactivate() override;
|
virtual void deactivate() override;
|
||||||
|
|
||||||
virtual void pluginFocusOutEvent() override { _inputDevice->focusOutEvent(); }
|
virtual void pluginFocusOutEvent() override { _inputDevice->focusOutEvent(); }
|
||||||
|
|
|
@ -34,8 +34,11 @@ void OculusBaseDisplayPlugin::customizeContext() {
|
||||||
Parent::customizeContext();
|
Parent::customizeContext();
|
||||||
}
|
}
|
||||||
|
|
||||||
void OculusBaseDisplayPlugin::internalActivate() {
|
bool OculusBaseDisplayPlugin::internalActivate() {
|
||||||
_session = acquireOculusSession();
|
_session = acquireOculusSession();
|
||||||
|
if (!_session) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
_hmdDesc = ovr_GetHmdDesc(_session);
|
_hmdDesc = ovr_GetHmdDesc(_session);
|
||||||
|
|
||||||
|
@ -81,7 +84,7 @@ void OculusBaseDisplayPlugin::internalActivate() {
|
||||||
// This must come after the initialization, so that the values calculated
|
// This must come after the initialization, so that the values calculated
|
||||||
// above are available during the customizeContext call (when not running
|
// above are available during the customizeContext call (when not running
|
||||||
// in threaded present mode)
|
// in threaded present mode)
|
||||||
Parent::internalActivate();
|
return Parent::internalActivate();
|
||||||
}
|
}
|
||||||
|
|
||||||
void OculusBaseDisplayPlugin::internalDeactivate() {
|
void OculusBaseDisplayPlugin::internalDeactivate() {
|
||||||
|
|
|
@ -24,7 +24,7 @@ public:
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void customizeContext() override;
|
void customizeContext() override;
|
||||||
void internalActivate() override;
|
bool internalActivate() override;
|
||||||
void internalDeactivate() override;
|
void internalDeactivate() override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
|
@ -41,14 +41,18 @@ bool OpenVrDisplayPlugin::isSupported() const {
|
||||||
return !isOculusPresent() && vr::VR_IsHmdPresent();
|
return !isOculusPresent() && vr::VR_IsHmdPresent();
|
||||||
}
|
}
|
||||||
|
|
||||||
void OpenVrDisplayPlugin::internalActivate() {
|
bool OpenVrDisplayPlugin::internalActivate() {
|
||||||
Parent::internalActivate();
|
Parent::internalActivate();
|
||||||
|
|
||||||
_container->setIsOptionChecked(StandingHMDSensorMode, true);
|
_container->setIsOptionChecked(StandingHMDSensorMode, true);
|
||||||
|
|
||||||
if (!_system) {
|
if (!_system) {
|
||||||
_system = acquireOpenVrSystem();
|
_system = acquireOpenVrSystem();
|
||||||
}
|
}
|
||||||
Q_ASSERT(_system);
|
if (!_system) {
|
||||||
|
qWarning() << "Failed to initialize OpenVR";
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
_system->GetRecommendedRenderTargetSize(&_renderTargetSize.x, &_renderTargetSize.y);
|
_system->GetRecommendedRenderTargetSize(&_renderTargetSize.x, &_renderTargetSize.y);
|
||||||
// Recommended render target size is per-eye, so double the X size for
|
// Recommended render target size is per-eye, so double the X size for
|
||||||
|
@ -86,6 +90,8 @@ void OpenVrDisplayPlugin::internalActivate() {
|
||||||
} else {
|
} else {
|
||||||
qDebug() << "OpenVR: error could not get chaperone pointer";
|
qDebug() << "OpenVR: error could not get chaperone pointer";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void OpenVrDisplayPlugin::internalDeactivate() {
|
void OpenVrDisplayPlugin::internalDeactivate() {
|
||||||
|
|
|
@ -30,7 +30,7 @@ public:
|
||||||
virtual void updateHeadPose(uint32_t frameIndex) override;
|
virtual void updateHeadPose(uint32_t frameIndex) override;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
void internalActivate() override;
|
bool internalActivate() override;
|
||||||
void internalDeactivate() override;
|
void internalDeactivate() override;
|
||||||
|
|
||||||
void hmdPresent() override;
|
void hmdPresent() override;
|
||||||
|
|
|
@ -53,8 +53,9 @@ bool ViveControllerManager::isSupported() const {
|
||||||
return !isOculusPresent() && vr::VR_IsHmdPresent();
|
return !isOculusPresent() && vr::VR_IsHmdPresent();
|
||||||
}
|
}
|
||||||
|
|
||||||
void ViveControllerManager::activate() {
|
bool ViveControllerManager::activate() {
|
||||||
InputPlugin::activate();
|
InputPlugin::activate();
|
||||||
|
|
||||||
_container->addMenu(MENU_PATH);
|
_container->addMenu(MENU_PATH);
|
||||||
_container->addMenuItem(PluginType::INPUT_PLUGIN, MENU_PATH, RENDER_CONTROLLERS,
|
_container->addMenuItem(PluginType::INPUT_PLUGIN, MENU_PATH, RENDER_CONTROLLERS,
|
||||||
[this] (bool clicked) { this->setRenderControllers(clicked); },
|
[this] (bool clicked) { this->setRenderControllers(clicked); },
|
||||||
|
@ -122,6 +123,8 @@ void ViveControllerManager::activate() {
|
||||||
auto userInputMapper = DependencyManager::get<controller::UserInputMapper>();
|
auto userInputMapper = DependencyManager::get<controller::UserInputMapper>();
|
||||||
userInputMapper->registerDevice(_inputDevice);
|
userInputMapper->registerDevice(_inputDevice);
|
||||||
_registeredWithInputMapper = true;
|
_registeredWithInputMapper = true;
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ViveControllerManager::deactivate() {
|
void ViveControllerManager::deactivate() {
|
||||||
|
|
|
@ -37,7 +37,7 @@ public:
|
||||||
virtual bool isJointController() const override { return true; }
|
virtual bool isJointController() const override { return true; }
|
||||||
const QString& getName() const override { return NAME; }
|
const QString& getName() const override { return NAME; }
|
||||||
|
|
||||||
virtual void activate() override;
|
virtual bool activate() override;
|
||||||
virtual void deactivate() override;
|
virtual void deactivate() override;
|
||||||
|
|
||||||
virtual void pluginFocusOutEvent() override { _inputDevice->focusOutEvent(); }
|
virtual void pluginFocusOutEvent() override { _inputDevice->focusOutEvent(); }
|
||||||
|
@ -111,8 +111,6 @@ private:
|
||||||
std::shared_ptr<InputDevice> _inputDevice { std::make_shared<InputDevice>(_system) };
|
std::shared_ptr<InputDevice> _inputDevice { std::make_shared<InputDevice>(_system) };
|
||||||
|
|
||||||
static const QString NAME;
|
static const QString NAME;
|
||||||
|
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // hifi__ViveControllerManager
|
#endif // hifi__ViveControllerManager
|
||||||
|
|
Loading…
Reference in a new issue