![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2009 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtVrfCheckpointManager.h,v $ $Revision: 1.12 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00011 00013 00014 #pragma once 00015 00016 #include <vrfGuiCoreQt/vrfGuiCoreQt.h> 00017 00018 #include <vrvUtil/DtVirtualBaseClass.h> 00019 #include <vrvUtil/signalslib.h> 00020 #include <vrvCore/DtDe.h> 00021 00022 #include <QtGui/QWidget> 00023 00024 class QLabel; 00025 00026 namespace makVrf 00027 { 00028 class DtPeriodicCheckpointWidget; 00029 class DtDeleteCheckpointsDialog; 00030 00032 class DT_DLL_VRFGUICOREQT DtVrfCheckpointManager : public makVrv::DtVirtualBaseClass 00033 { 00034 public: 00035 00036 public: 00037 DtVrfCheckpointManager(makVrv::DtDe&); 00038 virtual ~DtVrfCheckpointManager(); 00039 00041 static DtVrfCheckpointManager& instance(makVrv::DtDe& de); 00042 00044 virtual void deleteCheckpoints(); 00045 00048 virtual void schedulePeriodicCheckpoints(); 00049 00050 virtual void startTimer(); 00051 virtual void stopTimer(); 00052 00053 public: 00055 virtual void schedulePeriodCheckpointing(bool enabled, bool useSimTime, int interval); 00056 00057 public: 00059 boost::signal<void ()> signal_aboutToCheckpoint; 00060 00061 protected: 00062 virtual DtDeleteCheckpointsDialog* createDeleteCheckpointsDialog(QWidget* p, const Qt::WindowFlags& f); 00063 virtual DtPeriodicCheckpointWidget* createPeriodicCheckpointsWidget(QWidget* p, const Qt::WindowFlags& f); 00064 00066 virtual void tick(); 00067 00070 virtual void slot_backendUpdated(); 00071 00073 virtual void createCheckpointStatus(); 00074 00076 virtual void updateCheckpointStatus(int iTime); 00077 00078 virtual double currentSimTime() const; 00079 00080 protected: 00081 makVrv::DtDe& myDe; 00082 int myTime; 00083 bool myUseSimulationTime; 00084 bool myCheckpointingEnabled; 00085 double myCurrentSimTime; 00086 00087 QLabel* myCheckpointStatus; 00088 bool myStatusBarWasVisible; 00089 double myLastCheckpointTime; 00090 }; 00091 }