All Classes Functions
IDrawsHUD.hpp
1 // ==============================================================
2 // ORBITER AUX LIBRARY: HUDDrawer
3 // http://sf.net/projects/enjomitchsorbit
4 // Part of the ORBITER SDK
5 //
6 // Allows modules (MFDs or plain modules) to draw on HUD.
7 // WARNING! This library is a HACK and it may stop working
8 // in future versions of Orbiter API if the library isn't
9 // maintained anymore. Note however that it's very easy to do so,
10 // by updating the VesselHooking class
11 //
12 // Copyright (C) 2008 Steve "agentgonzo" Arch - VESSEL virtual table hijacking
13 // Copyright (C) 2012-2013 Szymon "Enjo" Ender - created a framework
14 //
15 // All rights reserved
16 //
17 // HUDDrawer is free software: you can redistribute it and/or modify
18 // it under the terms of the GNU General Public License as published by
19 // the Free Software Foundation, either version 3 of the License, or
20 // (at your option) any later version.
21 //
22 // HUDDrawer is distributed in the hope that it will be useful,
23 // but WITHOUT ANY WARRANTY; without even the implied warranty of
24 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
25 // GNU General Public License for more details.
26 //
27 // You should have received a copy of the GNU General Public License
28 // along with HUDDrawer. If not, see <http://www.gnu.org/licenses/>.
29 // ==============================================================
30 
31 #ifndef IMFDDrawsHUD_HPP
32 #define IMFDDrawsHUD_HPP
33 
34 #include "Orbitersdk.h"
35 #include <string>
36 
37 namespace EnjoLib
38 {
40 
65 class IDrawsHUD
66 {
67 public:
69  IDrawsHUD();
71  virtual ~IDrawsHUD();
72 
74 
77  virtual bool ShouldDrawHUD() const = 0;
78 #ifndef ORB2006
79 
80  virtual void DrawHUD(int mode, const HUDPAINTSPEC *hps, oapi::Sketchpad * skp) = 0;
81 #endif
82 
83 
87  virtual void DrawHUD(int mode, const HUDPAINTSPEC *hps, HDC hDC) {};
88 
90 
93  virtual const char * GetModuleName() const = 0;
94 
95 protected:
96 private:
97 };
98 }
99 
100 #endif // IMFDDrawsHUD_HPP