VR-Forces 4.0.4 Class Documentation
include/vrfobjcore/setDataManager.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2006 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: setDataManager.h,v $ $Revision: 1.3 $ $State: Exp $
00007 *******************************************************************************/
00008 
00011 
00013 
00014 #ifndef setDataManager_h
00015 #define setDataManager_h
00016 
00017 #include <map>
00018 #include "vrfobjcore/vrfobjcoreDefines.h"
00019 #include "vrfmsgs/msgExec.h"
00020 
00021 class DtSetDataRequestMessage;
00022 class DtSimBaseRadio;
00023 
00039 class DT_DLL_vrfobjcore DtSetDataManager
00040 {
00041 private:
00043    DtSetDataManager();
00045    DtSetDataManager(const DtSetDataManager& orig);
00047    DtSetDataManager& operator=(const DtSetDataManager& orig);
00048 
00049 public:
00051    DtSetDataManager(DtSimBaseRadio* radio);
00052 
00054    virtual ~DtSetDataManager();
00055 
00057    virtual bool init();
00058 
00062    virtual bool init(DtSimBaseRadio* pRadio);
00069    virtual void addSetDataProcessorCallback(int setDataType, DtMessageCallbackFcn fcn, void* usr);
00070 
00079    virtual void addSetDataNotifyCallback(int setDataType, DtMessageCallbackFcn fcn, void* usr);
00080 
00083    virtual void removeSetDataCallback(int setDataType, DtMessageCallbackFcn fcn, 
00084       void* usr);
00085 
00087    virtual void executeSetDataRequest(const DtSetDataRequestMessage& setMsg);
00088 
00092    virtual std::vector<int> capableSetDataTypes() const;
00093 
00095 
00096    DtSimBaseRadio* radio();
00097    const DtSimBaseRadio* radio() const;
00099 protected:
00102    virtual void registerRadioMessageCallbacks();
00105    virtual void unRegisterRadioMessageCallbacks();
00106 
00108    static void setDataMessageCallback(DtSimMessage* msg, void* usr);
00109 
00110 protected:
00111    typedef std::pair<DtMessageCallbackFcn, void*> DtSetDataCallbackInfo;
00112    typedef std::multimap<int, DtSetDataCallbackInfo > DtSetDataCallbackMap;
00113    DtSetDataCallbackMap mySetDataProcessorCallbackMap;
00114    DtSetDataCallbackMap mySetDataNotifyCallbackMap;
00115 
00116    DtSimBaseRadio* myRadio;
00117 };
00118 
00119 inline DtSimBaseRadio* DtSetDataManager::radio() {return myRadio;}
00120 inline const DtSimBaseRadio* DtSetDataManager::radio() const {return myRadio;}
00121 #endif
00122 

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)