VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtRotorWashModel.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2020 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvCore/vrvCore.h>
13 #include <vrvCore/DtModel.h>
15 
16 namespace makVrv
17 {
18  class DtSceneObject;
19  class DtRotorWashModelInstanceInterface;
20 
24  {
25  public:
26  friend class DtRotorWashDistributor;
27 
30 
32  virtual ~DtRotorWashModel();
33 
35  virtual const std::string& className() const;
36 
39  virtual void setModelDefinition(const std::string& def);
40 
42  virtual void setRotorDiameter(double diameter);
44  virtual double rotorDiameter() const;
46 
48  virtual void setDefaultRotorDiameter(double diameter);
52  virtual double defaultRotorDiameter() const;
54 
56  virtual void setRotorWindSpeed(double speed);
58  virtual double rotorWindSpeed() const;
60 
62  virtual void setDefaultRotorWindSpeed(double speed);
66  virtual double defaultRotorWindSpeed() const;
68 
71  virtual void addToScene(const DtUniqueID& id, int modelSet,
72  int visualizerType);
73 
76  virtual void removeFromScene();
77 
79  virtual void setIsSupportModel(bool isSupport);
80 
82  virtual void start();
83 
85  virtual void stop();
86 
88  virtual void setOffsetPos(const DtVector& offset);
89 
95  virtual void setVisible(bool isVisible);
96 
98  virtual bool isStopped();
99 
103  virtual void setIntensity(const float intensity);
104 
107  virtual void setRotorWashDir(const DtVector& dir);
108 
110  virtual void update();
111 
113  virtual void setHelicopterID(DtUniqueID helicopterID);
115  virtual DtUniqueID helicopterID();
117 
118  protected:
120  virtual DtRotorWashModelInstanceInterface* rotorWashModelInstanceInterface();
121 
124  virtual const DtRotorWashModelInstanceInterface* rotorWashModelInstanceInterface() const;
125 
127  virtual DtVector currentHeloPosition() const;
128 
130  virtual DtTaitBryan currentHeloOrientation() const;
131 
133  virtual DtSceneObject* sceneObject() const;
134 
138  virtual void calcRotorWashSystemDefaults();
139 
141  virtual void setIsOverWater(bool overWater);
142 
145  virtual bool anyObserverMimic();
146 
150  virtual void slot_oceanAddedToScene();
151 
152  protected:
156  };
157 }
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Contains makVrv::DtModel class.
Base class to provide boost signal/slot management.
DtSignalConnectionManager myConnections
Definition: DtRotorWashModel.h:153
A DtSceneObject represents an object that can be positioned in the scene by (possibly) attaching it t...
Definition: DtSceneObject.h:42
bool myRotorWashStopped
Definition: DtRotorWashModel.h:154
A model which owns a single model instance. A DtModel is a managing container for a single DtModelIns...
Definition: DtModel.h:55
The interface for a model of a rotorWash.
Definition: DtRotorWashModel.h:23
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:70
voidpf uLong offset
Definition: ioapi.h:42
DtRotorWashModelInstanceInterface provides the interface of a generic rotorWash effect There are spec...
Definition: DtRotorWashModelInstanceInterface.h:25
The DtRotorWashDistributor is used to update the currently active.
Definition: DtRotorWashDistributor.h:31
DtUniqueID myHelicopterID
Definition: DtRotorWashModel.h:155
Contains DLL export macros.

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)