🛰️航天仿真算法库 SpaceAST
0.0.1
载入中...
搜索中...
未找到
ODEStateObserverList.hpp
1
20
21
#pragma once
22
23
#include "AstGlobal.h"
24
#include "AstMath/ODEStateObserver.hpp"
25
#include <vector>
26
27
AST_NAMESPACE_BEGIN
28
29
class
ODEStateObserverList
:
public
ODEStateObserver
30
{
31
public
:
32
ODEStateObserverList
() =
default
;
33
~ODEStateObserverList
()
override
;
34
35
EODEAction onStateUpdate(
double
* y,
double
& x,
ODEIntegrator
* integrator)
override
;
36
37
void
addStateObserver(
ODEStateObserver
* observer){ observers_.push_back(observer); }
38
void
removeStateObserver(
ODEStateObserver
* observer);
39
40
bool
empty()
const
{
return
observers_.empty(); }
41
42
size_t
size()
const
{
return
observers_.size(); }
43
44
ODEStateObserver
& operator[](
size_t
index) {
return
*observers_[index]; }
45
const
ODEStateObserver
& operator[](
size_t
index)
const
{
return
*observers_[index]; }
46
protected
:
47
std::vector<ODEStateObserver*> observers_;
48
};
49
50
AST_NAMESPACE_END
ast::ODEIntegrator
ODE 积分器
定义
ODEIntegrator.hpp:81
ast::ODEStateObserverList
定义
ODEStateObserverList.hpp:30
ast::ODEStateObserver
ODE状态量观察者
定义
ODEStateObserver.hpp:39
src
AstMath
ODE
StateObserver
ODEStateObserverList.hpp
制作者
1.12.0