![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2002 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: batchMgr.h,v $ $Revision: 1.9 $ $State: Exp $ 00007 *******************************************************************************/ 00008 #ifndef batchMgr_H_ 00009 #define batchMgr_H_ 00010 00013 00014 #include <vlutil/vlMachineTypes.h> 00015 #include <vlutil/vlFilename.h> 00016 #include <vlutil/vlTime.h> 00017 00018 class DtCgf; 00019 class DtScenarioBatchIterator; 00020 class DtRemoteLoggerController; 00021 class DtScenarioBatch; 00022 class DtScenario; 00023 00031 #include "vrfcgf/vrfcgfDefines.h" 00032 class DT_DLL_vrfcgf DtBatchManager 00033 { 00034 public: 00036 enum State 00037 { 00038 StateIdle, 00039 StateRunStart, 00040 StateLoading, 00041 StateRunning, 00042 StateRunComplete 00043 }; 00044 00045 public: 00046 DtBatchManager(DtCgf *cgf); 00047 virtual ~DtBatchManager(); 00048 00051 virtual bool init(); 00052 00054 virtual void tick(); 00055 00057 virtual bool loadBatch(const DtFilename &batchFileName); 00059 virtual bool loadBatch(const DtScenarioBatch &batch); 00062 virtual bool runBatch(); 00064 virtual bool stopBatch(); 00066 virtual bool running(); 00068 virtual bool done(); 00070 DtBatchManager::State state() const; 00071 00073 virtual const DtScenarioBatchIterator* batchIterator(); 00074 00075 protected: 00077 DtBatchManager(); 00078 DtBatchManager(const DtBatchManager &orig); 00079 DtBatchManager& operator=(const DtBatchManager &orig); 00080 00083 virtual DtFilename constructLoggerFilename(const DtScenario* scenario); 00084 00085 protected: 00086 DtScenarioBatchIterator* myBatchIterator; 00087 DtRemoteLoggerController* myLoggerControl; 00088 DtCgf* myCgf; 00089 00090 DtBatchManager::State myState; 00091 bool myRunning; 00092 bool myDone; 00093 DtTime myRunStartTime; 00094 }; 00095 00096 #endif