🛰️航天仿真算法库 SpaceAST 0.0.1
载入中...
搜索中...
未找到
GravityFieldLoader.hpp
浏览该文件的文档.
1
20
21#pragma once
22
23#include "AstGlobal.h"
24#include "AstUtil/StringView.hpp"
25#include "AstUtil/BKVParser.hpp"
26
27AST_NAMESPACE_BEGIN
28
34class GravityFieldHead;
35class GravityField;
36
43{
44public:
45 explicit GravityFieldLoader(StringView dirpath)
46 : dirpath_(dirpath)
47 {}
48
50 GravityFieldLoader& operator=(const GravityFieldLoader&) = delete;
51
52 GravityFieldLoader(int maxLoadDegree, int maxLoadOrder, StringView dirpath)
53 : dirpath_(dirpath), maxLoadDegree_(maxLoadDegree), maxLoadOrder_(maxLoadOrder)
54 {}
55 ~GravityFieldLoader() = default;
56
57 AST_CORE_API
58 errc_t load(StringView filePath, GravityField& gravityField);
59
60 AST_CORE_API
61 errc_t load(StringView filePath, GravityFieldHead& head);
62
64 int getMaxLoadDegree() const { return maxLoadDegree_; }
65
67 int getMaxLoadOrder() const { return maxLoadOrder_; }
68
70 void setMaxLoadDegree(int maxLoadDegree) { maxLoadDegree_ = maxLoadDegree; }
71
73 void setMaxLoadOrder(int maxLoadOrder) { maxLoadOrder_ = maxLoadOrder; }
74
75public:
76 BKVParser parser_{};
77 GravityFieldHead* head_{nullptr};
78 GravityField* coeff_{nullptr};
79 StringView dirpath_{};
80 int maxLoadDegree_ {-1};
81 int maxLoadOrder_ {-1};
82};
83
84
85
88AST_NAMESPACE_END
键值对解析器(BlockKeyValueParser)
定义 BKVParser.hpp:45
重力场头信息
定义 GravityField.hpp:46
重力场加载器
定义 GravityFieldLoader.hpp:43
void setMaxLoadOrder(int maxLoadOrder)
设置最大加载次数
定义 GravityFieldLoader.hpp:73
int getMaxLoadDegree() const
获取最大加载阶数
定义 GravityFieldLoader.hpp:64
void setMaxLoadDegree(int maxLoadDegree)
设置最大加载阶数
定义 GravityFieldLoader.hpp:70
int getMaxLoadOrder() const
获取最大加载次数
定义 GravityFieldLoader.hpp:67
重力场系数
定义 GravityField.hpp:88