8#ifndef META_OCEAN_PLATFORM_META_QUEST_APPLICATION_VR_CONTROLLER_VISUALIZER_H 
    9#define META_OCEAN_PLATFORM_META_QUEST_APPLICATION_VR_CONTROLLER_VISUALIZER_H 
  118                bool wasShown_ = 
false;
 
 
  194        inline bool isShown() 
const;
 
  202        inline Scalar controllerRayLength() 
const;
 
  208        inline void setControllerRayLength(
const Scalar length);
 
  225        inline void pushState();
 
  230        inline void popState();
 
  256        bool loadModels(
const std::string& leftRenderModelFilename, 
const std::string& rightRenderModelFilename);
 
  293        std::atomic<Scalar> controllerRayLength_ = 
Scalar(0);
 
 
  302    controllerRayLength_(0)
 
  304    ocean_assert(!leftRenderModelFilename.empty() && !rightRenderModelFilename.empty());
 
  305    if (!
loadModels(leftRenderModelFilename, rightRenderModelFilename))
 
  307        Log::error() << 
"Failed to load the render models of the controllers";
 
 
  314    controllerRayLength_(0)
 
  317    ocean_assert(!renderModelDirectoryName.empty());
 
  319    if (
loadModels(deviceType, renderModelDirectoryName))
 
  325        Log::error() << 
"Failed to load the render models of the controllers";
 
 
  332    *
this = std::move(vrControllerVisualizer);
 
 
  376#ifdef OCEAN_PLATFORM_META_QUEST_OPENXR_USE_EXTERNAL_CONTROLLER_MODEL_FILE 
static MessageObject error()
Returns the message for error messages.
Definition Messenger.h:1074
This class implements a scoped lock object for recursive lock objects.
Definition Lock.h:147
float Scalar
Definition of a scalar type.
Definition Math.h:129
The namespace covering the entire Ocean framework.
Definition Accessor.h:15