6#include "../collection.hpp"
7#include "../compiler_utils.hpp"
8#include "../component_batch.hpp"
9#include "../component_column.hpp"
10#include "../components/aggregation_policy.hpp"
11#include "../components/color.hpp"
12#include "../components/name.hpp"
13#include "../components/series_visible.hpp"
14#include "../components/stroke_width.hpp"
15#include "../indicator_component.hpp"
16#include "../result.hpp"
24RR_DISABLE_DEPRECATION_WARNING
79 struct [[deprecated(
"since 0.23.0: Use `SeriesLines` instead.")]]
SeriesLine {
81 std::optional<ComponentBatch>
color;
84 std::optional<ComponentBatch>
width;
89 std::optional<ComponentBatch>
name;
106 static constexpr const char IndicatorComponentName[] =
107 "rerun.components.SeriesLineIndicator";
112 static constexpr const char ArchetypeName[] =
"rerun.archetypes.SeriesLine";
120 ArchetypeName,
"width",
129 ArchetypeName,
"visible_series",
134 ArchetypeName,
"aggregation_policy",
155 color = ComponentBatch::from_loggable(_color, Descriptor_color).value_or_throw();
156 return std::move(*
this);
164 color = ComponentBatch::from_loggable(_color, Descriptor_color).value_or_throw();
165 return std::move(*
this);
170 width = ComponentBatch::from_loggable(_width, Descriptor_width).value_or_throw();
171 return std::move(*
this);
179 width = ComponentBatch::from_loggable(_width, Descriptor_width).value_or_throw();
180 return std::move(*
this);
187 name = ComponentBatch::from_loggable(_name, Descriptor_name).value_or_throw();
188 return std::move(*
this);
196 name = ComponentBatch::from_loggable(_name, Descriptor_name).value_or_throw();
197 return std::move(*
this);
209 ComponentBatch::from_loggable(_visible_series, Descriptor_visible_series)
211 return std::move(*
this);
223 ComponentBatch::from_loggable(_aggregation_policy, Descriptor_aggregation_policy)
225 return std::move(*
this);
236 ComponentBatch::from_loggable(_aggregation_policy, Descriptor_aggregation_policy)
238 return std::move(*
this);
262 template <
typename T>
265 RR_DISABLE_DEPRECATION_WARNING
Generic collection of elements that are roughly contiguous in memory.
Definition collection.hpp:49
A class for representing either a usable value, or an error.
Definition result.hpp:14
All built-in archetypes. See Types in the Rerun manual.
Definition rerun.hpp:76
AggregationPolicy
Component: Policy for aggregation of multiple scalar plot values.
Definition aggregation_policy.hpp:29
All Rerun C++ types and functions are in the rerun namespace or one of its nested namespaces.
Definition rerun.hpp:23
A ComponentDescriptor fully describes the semantics of a column of data.
Definition component_descriptor.hpp:14
The Loggable trait is used by all built-in implementation of rerun::AsComponents to serialize a colle...
Definition loggable.hpp:11
Archetype: Define the style properties for a line series in a chart.
Definition series_line.hpp:79
SeriesLine with_width(const rerun::components::StrokeWidth &_width) &&
Stroke width for the corresponding series.
Definition series_line.hpp:169
static SeriesLine update_fields()
Update only some specific fields of a SeriesLine.
Definition series_line.hpp:146
std::optional< ComponentBatch > name
Display name of the series.
Definition series_line.hpp:89
std::optional< ComponentBatch > width
Stroke width for the corresponding series.
Definition series_line.hpp:84
std::optional< ComponentBatch > color
Color for the corresponding series.
Definition series_line.hpp:81
SeriesLine with_visible_series(const Collection< rerun::components::SeriesVisible > &_visible_series) &&
Which lines are visible.
Definition series_line.hpp:205
SeriesLine with_aggregation_policy(const rerun::components::AggregationPolicy &_aggregation_policy) &&
Configures the zoom-dependent scalar aggregation.
Definition series_line.hpp:219
static SeriesLine clear_fields()
Clear all the fields of a SeriesLine.
SeriesLine with_name(const rerun::components::Name &_name) &&
Display name of the series.
Definition series_line.hpp:186
SeriesLine with_many_aggregation_policy(const Collection< rerun::components::AggregationPolicy > &_aggregation_policy) &&
This method makes it possible to pack multiple aggregation_policy in a single component batch.
Definition series_line.hpp:232
SeriesLine with_many_color(const Collection< rerun::components::Color > &_color) &&
This method makes it possible to pack multiple color in a single component batch.
Definition series_line.hpp:163
SeriesLine with_color(const rerun::components::Color &_color) &&
Color for the corresponding series.
Definition series_line.hpp:154
std::optional< ComponentBatch > aggregation_policy
Configures the zoom-dependent scalar aggregation.
Definition series_line.hpp:103
Collection< ComponentColumn > columns()
Partitions the component data into unit-length sub-batches.
SeriesLine with_many_width(const Collection< rerun::components::StrokeWidth > &_width) &&
This method makes it possible to pack multiple width in a single component batch.
Definition series_line.hpp:178
Collection< ComponentColumn > columns(const Collection< uint32_t > &lengths_)
Partitions the component data into multiple sub-batches.
std::optional< ComponentBatch > visible_series
Which lines are visible.
Definition series_line.hpp:96
SeriesLine with_many_name(const Collection< rerun::components::Name > &_name) &&
This method makes it possible to pack multiple name in a single component batch.
Definition series_line.hpp:195
Component: An RGBA color with unmultiplied/separate alpha, in sRGB gamma space with linear alpha.
Definition color.hpp:18
Indicator component used by archetypes when converting them to component lists.
Definition indicator_component.hpp:32
Component: A display name, typically for an entity or a item like a plot series.
Definition name.hpp:17
Component: The width of a stroke specified in UI points.
Definition stroke_width.hpp:15