1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- #pragma once
- #include <Mathematics/GVector.h>
- #include <functional>
- namespace WwiseGTE
- {
- template <typename Real, typename TVector>
- class OdeSolver
- {
- public:
-
- virtual ~OdeSolver() = default;
- protected:
- OdeSolver(Real tDelta, std::function<TVector(Real, TVector const&)> const& F)
- :
- mTDelta(tDelta),
- mFunction(F)
- {
- }
- public:
-
- inline void SetTDelta(Real tDelta)
- {
- mTDelta = tDelta;
- }
- inline Real GetTDelta() const
- {
- return mTDelta;
- }
-
-
-
- virtual void Update(Real tIn, TVector const& xIn, Real& tOut, TVector& xOut) = 0;
- protected:
- Real mTDelta;
- std::function<TVector(Real, TVector const&)> mFunction;
- };
- }
|