mirror of
https://github.com/overte-org/overte.git
synced 2025-04-15 02:10:32 +02:00
79 lines
1.8 KiB
C++
79 lines
1.8 KiB
C++
//
|
|
// 3DConnexion.cpp
|
|
// hifi
|
|
//
|
|
// Created by MarcelEdward Verhagen on 09-06-15.
|
|
// Copyright 2015 High Fidelity, Inc.
|
|
//
|
|
// Distributed under the Apache License, Version 2.0.
|
|
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
|
|
//
|
|
|
|
|
|
#ifndef I3D_MOUSE_PARAMS_H
|
|
#define I3D_MOUSE_PARAMS_H
|
|
|
|
// Parameters for the 3D mouse based on the SDK from 3Dconnexion
|
|
|
|
class I3dMouseSensor {
|
|
public:
|
|
enum Speed {
|
|
SPEED_LOW = 0,
|
|
SPEED_MID,
|
|
SPEED_HIGH
|
|
};
|
|
|
|
virtual bool IsPanZoom() const = 0;
|
|
virtual bool IsRotate() const = 0;
|
|
virtual Speed GetSpeed() const = 0;
|
|
|
|
virtual void SetPanZoom(bool isPanZoom) = 0;
|
|
virtual void SetRotate(bool isRotate) = 0;
|
|
virtual void SetSpeed(Speed speed) = 0;
|
|
|
|
protected:
|
|
virtual ~I3dMouseSensor() {}
|
|
};
|
|
|
|
class I3dMouseNavigation {
|
|
public:
|
|
enum Pivot {
|
|
PIVOT_MANUAL = 0,
|
|
PIVOT_AUTO,
|
|
PIVOT_AUTO_OVERRIDE
|
|
};
|
|
|
|
enum Navigation {
|
|
NAVIGATION_OBJECT_MODE = 0,
|
|
NAVIGATION_CAMERA_MODE,
|
|
NAVIGATION_FLY_MODE,
|
|
NAVIGATION_WALK_MODE,
|
|
NAVIGATION_HELICOPTER_MODE
|
|
};
|
|
|
|
enum PivotVisibility {
|
|
PIVOT_HIDE = 0,
|
|
PIVOT_SHOW,
|
|
PIVOT_SHOW_MOVING
|
|
};
|
|
|
|
virtual Navigation GetNavigationMode() const = 0;
|
|
virtual Pivot GetPivotMode() const = 0;
|
|
virtual PivotVisibility GetPivotVisibility() const = 0;
|
|
virtual bool IsLockHorizon() const = 0;
|
|
|
|
virtual void SetLockHorizon(bool bOn) = 0;
|
|
virtual void SetNavigationMode(Navigation navigation) = 0;
|
|
virtual void SetPivotMode(Pivot pivot) = 0;
|
|
virtual void SetPivotVisibility(PivotVisibility visibility) = 0;
|
|
|
|
protected:
|
|
virtual ~I3dMouseNavigation(){}
|
|
};
|
|
|
|
class I3dMouseParam : public I3dMouseSensor, public I3dMouseNavigation {
|
|
public:
|
|
virtual ~I3dMouseParam() {}
|
|
};
|
|
|
|
#endif
|