RAMSES Documentation  27.0.130
Information for RAMSES users and developers
PickableObject.h
Go to the documentation of this file.
1 // -------------------------------------------------------------------------
2 // Copyright (C) 2019 BMW Car IT GmbH
3 // -------------------------------------------------------------------------
4 // This Source Code Form is subject to the terms of the Mozilla Public
5 // License, v. 2.0. If a copy of the MPL was not distributed with this
6 // file, You can obtain one at https://mozilla.org/MPL/2.0/.
7 // -------------------------------------------------------------------------
8 
9 #ifndef RAMSES_PICKABLEOBJECT_H
10 #define RAMSES_PICKABLEOBJECT_H
11 
12 #include "ramses-client-api/Node.h"
13 
14 namespace ramses
15 {
16  class ArrayBuffer;
17  class Camera;
18 
44  {
45  public:
53 
61  const Camera* getCamera() const;
62 
75  status_t setCamera(const Camera& camera);
76 
85 
97 
108  status_t setEnabled(bool enabled);
109 
115  bool isEnabled() const;
116 
120  class PickableObjectImpl& impl;
121 
122  protected:
126  friend class SceneImpl;
127 
133  explicit PickableObject(PickableObjectImpl& pimpl);
134 
138  virtual ~PickableObject() override;
139  };
140 }
141 
142 #endif
#define RAMSES_API
Definition: APIExport.h:35
The ArrayBuffer is a data object used to provide vertex or index data to ramses::GeometryBinding::set...
Definition: ArrayBuffer.h:27
The Camera base class is part of a scene and defines a view into the scene defined by the client appl...
Definition: Camera.h:26
The Node is the base class of all nodes and provides scene graph functionality which propagates to it...
Definition: Node.h:23
PickableObject provides a way to specify a 'pickable' area.
Definition: PickableObject.h:44
status_t setCamera(const Camera &camera)
Set the camera to be used to unproject geometry.
class PickableObjectImpl & impl
Definition: PickableObject.h:120
PickableObject(PickableObjectImpl &pimpl)
Constructor for PickableObject.
status_t setPickableObjectId(pickableObjectId_t id)
Set PickableObject's user ID.
bool isEnabled() const
Get the enabled state of the PickableObject.
virtual ~PickableObject() override
Destructor of the PickableObject.
status_t setEnabled(bool enabled)
Enable/Disable PickableObject.
pickableObjectId_t getPickableObjectId() const
Get the currently set PickableObject's user ID.
const ArrayBuffer & getGeometryBuffer() const
Get the geometry buffer assigned to this PickableObject.
const Camera * getCamera() const
Get the camera currently set to the PickableObject.
Helper class to create strongly typed values out of various types.
Definition: StronglyTypedValue.h:23
The RAMSES namespace contains all client side objects and functions used to implement RAMSES applicat...
Definition: AnimatedProperty.h:15
uint32_t status_t
Status is a handle to the result of an API call.
Definition: RamsesFrameworkTypes.h:26