18#include <vrvOsg/DtCameraNode.h>
22#include <osg/Texture2D>
39class DtChannelConfiguration;
45class DtModelDefinition;
103 ,
ownshipId(DtEntityIdentifier::nullId())
228 :
ownshipId(DtEntityIdentifier::nullId())
248 using CameraMap = std::map<std::string, DtCameraStruct*>;
271 :
osg::Camera::DrawCallback()
283 :
osg::Camera::DrawCallback()
296 :
osg::Camera::DrawCallback(cb, co)
321 virtual void operator()(
const osg::Camera& )
const override {}
Entity resolution and mapping system.
Definition entityResolver.h:52
Table-based access to Lua state for configuration data.
Definition initializer.h:38
Draw callback that sets the correct texture index for instrument panel displays.
Definition instrumentPanelManagerStructs.h:262
DtTextureIndexDrawCallback & operator=(const DtTextureIndexDrawCallback &orig)
Assignment operator (deleted)
DtTextureIndexDrawCallback(const DtTextureIndexDrawCallback &)
Copy constructor (deleted)
DtTextureIndexDrawCallback()
Default constructor.
Definition instrumentPanelManagerStructs.h:270
META_Object(osg, DtTextureIndexDrawCallback)
OSG meta object declaration for proper type handling.
virtual void operator()(const osg::Camera &) const override
Backwards compatibility functor method.
Definition instrumentPanelManagerStructs.h:321
makVre::DtCameraStruct * myCameraStruct
Pointer to the camera structure this callback is associated with.
Definition instrumentPanelManagerStructs.h:325
DtTextureIndexDrawCallback(const DrawCallback &cb, const osg::CopyOp &co)
Copy constructor.
Definition instrumentPanelManagerStructs.h:295
virtual void operator()(osg::RenderInfo &renderInfo) const override
Functor method called by the rendering thread.
Definition instrumentPanelManagerStructs.h:312
DtTextureIndexDrawCallback(makVre::DtCameraStruct *cs)
Constructor with camera structure.
Definition instrumentPanelManagerStructs.h:282
virtual ~DtTextureIndexDrawCallback() override
Destructor.
Definition instrumentPanelManagerStructs.h:304
Definition windowOperation.h:32
Defines export macros for the VR-Engage Player Station library.
#define PLAYERSTATION_DLL
Definition export.h:24
Include export definitions for this library.
Definition glsVreMessageUtil.h:49
DtCameraType
Enumeration of camera types used in instrument panels.
Definition instrumentPanelManagerStructs.h:77
@ Uninitialized
Camera is not yet initialized.
Definition instrumentPanelManagerStructs.h:78
@ PlanView
Top-down map-like view camera.
Definition instrumentPanelManagerStructs.h:81
@ Panel
Instrument panel-specific camera.
Definition instrumentPanelManagerStructs.h:82
@ Gimbal
Camera with gimbal-like movement behavior.
Definition instrumentPanelManagerStructs.h:79
@ Stealth
Camera that follows but doesn't affect the scene.
Definition instrumentPanelManagerStructs.h:80
Definition appLauncherComponent.h:28
Definition DtSceneObjectMimicUpdater.h:31
makVrv::DtDe * de()
Gets the display element pointer used by the plugin.
Structure that manages camera and render-to-texture for instrument panels.
Definition instrumentPanelManagerStructs.h:93
makVre::DtTextureIndexDrawCallback * postDrawCallback
Callback executed after drawing to handle post-render operations.
Definition instrumentPanelManagerStructs.h:209
int textureIndex
Index of the texture in the texture array.
Definition instrumentPanelManagerStructs.h:173
makVrv::DtDe & myDe
Reference to the display engine.
Definition instrumentPanelManagerStructs.h:212
void viewportChanged(int x, int y, int w, int h)
Handles viewport size or position changes.
makVrv::DtCameraNode * overlayCamera
Camera node used for rendering overlays on top of the main view.
Definition instrumentPanelManagerStructs.h:191
std::string channelName
Name of the channel this camera renders to.
Definition instrumentPanelManagerStructs.h:165
const makVrv::DtModelDefinition * modelDef
Pointer to model definition associated with this camera.
Definition instrumentPanelManagerStructs.h:200
std::string windowName
Name of the window this camera renders to.
Definition instrumentPanelManagerStructs.h:159
int textureOffsetX
X-coordinate offset within the texture.
Definition instrumentPanelManagerStructs.h:176
int textureWidth
Width of the render texture in pixels.
Definition instrumentPanelManagerStructs.h:182
int useCount
Reference count for this camera.
Definition instrumentPanelManagerStructs.h:170
std::string rttReplaces
Name of the texture this RTT replaces in the model.
Definition instrumentPanelManagerStructs.h:197
makVrv::DtCameraNode * rttCamera
Camera node used for render-to-texture operations.
Definition instrumentPanelManagerStructs.h:188
void drawCallback(osg::RenderInfo &renderInfo)
Callback executed during the rendering process.
void renderTextureChanged()
Handles changes to the render texture.
int textureHeight
Height of the render texture in pixels.
Definition instrumentPanelManagerStructs.h:185
DtCameraType cameraType
Type of camera (Gimbal, Stealth, PlanView, Panel)
Definition instrumentPanelManagerStructs.h:156
std::string observerName
Name of the observer associated with this camera.
Definition instrumentPanelManagerStructs.h:162
int textureOffsetY
Y-coordinate offset within the texture.
Definition instrumentPanelManagerStructs.h:179
DtCameraStruct(makVrv::DtDe &de)
Constructor.
Definition instrumentPanelManagerStructs.h:100
DtEntityIdentifier ownshipId
Entity identifier of the ownship associated with this camera.
Definition instrumentPanelManagerStructs.h:150
osg::ref_ptr< osg::Texture2D > outputTexture
Reference to the output texture where the camera renders.
Definition instrumentPanelManagerStructs.h:194
bool mipRtt
Flag indicating whether to generate mipmaps for the render texture.
Definition instrumentPanelManagerStructs.h:203
std::string name
Name of this camera.
Definition instrumentPanelManagerStructs.h:153
bool rttIsHud
Flag indicating whether this render texture is for a HUD display.
Definition instrumentPanelManagerStructs.h:206
DtEntityIdentifier panelHostId
Entity identifier of the host entity containing these panels.
Definition instrumentPanelManagerStructs.h:239
DtEntityIdentifier ownshipId
Entity identifier of the ownship associated with these panels.
Definition instrumentPanelManagerStructs.h:236
DtPanelStruct()
Constructor.
Definition instrumentPanelManagerStructs.h:227
std::map< std::string, DtCameraStruct * > CameraMap
Type definition for mapping camera names to camera structures.
Definition instrumentPanelManagerStructs.h:248
std::map< std::string, std::string > WindowNameModelDefMap
Type definition for mapping window names to model definition names.
Definition instrumentPanelManagerStructs.h:242
WindowNameModelDefMap windows
Map of window names to their associated model definition names.
Definition instrumentPanelManagerStructs.h:245
CameraMap cameras
Map of camera names to their associated camera structures.
Definition instrumentPanelManagerStructs.h:251