File data_provider.hpp¶
↰ Parent directory (foxglove/include/foxglove)
Definition (foxglove/include/foxglove/data_provider.hpp)¶
Detailed Description¶
Types and utilities for building remote data loader manifests.
Use Class ChannelSet to declare channels, then construct a Struct StreamedSource with the resulting topics and schemas.
This header requires nlohmann/json and tobiaslocker/base64 to be available on the include path.
Example #include<File data_provider.hpp> #include<foxglove/schemas.hpp>
namespacedp=:ref:namespace_foxglove__data_provider;
dp::ChannelSetchannels; channels.insert<Struct Vector3>(“/demo”);
dp::StreamedSourcesource; source.url=”/v1/data?flightId=ABC123”; source.id=”flight-v1-ABC123”; source.topics=std::move(channels.topics); source.schemas=std::move(channels.schemas); source.start_time=”2024-01-01T00:00:00Z”; source.end_time=”2024-01-02T00:00:00Z”;
dp::Manifestmanifest; manifest.name=”FlightABC123”; manifest.sources={std::move(source)};
std::stringjson_str=dp::to_json_string(manifest);
Includes¶
base64.hppcstdintfoxglove/schema.hpp(File schema.hpp)nlohmann/json.hppoptionalstdexceptstringstring_viewvector