VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtTritonRotorWashModelInstance.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 
12 #include <vrvTriton/vrvTriton.h>
17 
18 namespace Triton
19 {
20  class RotorWash;
21 }
22 
23 namespace makVrv
24 {
25  class DtDe;
26 
35  {
36  public:
39 
42 
43  public:
46 
49 
51  DtTritonRotorWashModelInstance &operator=(const DtTritonRotorWashModelInstance &other) = delete;
52 
53  public:
54 
56 
57 
59  virtual void setRotorDiameter(double diameter) override;
63  virtual double rotorDiameter() const override;
65 
67  virtual void setRotorWindSpeed(double speed) override;
71  virtual double rotorWindSpeed() const override;
73 
75  virtual void setDefaultRotorDiameter(double diameter) override;
79  virtual double defaultRotorDiameter() const override;
81 
83  virtual void setDefaultRotorWindSpeed(double speed) override;
87  virtual double defaultRotorWindSpeed() const override;
89 
91  virtual void setPosition(const DtVector& pos) override;
93  virtual DtVector position();
95 
97  virtual void setRotorWashDir(const DtVector& dir) override;
99  virtual DtVector rotorWashDir();
101 
104  virtual void setIsOverWater(bool overWater, bool visible) override;
105 
107  virtual void setVisible(bool isVisible);
108 
110  virtual void update() override;
111 
113  virtual void start() override;
114 
116  virtual void stop() override;
117 
119 
122  bool contributesToBound() const;
123 
124  protected:
126  Triton::RotorWash* rotorWashGenerator();
127 
129  virtual void slot_tritonAboutToBeDeleted();
130 
131  protected:
133  Triton::RotorWash* myRotorWashGenerator;
134 
139  DtVector myPosition;
140  DtVector myRotorWashDir;
142  };
143 
145 
146  template <>
147  inline const char* modelInstanceClassName<DtTritonRotorWashModelInstance>(void) { return "DtTritonRotorWashModelInstance"; }
148 
149  template <>
150  inline const char* modelInstanceObjectClass<DtTritonRotorWashModelInstance>(void) { return "DtTritonRotorWashModel"; }
151 }
DtTemplatedModelInstanceCreator< DtTritonRotorWashModelInstance > DtTritonRotorWashModelInstanceCreator
Definition: DtTritonRotorWashModelInstance.h:144
The base class for all model instances.
Definition: DtModelInstance.h:41
DtVector myPosition
Definition: DtTritonRotorWashModelInstance.h:139
double myDefaultRotorDiameter
Definition: DtTritonRotorWashModelInstance.h:137
Definition: DtTemplatedModelInstanceCreator.h:32
double myRotorWindSpeed
Definition: DtTritonRotorWashModelInstance.h:136
Triton::RotorWash * myRotorWashGenerator
Definition: DtTritonRotorWashModelInstance.h:133
Contains DLL export macros.
Contains makVrv::DtRotorWashModelInstanceInterface class.
#define DT_DLL_VRVTRITON
Definition: vrvTriton.h:19
double myLastUpdateTime
Definition: DtTritonRotorWashModelInstance.h:141
Contains the DtTemplatedModelInstanceCreator class declaration.
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
double myRotorDiameter
Definition: DtTritonRotorWashModelInstance.h:135
Contains makVrv::DtModelInstance class.
Base class to provide boost signal/slot management.
const char * modelInstanceObjectClass< DtTritonRotorWashModelInstance >(void)
Definition: DtTritonRotorWashModelInstance.h:150
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:76
Implementation of a Triton rotorWash model.
Definition: DtTritonRotorWashModelInstance.h:33
DtSignalConnectionManager mySignals
Definition: DtTritonRotorWashModelInstance.h:132
DtRotorWashModelInstanceInterface provides the interface of a generic rotorWash effect There are spec...
Definition: DtRotorWashModelInstanceInterface.h:25
double myDefaultRotorWindSpeed
Definition: DtTritonRotorWashModelInstance.h:138
const char * modelInstanceClassName< DtTritonRotorWashModelInstance >(void)
Definition: DtTritonRotorWashModelInstance.h:147
DtVector myRotorWashDir
Definition: DtTritonRotorWashModelInstance.h:140

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)