VR-Forces 4.0.4 Class Documentation
include/vrfGuiCoreQt/DtVrfScenarioRemapFunctions.h
Go to the documentation of this file.
00001 /****************************************************************************** 
00002 ** Copyright (c) 2009 MAK Technologies, Inc. 
00003 ** All rights reserved. 
00004 ******************************************************************************/ 
00005 /****************************************************************************** 
00006 ** $RCSfile: DtVrfScenarioRemapFunction.h,v $ $Revision: 1.1 $ $State: Exp $ 
00007 ******************************************************************************/ 
00008  
00011 
00013  
00014 #pragma once
00015 
00016 #include <vrfGuiCoreQt/vrfGuiCoreQt.h>
00017 #include <vrvUtil/DtVirtualBaseClass.h>
00018 
00019 #include <vrfutil/scenario.h>
00020 
00021 class DtSimulationAddress;
00022 class QWidget;
00023 
00024 namespace makVrv
00025 {
00026    class DtDe;
00027 }
00028 
00029 namespace makVrf
00030 {
00031    class DtRemappingDialog;
00032 
00033    class DT_DLL_VRFGUICOREQT DtVrfScenarioRemapFunction
00034    {
00035    public: 
00036       
00038       DtVrfScenarioRemapFunction(makVrv::DtDe& de, QWidget* parent);
00039          
00041       virtual ~DtVrfScenarioRemapFunction();
00042 
00043    public:
00044       virtual DtRemappingFcn remappingFunction() = 0;
00045 
00046    protected:
00047       makVrv::DtDe&  myDe;
00048    };
00049 
00050    class DT_DLL_VRFGUICOREQT DtVrfScenarioRemapFunctionCreator
00051    {
00052    public:
00053       virtual DtVrfScenarioRemapFunction* create(makVrv::DtDe&, QWidget* parent) = 0;
00054    };
00055 
00056    class DT_DLL_VRFGUICOREQT DtVrfScenarioRemapFactory : public makVrv::DtVirtualBaseClass
00057    {
00058    public:
00060       DtVrfScenarioRemapFactory(makVrv::DtDe&);
00061 
00062       virtual ~DtVrfScenarioRemapFactory();
00063 
00065       static DtVrfScenarioRemapFactory& instance(makVrv::DtDe& de);
00066 
00070       virtual DtVrfScenarioRemapFunction* createRemapFunction(const std::string&, QWidget* parent);
00071 
00073       virtual void addRemappingFunction(const std::string&, DtVrfScenarioRemapFunctionCreator*);
00074       virtual void removeRemappingFunction(const std::string&);
00075 
00076    protected:
00077       typedef std::map<std::string, DtVrfScenarioRemapFunctionCreator*> DtRemappingCreatorMap;
00078 
00079       DtRemappingCreatorMap   myRemappingFunctions;
00080       makVrv::DtDe&           myDe;
00081    };
00082 
00083    class DT_DLL_VRFGUICOREQT DtRemapMissingBackends : public DtVrfScenarioRemapFunction
00084    {
00085    public:
00087       DtRemapMissingBackends(makVrv::DtDe& de, QWidget* parent);
00088          
00090       virtual ~DtRemapMissingBackends();
00091 
00092    public:
00093       virtual DtRemappingFcn remappingFunction();
00094 
00095    protected:
00096       static bool remapMissingBackends(DtBackendMap* map, void* usr);
00097       virtual bool processRemapMissingBackends(DtBackendMap* map);
00098 
00099       virtual DtRemappingDialog* createRemappingDialog(makVrv::DtDe&, DtBackendMap*, QWidget*);
00100 
00101    protected:
00102       QWidget* myParent;
00103    };
00104 
00105    class DT_DLL_VRFGUICOREQT DtRemapMissingBackendsCreator : public DtVrfScenarioRemapFunctionCreator
00106    {
00107    public:
00108       virtual DtVrfScenarioRemapFunction* create(makVrv::DtDe&, QWidget* parent);
00109    };
00110 
00111    class DT_DLL_VRFGUICOREQT DtAutoRemapMissingBackends : public DtVrfScenarioRemapFunction
00112    {
00113    public:
00115       DtAutoRemapMissingBackends(makVrv::DtDe& de, QWidget* parent);
00116          
00118       virtual ~DtAutoRemapMissingBackends();
00119 
00120    public:
00121       virtual DtRemappingFcn remappingFunction();
00122 
00123    protected:
00124       static bool autoRemapMissingBackends(DtBackendMap* map, void* usr);
00125       virtual bool processAutoRemapMissingBackends(DtBackendMap* map);
00126 
00128       virtual void getRemappingAddress(DtSimulationAddress& remapAddress);
00129    };
00130 
00131    class DT_DLL_VRFGUICOREQT DtAutoRemapMissingBackendsCreator : public DtVrfScenarioRemapFunctionCreator
00132    {
00133    public:
00134       virtual DtVrfScenarioRemapFunction* create(makVrv::DtDe&, QWidget* parent);
00135    };
00136 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)