VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOverlayResourceProvider.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
13 
15 
16 #include <map>
17 
18 namespace makVrv
19 {
20  class DtGLFontManager;
21  class DtGlRenderTexture;
22  class DtEffectManager;
23  class DtTextureInterface;
24 
29  {
30  public:
31 
33  virtual ~DtOverlayResourceProvider();
34 
36  DtOverlayResourceProvider() = delete;
37 
40  const DtOverlayResourceProvider& other) = delete;
41 
44  const DtOverlayResourceProvider&& other) = delete;
45 
47  DtOverlayResourceProvider& operator=(
48  const DtOverlayResourceProvider& other) = delete;
49 
51  DtOverlayResourceProvider& operator=(
52  const DtOverlayResourceProvider&& other) = delete;
53 
54  public:
55 
57  inline DtGLFontManager& fontManager() { return myFontManager; }
58 
60  inline DtEffectManager& effectManager() { return myEffectManager; }
61 
63  inline bool forceTextShaping(void) const { return myForceTextShaping; }
64 
66  virtual unsigned int currentSceneDepthTextureId() const = 0;
67 
69  virtual unsigned int currentSceneOcclusionTextureId() const = 0;
70 
72  virtual unsigned int texture1DId( DtTextureInterface* textureInterface) const = 0;
73  virtual unsigned int texture2DId( DtTextureInterface* textureInterface ) const = 0;
74 
78  virtual unsigned int getStippleTexture(const unsigned int stipplePattern[32]) = 0;
79 
83  virtual float computeStippleTileRateFromAltitude(double altitude, bool is2D) const;
84 
86  void addGroupRef(unsigned int group);
87 
89  void removeGroupRef(unsigned int group);
90 
92  unsigned int groupCount();
93 
94  protected:
95 
97  DtOverlayResourceProvider(DtGLFontManager& fontMan, DtEffectManager& effectMan, bool forceTextShaping);
98 
99  protected:
100 
103 
105 
106  typedef std::map<unsigned int, unsigned int> GroupReferenceMap;
108  };
109 }
bool myForceTextShaping
Definition: DtOverlayResourceProvider.h:104
GroupReferenceMap myGroups
Definition: DtOverlayResourceProvider.h:107
DtGLFontManager & fontManager()
Get the shared font manager for accessing fonts.
Definition: DtOverlayResourceProvider.h:57
std::map< unsigned int, unsigned int > GroupReferenceMap
Definition: DtOverlayResourceProvider.h:106
Interface for a texture. Used to pass in a texture to vrvGraphics.
Definition: DtTextureInterface.h:24
Manages instances of fonts, the font will be kept in memory unless the manager is cleared...
Definition: DtGLFontManager.h:26
DtEffectManager & effectManager()
Get the shared effects manager for accessing effects.
Definition: DtOverlayResourceProvider.h:60
The overlay resource provider class provides resources for overlay drawing classes.
Definition: DtOverlayResourceProvider.h:28
#define DT_DLL_VRVGRAPHICS
Contains DLL export macros.
Definition: vrvGraphics.h:19
The effect manager provides a way of creating and sharing effects.
Definition: DtEffectManager.h:18
DtEffectManager & myEffectManager
Definition: DtOverlayResourceProvider.h:102
Contains the DtGlTextureUtils class declaration.
DtGLFontManager & myFontManager
Definition: DtOverlayResourceProvider.h:101
bool forceTextShaping(void) const
Get whether to use harf buzz shaping or not.
Definition: DtOverlayResourceProvider.h:63

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)