VR-Forces 5.0.1 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfActiveSonarSystem.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2005 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
14 #include <vlutil/vlList.h>
15 #include <vlpi/disEnums.h>
16 #include <matrix/vlVector.h>
18 
19 class DtLocalObject;
20 
21 namespace makVrf
22 {
23  class DtActiveSonarStateComponent;
24  struct DtActiveSonarBeamStateData;
25 }
26 
34 {
35 private:
39  DtVrfActiveSonarSystem& operator=(const DtVrfActiveSonarSystem& orig);
42 
43 public:
45 
46  virtual ~DtVrfActiveSonarSystem();
47 
49  virtual void tick();
50 
51  virtual bool init(bool publishSonar = false);
52 
55  virtual void setDataFromActiveSonarSystemEntry(const DtActiveSonarSystemEntry& entry);
56 
59  virtual DtU8 systemId() const;
60 
62  virtual void setSystemName(DtUnderwaterAcousticSystemName nameEnum);
63  virtual DtUnderwaterAcousticSystemName systemName();
64 
65  virtual void setSystemFunction(DtUnderwaterAcousticFunction functionEnum);
66  virtual DtUnderwaterAcousticFunction systemFunction();
67 
68  virtual void setMountLocation(const DtVector &location);
69  virtual DtVector mountLocation();
70 
73  virtual makVrf::DtActiveSonarBeamStateData* addBeam();
74 
76  virtual void removeBeam(DtU8 id);
77 
79  virtual void removeAllBeams();
80 
82  virtual void clearActiveSonarMode();
83 
86  virtual makVrf::DtActiveSonarBeamStateData* beam(DtU8 id = 0);
87 
89  virtual int numBeams();
90 
92  virtual std::vector<makVrf::DtActiveSonarBeamStateData>& beamList();
93 
94  virtual DtString activeSonarMode() const;
95 
97  virtual void setActiveSonarMode(DtString mode, const DtActiveSonarSystemEntry& entry);
98 
99  virtual const DtList* activeSonarModeList(const DtActiveSonarSystemEntry& entry);
100 
102  virtual void setEmitterName(const DtString&);
103  virtual const DtString& emitterName() const;
104 
105 protected:
110 };
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
The DtActiveSonarStateComponentList is a collection of emitter systems and the beams they represent...
Definition: activeSonarStateComponent.h:17
Instances of DtActiveSonarSystemEntry are used to specify some of the parameters in a DtEmitterCompon...
Definition: activeSonarSystemEntry.h:27
makVrf::DtActiveSonarStateComponent * myActiveSonarComponent
Definition: vrfActiveSonarSystem.h:109
DtLocalObject * myHostEntity
Definition: vrfActiveSonarSystem.h:106
1) Define the interface class that will be used to represent the next and curent frames. The UNDEFINED_ macros are convenience macros that will define methods that throw exceptions (until they are implemented)
Definition: activeSonarStateComponent.h:286
DtString myEmitterName
Definition: vrfActiveSonarSystem.h:108
DtString myActiveSonarMode
Definition: vrfActiveSonarSystem.h:107
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
const char int mode
Definition: ioapi.h:38
DtVrfActiveSonarSystem manages a VR-Link active sonar system publisher, and sets all the values assoc...
Definition: vrfActiveSonarSystem.h:33
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86

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)