00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014 #ifndef __SIM_SolverCopy_h__
00015 #define __SIM_SolverCopy_h__
00016
00017 #include "SIM_API.h"
00018 #include "SIM_SingleSolver.h"
00019 #include "SIM_OptionsUser.h"
00020
00021
00022
00023
00024 class SIM_API SIM_SolverCopy : public SIM_SingleSolver,
00025 public SIM_OptionsUser
00026 {
00027 public:
00028 GETSET_DATA_FUNCS_S(SIM_NAME_SOURCEDATA, SourceData);
00029 GETSET_DATA_FUNCS_S(SIM_NAME_DESTINATIONDATA, DestinationData);
00030
00031 protected:
00032 explicit SIM_SolverCopy(const SIM_DataFactory *factory);
00033 virtual ~SIM_SolverCopy();
00034
00035
00036 virtual SIM_Result solveSingleObjectSubclass(SIM_Engine &engine,
00037 SIM_Object &object,
00038 SIM_ObjectArray &feedbacktoobjects,
00039 const SIM_Time ×tep,
00040 bool newobject);
00041
00042 private:
00043 static const SIM_DopDescription *getSolverCopyDopDescription();
00044
00045 DECLARE_STANDARD_GETCASTTOTYPE();
00046 DECLARE_DATAFACTORY(SIM_SolverCopy,
00047 SIM_SingleSolver,
00048 "Copy Data Solver",
00049 getSolverCopyDopDescription());
00050 };
00051
00052 #endif
00053