Gazebo Rendering
API Reference
9.0.0
insert_drive_file
Tutorials
library_books
Classes
toc
Namespaces
insert_drive_file
Files
launch
Gazebo Website
Index
List
Hierarchy
Members: All
Members: Functions
Members: Variables
Members: Typedefs
Members: Enumerations
Members: Enumerator
List
Members
Functions
Typedefs
Variables
Enumerations
Enumerator
src
gz-rendering
ogre
include
gz
rendering
ogre
OgreNode.hh
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2015 Open Source Robotics Foundation
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*
16
*/
17
#ifndef GZ_RENDERING_OGRE_OGRENODE_HH_
18
#define GZ_RENDERING_OGRE_OGRENODE_HH_
19
20
#include <gz/utils/SuppressWarning.hh>
21
22
#include "
gz/rendering/base/BaseNode.hh
"
23
#include "
gz/rendering/ogre/OgreRenderTypes.hh
"
24
#include "
gz/rendering/ogre/OgreObject.hh
"
25
26
namespace
Ogre
27
{
28
class
SceneNode;
29
}
30
31
namespace
gz
32
{
33
namespace
rendering
34
{
35
inline
namespace
GZ_RENDERING_VERSION_NAMESPACE {
36
//
37
class
GZ_RENDERING_OGRE_VISIBLE
OgreNode
:
38
public
BaseNode
<OgreObject>
39
{
40
protected
:
OgreNode
();
41
42
public
:
virtual
~OgreNode
();
43
44
public
:
virtual
bool
HasParent
()
const override
;
45
46
public
:
virtual
NodePtr
Parent
()
const override
;
47
48
public
:
virtual
Ogre::SceneNode *
Node
()
const
;
49
50
public
:
virtual
void
Destroy
()
override
;
51
52
// Documentation inherited.
53
public
:
virtual
math::Vector3d
LocalScale
()
const override
;
54
55
// Documentation inherited.
56
public
:
virtual
bool
InheritScale
()
const override
;
57
58
// Documentation inherited.
59
public
:
virtual
void
SetInheritScale
(
bool
_inherit)
override
;
60
61
// Documentation inherited.
62
protected
:
virtual
void
SetLocalScaleImpl
(
63
const
math::Vector3d
&_scale)
override
;
64
65
protected
:
virtual
NodeStorePtr
Children
()
const override
;
66
67
protected
:
virtual
bool
AttachChild
(
NodePtr
_child)
override
;
68
69
protected
:
virtual
bool
DetachChild
(
NodePtr
_child)
override
;
70
71
protected
:
virtual
math::Pose3d
RawLocalPose
()
const override
;
72
73
protected
:
virtual
void
SetRawLocalPose
(
const
math::Pose3d
&_Pose3d)
74
override
;
75
76
protected
:
virtual
math::Vector3d
RawLocalPosition
()
const
;
77
78
protected
:
virtual
void
SetRawLocalPosition
(
79
const
math::Vector3d
&_position);
80
81
protected
:
virtual
math::Quaterniond
RawLocalRotation
()
const
;
82
83
protected
:
virtual
void
SetRawLocalRotation
(
84
const
math::Quaterniond
&_rotation);
85
86
protected
:
virtual
void
SetParent
(
OgreNodePtr
_parent);
87
88
protected
:
virtual
void
Load
()
override
;
89
90
protected
:
virtual
void
Init
()
override
;
91
92
GZ_UTILS_WARN_IGNORE__DLL_INTERFACE_MISSING
93
protected
:
OgreNodePtr
parent
;
94
GZ_UTILS_WARN_RESUME__DLL_INTERFACE_MISSING
95
96
protected
: Ogre::SceneNode *ogreNode =
nullptr
;
97
98
protected
:
OgreNodeStorePtr
children
;
99
100
private
:
OgreNodePtr
SharedThis();
101
102
// TODO(anyone): remove the need for a visual friend class
103
private
:
friend
class
OgreVisual
;
104
};
105
}
106
}
107
}
108
#endif