VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtVrlinkEmitterBeamStateInterceptor.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2022 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #ifndef DT_PROTOCOL_NAMESPACE
13 #error Namespace Protocol Macro DT_PROTOCOL_NAMESPACE not defined.
14 #endif
15 
17 #include <vrvUtil/signalslib.h>
18 
19 #include <vl/emitterBeamRepository.h>
20 
21 #include <vrvCore/DtUniqueID.h>
22 
23 namespace makVrv
24 {
25 
26  namespace DT_PROTOCOL_NAMESPACE
27  {
28 
29  class DtVrlinkConnection;
30  class DtVrlinkEmitterSystemStateListener;
31 
38  {
39  public:
40 
43 
45  virtual DtVrlinkEmitterSystemStateListener* emitterStateListener();
46 
47  // @name DtEmitterBeamStateRepository functions
48  // @{
49 
50  virtual void setAzimuthCenter( DtFloat32 center );
51  virtual void setAzimuthSweep( DtFloat32 sweep );
52  virtual void setBeamFunction( DtBeamFunc func );
53  virtual void setBeamId( DtU8 id );
54  virtual void setBeamParameterIndex( DtU16 index );
55  virtual void setElevationCenter( DtFloat32 center );
56  virtual void setElevationSweep( DtFloat32 sweep );
57 
59 #if DtHLA
60  virtual void setEmittingSystemId( const DtGlobalObjectDesignator& id );
61 #else
62  virtual void setEmittingSystemId( int id );
67 #endif
68 
69  virtual void setERP( DtFloat32 erp );
70  virtual void setEntityId( DtEntityIdentifier& id );
71  virtual void setEventId( DtEventId& id );
72  virtual void setFrequency( DtFloat32 freq );
73  virtual void setFrequencyRange( DtFloat32 freq );
74  virtual void setPRF( DtFloat32 prf );
75  virtual void setPulseWidth( DtFloat32 width );
76  virtual void setSweepSync( DtFloat32 sync );
77  virtual void setBeamType( DtBeamType flag );
78 
81 
82  virtual void setJammingModeSequence( DtU32 sequence );
83  virtual void setHighDensity( bool val );
84 
85  // @}
86 
87  virtual void setUniqueId( DtUniqueID id );
88  virtual DtUniqueID uniqueId();
89 
90  boost::signalslib::signal<void (DtEmitterBeamRepository*)> signal_destroyed;
91 
92  private:
93 
97 
101 
103  virtual DtStateRepository* clone( bool copy = false ) const;
104 
105  protected:
106 
108 
112 
113  protected:
114 
117  };
118 
122  : public DtVirtualBaseClass
123  {
124  public:
125 
128 
131 
134 
135  protected:
136 
139 
140  };
141 
142  }
143 }
Virtual base class. Allows for RTTI and proper virtual destruction. Used by Creators, Factories, Providers, Assemblers and User Interfaces.
Definition: DtVirtualBaseClass.h:19
#define DL_DLL_IGCONVRLINK
Definition: dllExport.h:26
#define DT_PROTOCOL_NAMESPACE
Contains DLL export macros.
Definition: vrfDis.h:17
Contains makVrv::DtVirtualBaseClass class.
float DtFloat32
Definition: vrvControlStructTypes.h:35
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
Contains makVrv::DtUniqueID type.

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)