![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2007 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 /****************************************************************************** 00006 ** $RCSfile: DtDriverWidgetLogic.h,v $ $Revision: 1.13 $ $State: Exp $ 00007 ******************************************************************************/ 00008 00012 00013 #ifndef DtDriverWidgetLogic_H_ 00014 #define DtDriverWidgetLogic_H_ 00015 00016 #include <vrvCoreQt/vrvCoreQt.h> 00017 #include <vrvCore/DtSubjectObserver.h> 00018 00019 namespace makVrv 00020 { 00021 class DtDe; 00022 class DtDriver; 00023 class DtDriverWidgetInterface; 00024 00027 class DT_DLL_VRVCOREQT DtDriverWidgetLogic : public DtDeObserver 00028 { 00029 public: 00030 00033 static DtDriverWidgetLogic* create(DtDe& de, DtDriverWidgetInterface* iFace); 00034 00035 00037 virtual ~DtDriverWidgetLogic(); 00038 00040 virtual void setupWidget(); 00041 00043 virtual void addDriver(const std::string& driverClassName); 00044 00046 virtual void startDriver(const std::string& driverName); 00047 00049 virtual void stopDriver(const std::string& driverName); 00050 00052 virtual void deleteDriver(const std::string& driverName); 00053 00055 virtual void createNewDriverInteractively(); 00056 00058 virtual void slot_activate(DtDe* de); 00059 00061 virtual void slot_deactivate(DtDe* de); 00062 00063 inline DtDe& de() 00064 { 00065 return myDe; 00066 } 00067 00068 protected: 00069 00070 virtual void slot_onDriverAdded(DtDriver& driver); 00071 virtual void slot_onDriverToBeDestroyed(DtDriver& driver); 00072 virtual void slot_onDriverStarted(DtDriver& driver); 00073 virtual void slot_onDriverStopped(DtDriver& driver); 00074 00076 DtDriverWidgetLogic(DtDe& de, DtDriverWidgetInterface* rcInterface); 00077 00078 protected: 00079 00080 DtDe& myDe; 00081 DtDriverManager* myManager; 00082 DtDriverWidgetInterface* myInterface; 00083 00084 }; 00085 } 00086 00087 #endif 00088