VR-Link API Documentation for HLA 1516
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
iff.h
Go to the documentation of this file.
1 /*********************************************************************************
2 ** Copyright (c) 2018 MAK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************************/
5 
6 #pragma once
7 
8 
9 #include "strategies/export.h"
13 #include "messages/iffDiscovery.h"
14 #include "messages/iffState.h"
15 #include "messages/iffRemoved.h"
16 
17 #include <string>
18 #include <map>
19 
20 #include <matrix/vlVector.h>
21 
22 class DtMessage;
23 class DtManagedInterface;
24 class DtReflected;
25 class DtReflectedIff;
26 class DtReflectedIffList;
27 class DtIffPublisher;
29 
30 
32 {
33 public:
34  virtual ~DtIffStrategy();
35 
36  std::string name();
37  static std::string theName();
38 
39  virtual bool init();
40  virtual void tick();
41  virtual void shutdown();
42 
43  static DtLinkStrategy* create(DtManagedInterface* gl);
44 
45 protected:
47 
48  void handleCSharpIffDiscovered(DtMessage* msg);
49  static void vrlIffDiscovered(DtReflectedIff* iff, void* usr);
50  void handleVrlIffDiscovered(DtReflectedIff* iff);
51 
52  void handleCSharpIffState(DtMessage* msg);
53  static void vrlIffState(DtReflectedIff* iff, void* usr);
54  void handleVrlIffState(DtReflectedIff* iff);
55 
56  void handleCSharpIffRemoved(DtMessage* msg);
57  static void vrlIffRemoved(DtReflectedIff* iff, void* usr);
58  void handleVrlIffRemoved(DtReflectedIff* iff);
59 
62 
63  static std::string theStrategyName;
64 
68 };
DtMessageDelegate * myIffStateHandler
Definition: iff.h:66
class DtIffPublisher:
Definition: iffPublisherHLA.h:24
class DtReflectedIff:
Definition: reflectedIffHLA.h:32
DtReflectedIffList * myReflectedIffs
Definition: iff.h:60
Defines a protocol independent repository of attributes for IFF objects.
Definition: iffStateRepository.h:57
#define MANAGEDINTERFACE_MODULE_DLL
Definition: export.h:34
This is the DtMessage class.
Definition: message.h:20
This file declares DtVector and DtVector32.
DtMessageDelegate * myIffDiscoveredHandler
Definition: iff.h:65
The DtManagedInterface Class is a singleton that is used to manage the message flow between C# and th...
Definition: managedInterface.h:49
DtPublisherList< DtIffPublisher > * myIffPubs
Definition: iff.h:61
DtMessageDelegate * myIffRemovedHandler
Definition: iff.h:67
An instance of this class manages the list of &quot;IFF&quot; objects that are simulated remotely, and reflected to us by the RTI.
Definition: reflectedIffListHLA.h:28
Defines the DtManagedInterface Singleton object that manages the message flow between C# and the rest...
Defines a template for maintaining a list of VR-Link Publisher objects.
Delegate template for binding static or member functions for callback at later time The return type a...
Definition: delegate.h:69
Definition: iff.h:31
static std::string theStrategyName
Definition: iff.h:63

Document ID: Generated on Tue Aug 10 00:12:31 EDT 2021 from SVN revision 232765
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)