![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2008 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtQueuedManager.h,v $ $Revision: 1.1 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00011 00013 00014 #pragma once 00015 00016 #include <vrfGuiCore/vrfGuiCore.h> 00017 00018 #include <vrvUtil/DtVirtualBaseClass.h> 00019 #include <vrvUtil/signalslib.h> 00020 #include <vrvCore/DtDe.h> 00021 #include <vrvUtil/DtLockedBufferedQueue.h> 00022 00023 namespace makVrf 00024 { 00026 class DT_DLL_VRFGUICORE DtQueuedManager : public makVrv::DtVirtualBaseClass 00027 { 00028 public: 00029 DtQueuedManager(makVrv::DtDe&); 00030 virtual ~DtQueuedManager(); 00031 00032 public: 00033 virtual void tick(); 00034 virtual void setActivated(bool); 00035 00036 protected: 00037 typedef makVrv::DtLockedBufferedQueue<boost::function<void ()> > DtVrfBackendManagerCallQueue; 00038 typedef std::vector<boost::function<void ()> > DtVrfBackendManagerCallList; 00039 00041 virtual void queueSimulationFunction(const boost::function<void ()>& function); 00042 00044 virtual void runFunctionQueue(DtVrfBackendManagerCallQueue& queue); 00045 00046 protected: 00047 makVrv::DtDe& myDe; 00048 DtVrfBackendManagerCallQueue myFunctionCallQueue; 00049 bool myActivated; 00050 }; 00051 }