8 #include <unordered_map>
11 #include <geographic_msgs/GeoPoint.h>
13 #include <gnss_info_msgs/DOP.h>
14 #include <gnss_info_msgs/SatellitesList.h>
15 #include <gnss_info_msgs/SatellitesPositions.h>
16 #include <gnss_info_msgs/SkyView.h>
22 struct OrbitalDataManagerPrivate;
37 void addProvider(
const std::shared_ptr<OrbitalDataProvider>& provider);
69 virtual bool load(
const ros::Time& startTime,
const ros::Time& endTime,
const cras::optional<bool>& precise);
77 cras::expected<gnss_info_msgs::SatellitesPositions, std::string>
getPositions(
78 const ros::Time&
time,
const gnss_info_msgs::SatellitesList& satellites);
87 virtual cras::expected<gnss_info_msgs::SatellitesPositions, std::string>
getPositions(
88 const ros::Time&
time,
const gnss_info_msgs::SatellitesList& satellites,
const cras::optional<bool>& precise);
97 cras::expected<gnss_info_msgs::SkyView, std::string>
getSkyView(
98 const geographic_msgs::GeoPoint& position,
const gnss_info_msgs::SatellitesPositions& positions,
99 double elevationMaskDeg);
109 virtual cras::expected<gnss_info_msgs::SkyView, std::string>
getSkyView(
110 const geographic_msgs::GeoPoint& position,
const gnss_info_msgs::SatellitesPositions& positions,
111 double elevationMaskDeg,
const cras::optional<bool>& precise);
119 const std::unordered_map<uint32_t, gnss_info_msgs::SatelliteSkyPosition>& skyView)
const;
122 std::unique_ptr<OrbitalDataManagerPrivate>
data;