![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2002 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: evaluator.h,v $ $Revision: 1.6 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00012 #ifndef DtEvaluator_H_ 00013 #define DtEvaluator_H_ 00014 00015 00016 00017 #include <vlutil/vlMachineTypes.h> 00018 #include "vrfutil/evalFactory.h" 00019 00020 class DtSimCondExpr; 00021 class DtSimManager; 00022 class DtString; 00023 00032 #include "vrfutil/vrfutilDefines.h" 00033 class DT_DLL_vrfutil DtEvaluator 00034 { 00035 public: 00036 00038 DtEvaluator(); 00039 00041 virtual ~DtEvaluator(); 00042 00046 virtual bool evaluate(DtSimCondExpr* condExpr, 00047 const DtString& objectName, DtSimManager* simManager) const = 0; 00048 00050 DtEvaluator(const DtEvaluator& orig); 00051 00053 DtEvaluator& operator=(const DtEvaluator& orig); 00054 00056 virtual DtEvaluator* clone() = 0; 00057 00058 public: 00059 00061 static void setFactory(DtEvaluatorFactory * factory); 00062 static DtEvaluatorFactory * factory(); 00063 00066 static void addEvaluatorCreatorFcn(const int intType, 00067 DtEvaluatorCreatorFcn fcn); 00068 00069 00070 protected: 00071 00072 static DtEvaluatorFactory* theFactory; 00073 }; 00074 00075 #endif 00076 00077