![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 00008 00011 00012 #pragma once 00013 00014 #include "vrfobjcore/singleTaskControllerComponent.h" 00015 #include "vrfmodel/vrfmodelDefines.h" 00016 00017 class DtSendTextTask; 00018 class DtVrfObjectMessage; 00019 class DtSendTaskMessageTask; 00020 class DtSendSetMessageTask; 00021 class DtVrfRadio; 00022 00027 class DT_DLL_vrfmodel DtSendRadioMessageController : public DtSingleTaskControllerComponent 00028 { 00029 public: 00031 DtSendRadioMessageController(const DtString & name, DtVrfObject* owner, 00032 DtSimManager * simManager, DtComponentDescriptor* desc = NULL, 00033 DtReaderWriterRegistry * parentRegistry = 0); 00034 00036 virtual ~DtSendRadioMessageController(); 00037 00038 private: 00039 DtSendRadioMessageController(const DtSendRadioMessageController& orig); 00040 DtSendRadioMessageController& operator=(const DtSendRadioMessageController& orig); 00041 00042 public: 00044 virtual DtString type() const; 00045 00047 virtual bool init(); 00048 00049 virtual void tick(); 00050 00052 static DtSimComponent* creator(const DtString & name, DtVrfObject* owner, 00053 DtSimManager * simManager, DtComponentDescriptor* desc, 00054 DtReaderWriterRegistry * parentRegistry); 00055 00056 protected: 00057 virtual void registerTaskMsgCallbacks(); 00058 00062 virtual DtVrfRadio* radioToUse(); 00063 00065 00066 static void sendTextTaskCallback(DtSimMessage* msg, void* usr); 00067 virtual void processSendTextTask(DtSimMessage* msg); 00069 00071 00072 static void sendTaskMessageTaskCallback(DtSimMessage* msg, void* usr); 00073 virtual void processSendTaskMessageTask(DtSimMessage* msg); 00075 00077 00078 static void sendSetMessageTaskCallback(DtSimMessage* msg, void* usr); 00079 virtual void processSendSetMessageTask(DtSimMessage* msg); 00081 00084 00085 static void textReportCallback(const DtVrfObjectMessage* msg, void* usr); 00086 virtual void processTextReport(const DtVrfObjectMessage* msg); 00088 00090 virtual void executeSendTextTask(const DtSendTextTask* task); 00091 00093 virtual void executeSendTaskMessageTask(const DtSendTaskMessageTask* task); 00094 00096 virtual void executeSendSetMessageTask(const DtSendSetMessageTask* task); 00097 00098 protected: 00099 };