62 using funcarray = std::array<void*, numfunctions>;
72 explicit SpiceAPI(
bool shouldLoadDynamicLib);
85 errc_t tryload(
const std::vector<std::string>& libpaths);
93 bool isLoaded()
const {
return library_ !=
nullptr; }
99 errc_t furnsh(
const char* file);
137 errc_t spklef(
const char* filename,
int* handle);
143 errc_t spkuef(
int handle);
149 errc_t ktotal(
const char * kind,
int* count);
150 int ktotal(
const char * kind){
152 ktotal(kind, &count);
157 void bodc2n(
int code,
161 errc_t bodc2n(
int code, std::string& name);
172 void erract(
const char* operation,
int lenout,
char* action);
178 A_DISABLE_COPY(SpiceAPI);
180 void* library_{
nullptr};
181 std::vector<uint32_t> spk_handles_{};
182 funcarray functions_{};
errc_t spkssb(CelestialBody *targ, const TimePoint &et, Axes *ref, CartState &starg)
计算天体相对于太阳系质心的位置速度( S/P Kernel, solar system barycenter)
定义 SpiceZpr.cpp:1375