Skip to content

Commit

Permalink
autogenerated rust code
Browse files Browse the repository at this point in the history
  • Loading branch information
teh-cmc committed Jun 12, 2023
1 parent d3894a7 commit f4e03ea
Show file tree
Hide file tree
Showing 15 changed files with 380 additions and 0 deletions.
2 changes: 2 additions & 0 deletions crates/re_types/definitions/rerun/archetypes.fbs
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
include "./archetypes/points2d.fbs";

namespace rerun.archetypes;
4 changes: 4 additions & 0 deletions crates/re_types/source_hash.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# This is a sha256 hash for all direct and indirect dependencies of this crate's build script.
# It can be safely removed at anytime to force the build script to run again.
# Check out build.rs to see how it's computed.
a7f3c6f6e29d897104debea55952dca83bc273d4f45654f97102e9e22b9f3741
4 changes: 4 additions & 0 deletions crates/re_types/src/archetypes/mod.rs
Original file line number Diff line number Diff line change
@@ -1 +1,5 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

mod points2d;

pub use self::points2d::Points2D;
162 changes: 162 additions & 0 deletions crates/re_types/src/archetypes/points2d.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,162 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

/// A 2D point cloud with positions and optional colors, radii, labels, etc.
#[derive(Debug, Clone, PartialEq)]
pub struct Points2D {
/// All the actual 2D points that make up the point cloud.
pub points: Vec<crate::components::Point2D>,

/// Optional radii for the points, effectively turning them into circles.
pub radii: Option<Vec<crate::components::Radius>>,

/// Optional colors for the points.
pub colors: Option<Vec<crate::components::Color>>,

/// Optional text labels for the points.
pub labels: Option<Vec<crate::components::Label>>,

/// An optional floating point value that specifies the 2D drawing order.
/// Objects with higher values are drawn on top of those with lower values.
///
/// The default for 2D points is 30.0.
pub draw_order: Option<crate::components::DrawOrder>,

/// Optional class Ids for the points.
///
/// The class ID provides colors and labels if not specified explicitly.
pub class_ids: Option<Vec<crate::components::ClassId>>,

/// Optional keypoint IDs for the points, identifying them within a class.
///
/// If keypoint IDs are passed in but no class IDs were specified, the class ID will
/// default to 0.
/// This is useful to identify points within a single classification (which is identified
/// with `class_id`).
/// E.g. the classification might be 'Person' and the keypoints refer to joints on a
/// detected skeleton.
pub keypoint_ids: Option<Vec<crate::components::KeypointId>>,

/// Unique identifiers for each individual point in the batch.
pub instance_keys: Option<Vec<crate::components::InstanceKey>>,
}

impl Points2D {
pub const REQUIRED_COMPONENTS: [::std::borrow::Cow<'static, str>; 1] =
[::std::borrow::Cow::Borrowed("rerun.components.Point2D")];

pub const RECOMMENDED_COMPONENTS: [::std::borrow::Cow<'static, str>; 2] = [
::std::borrow::Cow::Borrowed("rerun.components.Radius"),
::std::borrow::Cow::Borrowed("rerun.components.Color"),
];

pub const OPTIONAL_COMPONENTS: [::std::borrow::Cow<'static, str>; 5] = [
::std::borrow::Cow::Borrowed("rerun.components.Label"),
::std::borrow::Cow::Borrowed("rerun.components.DrawOrder"),
::std::borrow::Cow::Borrowed("rerun.components.ClassId"),
::std::borrow::Cow::Borrowed("rerun.components.KeypointId"),
::std::borrow::Cow::Borrowed("rerun.components.InstanceKey"),
];

pub const ALL_COMPONENTS: [::std::borrow::Cow<'static, str>; 8] = [
::std::borrow::Cow::Borrowed("rerun.components.Point2D"),
::std::borrow::Cow::Borrowed("rerun.components.Radius"),
::std::borrow::Cow::Borrowed("rerun.components.Color"),
::std::borrow::Cow::Borrowed("rerun.components.Label"),
::std::borrow::Cow::Borrowed("rerun.components.DrawOrder"),
::std::borrow::Cow::Borrowed("rerun.components.ClassId"),
::std::borrow::Cow::Borrowed("rerun.components.KeypointId"),
::std::borrow::Cow::Borrowed("rerun.components.InstanceKey"),
];
}

impl crate::Archetype for Points2D {
fn name() -> ::std::borrow::Cow<'static, str> {
::std::borrow::Cow::Borrowed("rerun.archetypes.Points2D")
}

fn required_components() -> Vec<::std::borrow::Cow<'static, str>> {
Self::REQUIRED_COMPONENTS.to_vec()
}

fn recommended_components() -> Vec<::std::borrow::Cow<'static, str>> {
Self::RECOMMENDED_COMPONENTS.to_vec()
}

fn optional_components() -> Vec<::std::borrow::Cow<'static, str>> {
Self::OPTIONAL_COMPONENTS.to_vec()
}

#[allow(clippy::unimplemented)]
fn to_arrow_datatypes() -> Vec<arrow2::datatypes::DataType> {
// TODO(#2368): dump the arrow registry into the generated code
unimplemented!("query the registry for all fqnames"); // NOLINT
}
}

impl Points2D {
pub fn new(points: impl IntoIterator<Item = impl Into<crate::components::Point2D>>) -> Self {
Self {
points: points.into_iter().map(Into::into).collect(),
radii: None,
colors: None,
labels: None,
draw_order: None,
class_ids: None,
keypoint_ids: None,
instance_keys: None,
}
}

pub fn with_radii(
mut self,
radii: impl IntoIterator<Item = impl Into<crate::components::Radius>>,
) -> Self {
self.radii = Some(radii.into_iter().map(Into::into).collect());
self
}

pub fn with_colors(
mut self,
colors: impl IntoIterator<Item = impl Into<crate::components::Color>>,
) -> Self {
self.colors = Some(colors.into_iter().map(Into::into).collect());
self
}

pub fn with_labels(
mut self,
labels: impl IntoIterator<Item = impl Into<crate::components::Label>>,
) -> Self {
self.labels = Some(labels.into_iter().map(Into::into).collect());
self
}

pub fn with_draw_order(mut self, draw_order: impl Into<crate::components::DrawOrder>) -> Self {
self.draw_order = Some(draw_order.into());
self
}

pub fn with_class_ids(
mut self,
class_ids: impl IntoIterator<Item = impl Into<crate::components::ClassId>>,
) -> Self {
self.class_ids = Some(class_ids.into_iter().map(Into::into).collect());
self
}

pub fn with_keypoint_ids(
mut self,
keypoint_ids: impl IntoIterator<Item = impl Into<crate::components::KeypointId>>,
) -> Self {
self.keypoint_ids = Some(keypoint_ids.into_iter().map(Into::into).collect());
self
}

pub fn with_instance_keys(
mut self,
instance_keys: impl IntoIterator<Item = impl Into<crate::components::InstanceKey>>,
) -> Self {
self.instance_keys = Some(instance_keys.into_iter().map(Into::into).collect());
self
}
}
19 changes: 19 additions & 0 deletions crates/re_types/src/components/class_id.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

/// A 16-bit ID representing a type of semantic class.
///
/// Used to look up a `crate::components::ClassDescription` within the `crate::components::AnnotationContext`.
#[derive(Copy, Clone, Debug, Default, PartialEq, Eq, PartialOrd, Ord, Hash)]
pub struct ClassId(pub u16);

impl crate::Component for ClassId {
fn name() -> ::std::borrow::Cow<'static, str> {
::std::borrow::Cow::Borrowed("rerun.components.ClassId")
}

#[allow(clippy::wildcard_imports)]
fn to_arrow_datatype() -> arrow2::datatypes::DataType {
use ::arrow2::datatypes::*;
DataType::UInt16
}
}
20 changes: 20 additions & 0 deletions crates/re_types/src/components/color.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

/// An RGBA color tuple with unmultiplied/separate alpha, in sRGB gamma space with linear alpha.
#[derive(
Debug, Default, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, bytemuck::Pod, bytemuck::Zeroable,
)]
#[repr(transparent)]
pub struct Color(pub u32);

impl crate::Component for Color {
fn name() -> ::std::borrow::Cow<'static, str> {
::std::borrow::Cow::Borrowed("rerun.components.Color")
}

#[allow(clippy::wildcard_imports)]
fn to_arrow_datatype() -> arrow2::datatypes::DataType {
use ::arrow2::datatypes::*;
DataType::UInt32
}
}
24 changes: 24 additions & 0 deletions crates/re_types/src/components/draw_order.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

/// Draw order used for the display order of 2D elements.
///
/// Higher values are drawn on top of lower values.
/// An entity can have only a single draw order component.
/// Within an entity draw order is governed by the order of the components.
///
/// Draw order for entities with the same draw order is generally undefined.
#[derive(Debug, Clone, Copy, PartialEq, PartialOrd)]
#[repr(transparent)]
pub struct DrawOrder(pub f32);

impl crate::Component for DrawOrder {
fn name() -> ::std::borrow::Cow<'static, str> {
::std::borrow::Cow::Borrowed("rerun.components.DrawOrder")
}

#[allow(clippy::wildcard_imports)]
fn to_arrow_datatype() -> arrow2::datatypes::DataType {
use ::arrow2::datatypes::*;
DataType::Float32
}
}
17 changes: 17 additions & 0 deletions crates/re_types/src/components/instance_key.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

/// A unique numeric identifier for each individual instance within a batch.
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord)]
pub struct InstanceKey(pub u64);

impl crate::Component for InstanceKey {
fn name() -> ::std::borrow::Cow<'static, str> {
::std::borrow::Cow::Borrowed("rerun.components.InstanceKey")
}

#[allow(clippy::wildcard_imports)]
fn to_arrow_datatype() -> arrow2::datatypes::DataType {
use ::arrow2::datatypes::*;
DataType::UInt64
}
}
21 changes: 21 additions & 0 deletions crates/re_types/src/components/keypoint_id.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

/// A 16-bit ID representing a type of semantic keypoint within a class.
///
/// `KeypointId`s are only meaningful within the context of a `crate::components::ClassDescription`.
///
/// Used to look up an `crate::components::AnnotationInfo` for a Keypoint within the `crate::components::AnnotationContext`.
#[derive(Copy, Clone, Debug, Default, PartialEq, Eq, PartialOrd, Ord, Hash)]
pub struct KeypointId(pub u16);

impl crate::Component for KeypointId {
fn name() -> ::std::borrow::Cow<'static, str> {
::std::borrow::Cow::Borrowed("rerun.components.KeypointId")
}

#[allow(clippy::wildcard_imports)]
fn to_arrow_datatype() -> arrow2::datatypes::DataType {
use ::arrow2::datatypes::*;
DataType::UInt16
}
}
18 changes: 18 additions & 0 deletions crates/re_types/src/components/label.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

/// A String label component.
#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord)]
#[repr(transparent)]
pub struct Label(pub String);

impl crate::Component for Label {
fn name() -> ::std::borrow::Cow<'static, str> {
::std::borrow::Cow::Borrowed("rerun.components.Label")
}

#[allow(clippy::wildcard_imports)]
fn to_arrow_datatype() -> arrow2::datatypes::DataType {
use ::arrow2::datatypes::*;
DataType::Utf8
}
}
18 changes: 18 additions & 0 deletions crates/re_types/src/components/mod.rs
Original file line number Diff line number Diff line change
@@ -1 +1,19 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

mod class_id;
mod color;
mod draw_order;
mod instance_key;
mod keypoint_id;
mod label;
mod point2d;
mod radius;

pub use self::class_id::ClassId;
pub use self::color::Color;
pub use self::draw_order::DrawOrder;
pub use self::instance_key::InstanceKey;
pub use self::keypoint_id::KeypointId;
pub use self::label::Label;
pub use self::point2d::Point2D;
pub use self::radius::Radius;
25 changes: 25 additions & 0 deletions crates/re_types/src/components/point2d.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

/// A point in 2D space.
#[derive(Debug, Default, Clone, Copy, PartialEq, PartialOrd)]
pub struct Point2D(pub crate::datatypes::Vec2D);

impl crate::Component for Point2D {
fn name() -> ::std::borrow::Cow<'static, str> {
::std::borrow::Cow::Borrowed("rerun.components.Point2D")
}

#[allow(clippy::wildcard_imports)]
fn to_arrow_datatype() -> arrow2::datatypes::DataType {
use ::arrow2::datatypes::*;
DataType::FixedSizeList(
Box::new(Field {
name: "item".to_owned(),
data_type: DataType::Float32,
is_nullable: false,
metadata: [].into(),
}),
2,
)
}
}
17 changes: 17 additions & 0 deletions crates/re_types/src/components/radius.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

/// A Radius component.
#[derive(Debug, Clone, Copy, PartialEq, PartialOrd)]
pub struct Radius(pub f32);

impl crate::Component for Radius {
fn name() -> ::std::borrow::Cow<'static, str> {
::std::borrow::Cow::Borrowed("rerun.components.Radius")
}

#[allow(clippy::wildcard_imports)]
fn to_arrow_datatype() -> arrow2::datatypes::DataType {
use ::arrow2::datatypes::*;
DataType::Float32
}
}
4 changes: 4 additions & 0 deletions crates/re_types/src/datatypes/mod.rs
Original file line number Diff line number Diff line change
@@ -1 +1,5 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

mod vec2d;

pub use self::vec2d::Vec2D;
25 changes: 25 additions & 0 deletions crates/re_types/src/datatypes/vec2d.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
// NOTE: This file was autogenerated by re_types_builder; DO NOT EDIT.

/// A vector in 2D space.
#[derive(Debug, Default, Clone, Copy, PartialEq, PartialOrd)]
pub struct Vec2D(pub [f32; 2]);

impl crate::Datatype for Vec2D {
fn name() -> ::std::borrow::Cow<'static, str> {
::std::borrow::Cow::Borrowed("rerun.datatypes.Vec2D")
}

#[allow(clippy::wildcard_imports)]
fn to_arrow_datatype() -> arrow2::datatypes::DataType {
use ::arrow2::datatypes::*;
DataType::FixedSizeList(
Box::new(Field {
name: "item".to_owned(),
data_type: DataType::Float32,
is_nullable: false,
metadata: [].into(),
}),
2,
)
}
}

0 comments on commit f4e03ea

Please sign in to comment.