MAK RTIspy API Documentation for HLA 1.3
assistantMsgQueue.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2008 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: assistantMsgQueue.h,v $ $Revision: 1.3 $ $State: Exp $
00007 *******************************************************************************/
00008 
00009 #ifndef assistantMsgQueue_H_
00010 #define assistantMsgQueue_H_
00011 
00015 
00016 #include <vlutil/vlList.h>
00017 
00018 #include "assistantMsgCbMgr.h"
00019 #include "assistantMsg.h"
00020 
00027 class DT_DLL_ASSISTANT DtAssistantMsgQueue
00028 {
00029 
00030 public:
00031 
00033    DtAssistantMsgQueue();
00034 
00036    virtual ~DtAssistantMsgQueue();
00037 
00039    virtual void addMsgCallback(DtAssistantMsgKind msgKind, DtAssistantMsgCbMgr::DtCallbackFcn fcn,
00040       void *usr );
00041 
00043    virtual void removeMsgCallback(DtAssistantMsgKind msgKind, DtAssistantMsgCbMgr::DtCallbackFcn fcn,
00044       void *usr );
00045 
00047    virtual void addMsg( const DtAssistantMsg& msg, int compId );
00048 
00051    virtual void beginProcessMsg();
00052 
00055    virtual void finishProcessMsg();
00056 
00058    virtual const DtAssistantMsg* currMsg() const;
00059 
00062    virtual int currentCompId() const;
00063 
00064 private:
00065 
00067    DtAssistantMsgQueue( const DtAssistantMsgQueue& );
00068 
00070    DtAssistantMsgQueue& operator=(const DtAssistantMsgQueue& );
00071 
00072 protected:
00073 
00074    struct DtAssistantMsgQueueItem
00075    {
00076       DtAssistantMsg* msg;
00077       int compId;
00078    };
00079 
00081    DtList myMsgList;
00082 
00084    DtAssistantMsgQueueItem* myCurrMsgItem;
00085 
00087    DtAssistantMsgCbMgr myMsgCbMgr;
00088 };
00089 
00090 #endif

Document ID: Generated on Thu Jun 14 14:15:04 EDT 2012 from SVN revision 116116
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)