VR-Forces 4.0.4 Class Documentation
include/vrfmodel/disaggregatedWaitController.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 1999 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: disaggregatedWaitController.h,v $ $Revision: 1.1 $ $State: Exp $
00007 *******************************************************************************/
00008 
00011 
00014 
00015 
00016 #ifndef disaggregatedWaitController_H_
00017 #define disaggregatedWaitController_H_
00018 
00019 #include "vrfmodel/waitCntlr.h"
00020 #include "vrfutil/vlClock.h"
00021 #include "vrfobjcore/simCmdRadio.h"
00022 
00023 class DtString;
00024 class DtSimManager;
00025 class DtTaskMessage;
00026 class DtSimMessage;
00027 class DtWaitingPSR;
00028 
00038 #include "vrfmodel/vrfmodelDefines.h"
00039 class DT_DLL_vrfmodel DtDisaggregatedWaitController : public DtWaitController
00040 {
00041 
00042 public:
00043 
00046    DtDisaggregatedWaitController(const DtString& name, 
00047       DtVrfObject* owner,
00048       DtSimManager* simManager, 
00049       DtComponentDescriptor* desc = 0,
00050       DtReaderWriterRegistry* parentRegistry = 0);
00051 
00053    virtual ~DtDisaggregatedWaitController();
00054 
00057    virtual DtString type() const;
00058 
00059    virtual bool init();
00060 
00062    virtual void tick();
00063 
00065    virtual void registerTaskMsgCallbacks();
00066 
00070 
00073    virtual void processWaitTask(DtSimMessage * msg, DtSimTaskStatePtr taskState);
00074    virtual void processWaitDurationTask(DtSimMessage * msg, DtSimTaskStatePtr taskState);
00075    virtual void processWaitElapsedTask(DtSimMessage * msg, DtSimTaskStatePtr taskState);
00077 
00081    virtual void processTaskComplete(DtSimMessage * msg);
00082 
00083 public:
00084 
00085    static void taskCompleteCallback(DtSimMessage * msg, void * usr);
00086 
00090    static DtSimComponent * creator(const DtString& name, 
00091       DtVrfObject* owner,
00092       DtSimManager* simManager, 
00093       DtComponentDescriptor* desc = 0,
00094       DtReaderWriterRegistry* parentRegistry = 0);
00095 
00096 protected:
00099    DtDisaggregatedWaitController();
00100 
00102    DtDisaggregatedWaitController(const DtDisaggregatedWaitController & orig);
00103 
00105    const DtDisaggregatedWaitController & operator=(const DtDisaggregatedWaitController & orig);
00106   
00108    virtual void forwardToSubordinates( const DtSimTask* task);
00109 
00110 protected:
00111 
00112    DtSimCommandRadio* myCommandRadio;
00113 };
00114 
00115 #endif
00116 
00117 
00118 
00119 

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)