00001 /* 00002 * PROPRIETARY INFORMATION. This software is proprietary to 00003 * Side Effects Software Inc., and is not to be reproduced, 00004 * transmitted, or disclosed in any way without written permission. 00005 * 00006 * Produced by: 00007 * Side Effects Software Inc. 00008 * 477 Richmond Street West, Suite 1001 00009 * Toronto, Ontario 00010 * Canada M5V 3E7 00011 * 416-504-9876 00012 */ 00013 00014 #ifndef __SIM_SolverStatic_h__ 00015 #define __SIM_SolverStatic_h__ 00016 00017 #include "SIM_API.h" 00018 #include "SIM_SingleSolver.h" 00019 00020 /// This class is an implementation of a solver which does nothing. 00021 /// It causes the object to remain stationary and unchanged regardless 00022 /// of the situation. 00023 class SIM_API SIM_SolverStatic : public SIM_SingleSolver 00024 { 00025 protected: 00026 explicit SIM_SolverStatic(const SIM_DataFactory *factory); 00027 virtual ~SIM_SolverStatic(); 00028 00029 /// Our solver function override that does nothing. 00030 virtual SIM_Result solveSingleObjectSubclass(SIM_Engine &engine, 00031 SIM_Object &object, 00032 SIM_ObjectArray &feedbacktoobjects, 00033 const SIM_Time ×tep, 00034 bool newobject); 00035 00036 private: 00037 static const SIM_DopDescription *getSolverStaticDopDescription(); 00038 00039 DECLARE_STANDARD_GETCASTTOTYPE(); 00040 DECLARE_DATAFACTORY(SIM_SolverStatic, 00041 SIM_SingleSolver, 00042 "Static Solver", 00043 getSolverStaticDopDescription()); 00044 }; 00045 00046 #endif 00047
1.5.9