VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtEntityAudializer.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvAudio/vrvAudio.h>
15 
16 namespace makVrv
17 {
18  class DtSoundModelAgent;
19  class DtEntitySoundUpdaterAgent;
20 
26  {
27  public:
29  DtEntityAudializer(DtBaseConnection& simulation, DtStateListener& listener, int modelSet);
30 
32  DtEntityAudializer(DtBaseConnection& simulation, DtStateListener& listener,
33  DtSceneObjectAgent* sceneObject, int modelSet);
34 
36  virtual ~DtEntityAudializer();
37 
39  DtEntityAudializer() = delete;
40 
42  DtEntityAudializer(const DtEntityAudializer&) = delete;
43 
45  DtEntityAudializer& operator=(const DtEntityAudializer&) = delete;
46 
47  public:
48 
50  virtual void initialize() override;
51 
54  virtual void createModelAgents();
55 
57  virtual void destroyModelAgents();
58 
61  virtual const DtStateVisualizer::TypeInfo& typeInfo() const;
62 
64  static const DtStateVisualizer::TypeInfo& theTypeInfo();
65 
67  virtual void setModelDefinitionForAgents();
68 
71  virtual void setPowerPlantOn(bool on);
72 
74  virtual void setDamageState(EntityStateListener::DamageState damageState);
75 
78  virtual bool destroyed() const;
79 
80  virtual void setEngineRunning(bool running);
81 
83  virtual void play();
84 
86  virtual void stop();
87 
89  virtual void setIs3d(bool is3d);
90 
92  virtual bool is3d();
93 
95  virtual void setDecibel(float decibel);
96 
98  virtual float decibel();
99 
101  DtEntityStateListener& entityStateListener();
102  const DtEntityStateListener& entityStateListener() const;
103  protected:
106  virtual void setInitialValuesFromVisualizerDefinition() override;
107 
110  virtual void connectToListenerSignals() override;
111  protected:
112  DtSoundModelAgent* mySoundModelAgent;
113  DtEntitySoundUpdaterAgent* myEntitySoundUpdaterAgent;
114  bool myIs3d;
115  float myDecibel;
118 
119  protected:
122  };
123 
128 }
bool myIs3d
Definition: DtEntityAudializer.h:114
DamageState
Definition: DtEntityStateListener.h:59
Definition: DtStateVisualizer.h:305
DtEntityStateListener * myEntityListener
Same as myListener, but casted for convenience.
Definition: DtEntityAudializer.h:121
Contains the DLL export macro for vrvAudio classes.
DtEntitySoundUpdaterAgent * myEntitySoundUpdaterAgent
Definition: DtEntityAudializer.h:113
DtSoundModelAgent * mySoundModelAgent
Definition: DtEntityAudializer.h:112
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:39
EntityStateListener::DamageState myDamageState
Definition: DtEntityAudializer.h:116
Contains makVrv:DtEntityStateListener class.
DtEntityAudializer manages the sound for an entity. The sound will update itself according to the ent...
Definition: DtEntityAudializer.h:25
Contains makVrv:DtStateVisualizer class.
bool myPowerPlantOn
Definition: DtEntityAudializer.h:117
DtStateVisualizerCreatorTemplate< DtEntityAudializer > DtEntityAudializerCreator
Creator that will be registered with the state visualizer factory to create this class.
Definition: DtEntityAudializer.h:127
float myDecibel
Definition: DtEntityAudializer.h:115
The DtStateVisualizer is an abstract class. Developers derive from this to create logic that &quot;directs...
Definition: DtStateVisualizer.h:32
#define DT_DLL_VRVAUDIO
Definition: vrvAudio.h:20
The DtStateListener is an abstract class. Subclasses implement functionality that will allow data to ...
Definition: DtStateListener.h:25
Struct to hold metadata about each functional visualizer type This allows users of the factory to get...
Definition: DtStateVisualizer.h:56
DtEntityStateListener.
Definition: DtEntityStateListener.h:132

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)