VR-Forces 4.6 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 
97  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;}

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)