Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
src
rviz
display_context.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2012, Willow Garage, Inc.
3
* All rights reserved.
4
*
5
* Redistribution and use in source and binary forms, with or without
6
* modification, are permitted provided that the following conditions are met:
7
*
8
* * Redistributions of source code must retain the above copyright
9
* notice, this list of conditions and the following disclaimer.
10
* * Redistributions in binary form must reproduce the above copyright
11
* notice, this list of conditions and the following disclaimer in the
12
* documentation and/or other materials provided with the distribution.
13
* * Neither the name of the Willow Garage, Inc. nor the names of its
14
* contributors may be used to endorse or promote products derived from
15
* this software without specific prior written permission.
16
*
17
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
21
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
24
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
25
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
26
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
27
* POSSIBILITY OF SUCH DAMAGE.
28
*/
29
#ifndef DISPLAY_CONTEXT_H
30
#define DISPLAY_CONTEXT_H
31
32
#include <stdint.h>
// for uint64_t
33
34
#include <QObject>
35
#include <QString>
36
37
class
QKeyEvent;
38
39
namespace
Ogre
40
{
41
class
SceneManager;
42
}
43
44
namespace
ros
45
{
46
class
CallbackQueueInterface;
47
}
48
49
namespace
tf
50
{
51
class
TransformListener;
52
}
53
54
namespace
rviz
55
{
56
57
class
BitAllocator;
58
class
DisplayFactory;
59
class
DisplayGroup;
60
class
FrameManager;
61
class
RenderPanel;
62
class
SelectionManager;
63
class
ToolManager;
64
class
ViewController;
65
class
ViewportMouseEvent;
66
class
ViewManager;
67
class
WindowManagerInterface;
68
76
class
DisplayContext
:
public
QObject
77
{
78
Q_OBJECT
79
public
:
81
virtual
Ogre::SceneManager* getSceneManager()
const
= 0;
82
84
virtual
WindowManagerInterface
* getWindowManager()
const
= 0;
85
87
virtual
SelectionManager
* getSelectionManager()
const
= 0;
88
90
virtual
FrameManager
* getFrameManager()
const
= 0;
91
93
virtual
tf::TransformListener
* getTFClient()
const
= 0;
94
96
virtual
QString getFixedFrame()
const
= 0;
97
103
virtual
uint64_t getFrameCount()
const
= 0;
104
106
virtual
DisplayFactory
* getDisplayFactory()
const
= 0;
107
109
virtual
ros::CallbackQueueInterface
* getUpdateQueue() = 0;
110
112
virtual
ros::CallbackQueueInterface
* getThreadedQueue() = 0;
113
115
virtual
void
handleChar( QKeyEvent* event,
RenderPanel
* panel ) = 0;
116
118
virtual
void
handleMouseEvent(
const
ViewportMouseEvent
& event ) = 0;
119
121
virtual
ToolManager
* getToolManager()
const
= 0;
122
124
virtual
ViewManager
* getViewManager()
const
= 0;
125
126
virtual
DisplayGroup
* getRootDisplayGroup()
const
= 0;
127
128
virtual
uint32_t getDefaultVisibilityBit()
const
= 0;
129
130
virtual
BitAllocator
* visibilityBits() = 0;
131
133
virtual
void
setStatus(
const
QString & message ) = 0;
134
135
public
Q_SLOTS:
138
virtual
void
queueRender() = 0;
139
};
140
141
}
// end namespace rviz
142
143
#endif // DISPLAY_CONTEXT_H
rviz::RenderPanel
Definition:
render_panel.h:75
rviz::WindowManagerInterface
Definition:
window_manager_interface.h:40
ros::CallbackQueueInterface
tf
rviz::ViewManager
Definition:
view_manager.h:52
rviz
Definition:
add_display_dialog.cpp:54
rviz::DisplayContext
Pure-virtual base class for objects which give Display subclasses context in which to work...
Definition:
display_context.h:76
rviz::FrameManager
Helper class for transforming data into Ogre's world frame (the fixed frame).
Definition:
frame_manager.h:63
rviz::DisplayGroup
A Display object which stores other Displays as children.
Definition:
display_group.h:47
rviz::SelectionManager
Definition:
selection_manager.h:80
ros
rviz::BitAllocator
Allocation manager for bit positions within a 32-bit word.
Definition:
bit_allocator.h:38
tf::TransformListener
Ogre
Definition:
camera_display.h:50
rviz::DisplayFactory
Definition:
display_factory.h:43
rviz::ViewportMouseEvent
Definition:
viewport_mouse_event.h:46
rviz::ToolManager
Definition:
tool_manager.h:47
rviz
Author(s): Dave Hershberger, David Gossow, Josh Faust
autogenerated on Wed Aug 28 2019 04:01:50