VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
setDataManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
13 #include <map>
17 
19 class DtSimRadio;
20 class DtVrfObject;
21 
38 {
39 private:
45  DtSetDataManager& operator=(const DtSetDataManager& orig);
46 
47 public:
50 
52  virtual ~DtSetDataManager();
53 
55  virtual bool init();
56 
60  virtual bool init(DtSimRadio* pRadio);
67  virtual void addSetDataProcessorCallback(const DtSetMessageType& setDataType, DtMessageCallbackFcn fcn, void* usr);
68 
77  virtual void addSetDataNotifyCallback(const DtSetMessageType& setDataType, DtMessageCallbackFcn fcn, void* usr);
78 
81  virtual void removeSetDataCallback(const DtSetMessageType& setDataType, DtMessageCallbackFcn fcn,
82  void* usr);
83 
85  virtual bool executeSetDataRequest(const DtSetDataRequestMessage& setMsg);
86 
90  virtual std::vector<DtSetMessageType> capableSetDataTypes() const;
91 
93  virtual bool canExecuteSetData(const DtSetMessageType& setDataType) const;
94 
96  DtSimRadio* radio();
98  const DtSimRadio* radio() const;
100 protected:
103  virtual void registerRadioMessageCallbacks();
106  virtual void unRegisterRadioMessageCallbacks();
107 
109  static void setDataMessageCallback(DtSimMessage* msg, void* usr);
110 
112  virtual DtSetMessageType remapScriptId(const DtSetMessageType&) const;
113 
114 protected:
115  typedef std::pair<DtMessageCallbackFcn, void*> DtSetDataCallbackInfo;
116  typedef std::multimap<DtSetMessageType, DtSetDataCallbackInfo > DtSetDataCallbackMap;
119 
122 };
123 
125 inline const DtSimRadio* DtSetDataManager::radio() const {return myRadio;}
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
class DtSimRadio:
Definition: simRadio.h:25
DtVrfObject * myVrfObject
Definition: setDataManager.h:121
DtSetDataCallbackMap mySetDataNotifyCallbackMap
Definition: setDataManager.h:118
DtSimRadio * radio()
radio accessor
Definition: setDataManager.h:124
std::pair< DtMessageCallbackFcn, void * > DtSetDataCallbackInfo
Definition: setDataManager.h:115
DtSimRadio * myRadio
Definition: setDataManager.h:120
std::multimap< DtSetMessageType, DtSetDataCallbackInfo > DtSetDataCallbackMap
Definition: setDataManager.h:116
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
File: simMsg.h.
Definition: simMessage.h:35
DtSetDataCallbackMap mySetDataProcessorCallbackMap
Definition: setDataManager.h:117
Define constants for types of tasks, sets, admin messages, reports, and sim commands (all sent via ra...
void(* DtMessageCallbackFcn)(DtSimMessage *msg, void *usr)
Message callback function signature.
Definition: messageExecutive.h:21
This class manages the distribution of DtSetDataRequests within a single DtVrfObject.
Definition: setDataManager.h:37
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
A DtSetDataRequestMessage is a DtRadioMsg with a pointer to a setDataRequest.
Definition: setDataRequestMessage.h:23

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)