Gazebo Rendering

API Reference

9.0.0
Ogre2NativeWindow.hh
Go to the documentation of this file.
1/*
2 * Copyright (C) 2022 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_OGRE2_OGRE2NATIVEWINDOW_HH_
18#define GZ_RENDERING_OGRE2_OGRE2NATIVEWINDOW_HH_
19
21#include "gz/rendering/ogre2/Export.hh"
22
23#include <memory>
24
25namespace Ogre
26{
27 class Window;
28}
29
30namespace gz
31{
32 namespace rendering
33 {
34 inline namespace GZ_RENDERING_VERSION_NAMESPACE {
35
36 class Ogre2NativeWindowPrivate;
37
39 class GZ_RENDERING_OGRE2_VISIBLE Ogre2NativeWindow :
40 public virtual BaseNativeWindow
41 {
43 private: Ogre2NativeWindow(Ogre::Window *_window);
44
46 public: virtual ~Ogre2NativeWindow();
47
48 // Documentation Inherited.
49 public: virtual void NotifyFocused(bool _focused) override;
50
51 // Documentation Inherited.
52 public: virtual void NotifyVisible(bool _visible) override;
53
54 // Documentation Inherited.
55 public: virtual void NotifyWindowMovedOrResized() override;
56
57 // Documentation Inherited.
58 public: virtual void RequestResolution(
59 uint32_t _width, uint32_t _height) override;
60
61 // Documentation Inherited.
62 public: virtual void Draw(CameraPtr _camera) override;
63
66
68 private: friend class Ogre2RenderEngine;
69 };
70 }
71 }
72}
73#endif