Struct re_query::EntityView
source · pub struct EntityView<Primary: Component> { /* private fields */ }Expand description
A view of an entity at a particular point in time returned by crate::get_component_with_instances
EntityView has a special primary Component which determines the length of an entity
batch. When iterating over individual components, they will be implicitly joined onto
the primary component using instance keys.
Implementations§
source§impl<Primary> EntityView<Primary>where
Primary: Component,
impl<Primary> EntityView<Primary>where Primary: Component,
source§impl<Primary: SerializableComponent + DeserializableComponent> EntityView<Primary>where
for<'a> &'a Primary::ArrayType: IntoIterator,
impl<Primary: SerializableComponent + DeserializableComponent> EntityView<Primary>where for<'a> &'a Primary::ArrayType: IntoIterator,
sourcepub fn iter_instance_keys(
&self
) -> Result<impl Iterator<Item = InstanceKey> + '_>
pub fn iter_instance_keys( &self ) -> Result<impl Iterator<Item = InstanceKey> + '_>
Iterate over the instance keys
sourcepub fn iter_primary(&self) -> Result<impl Iterator<Item = Option<Primary>> + '_>
pub fn iter_primary(&self) -> Result<impl Iterator<Item = Option<Primary>> + '_>
Iterate over the primary component values.
sourcepub fn iter_primary_flattened(&self) -> impl Iterator<Item = Primary> + '_
pub fn iter_primary_flattened(&self) -> impl Iterator<Item = Primary> + '_
Iterate over the flattened list of primary component values if any.
sourcepub fn has_component<C: Component>(&self) -> bool
pub fn has_component<C: Component>(&self) -> bool
Check if the entity has a component and its not empty
sourcepub fn iter_component<C: DeserializableComponent + Clone>(
&self
) -> Result<impl Iterator<Item = Option<C>> + '_>where
for<'b> &'b C::ArrayType: IntoIterator,
pub fn iter_component<C: DeserializableComponent + Clone>( &self ) -> Result<impl Iterator<Item = Option<C>> + '_>where for<'b> &'b C::ArrayType: IntoIterator,
Iterate over the values of a Component.
Always produces an iterator of length self.primary.len()
sourcepub fn from_native(c0: (&[InstanceKey], &[Primary])) -> Self
pub fn from_native(c0: (&[InstanceKey], &[Primary])) -> Self
Helper function to produce an EntityView from rust-native field_types
sourcepub fn from_native2<C>(
primary: (&[InstanceKey], &[Primary]),
component: (&[InstanceKey], &[C])
) -> Selfwhere
C: Component + 'static + ArrowSerialize + ArrowField<Type = C>,
pub fn from_native2<C>( primary: (&[InstanceKey], &[Primary]), component: (&[InstanceKey], &[C]) ) -> Selfwhere C: Component + 'static + ArrowSerialize + ArrowField<Type = C>,
Helper function to produce an EntityView from rust-native field_types
source§impl<Primary: SerializableComponent + DeserializableComponent> EntityView<Primary>where
for<'a> &'a Primary::ArrayType: IntoIterator,
impl<Primary: SerializableComponent + DeserializableComponent> EntityView<Primary>where for<'a> &'a Primary::ArrayType: IntoIterator,
sourcepub fn visit1(&self, visit: impl FnMut(InstanceKey, Primary)) -> Result<()>
pub fn visit1(&self, visit: impl FnMut(InstanceKey, Primary)) -> Result<()>
Visit the primary component of an EntityView. See crate::visit
sourcepub fn visit2<C1>(
&self,
visit: impl FnMut(InstanceKey, Primary, Option<C1>)
) -> Result<()>where
C1: Clone + DeserializableComponent + Component,
for<'a> &'a C1::ArrayType: IntoIterator,
pub fn visit2<C1>( &self, visit: impl FnMut(InstanceKey, Primary, Option<C1>) ) -> Result<()>where C1: Clone + DeserializableComponent + Component, for<'a> &'a C1::ArrayType: IntoIterator,
Visit the primary component of an EntityView. See crate::visit
sourcepub fn visit3<C1, C2>(
&self,
visit: impl FnMut(InstanceKey, Primary, Option<C1>, Option<C2>)
) -> Result<()>where
C1: Clone + DeserializableComponent + Component,
for<'a> &'a C1::ArrayType: IntoIterator,
C2: Clone + DeserializableComponent + Component,
for<'a> &'a C2::ArrayType: IntoIterator,
pub fn visit3<C1, C2>( &self, visit: impl FnMut(InstanceKey, Primary, Option<C1>, Option<C2>) ) -> Result<()>where C1: Clone + DeserializableComponent + Component, for<'a> &'a C1::ArrayType: IntoIterator, C2: Clone + DeserializableComponent + Component, for<'a> &'a C2::ArrayType: IntoIterator,
Visit the primary component of an EntityView. See crate::visit
sourcepub fn visit4<C1, C2, C3>(
&self,
visit: impl FnMut(InstanceKey, Primary, Option<C1>, Option<C2>, Option<C3>)
) -> Result<()>where
C1: Clone + DeserializableComponent + Component,
for<'a> &'a C1::ArrayType: IntoIterator,
C2: Clone + DeserializableComponent + Component,
for<'a> &'a C2::ArrayType: IntoIterator,
C3: Clone + DeserializableComponent + Component,
for<'a> &'a C3::ArrayType: IntoIterator,
pub fn visit4<C1, C2, C3>( &self, visit: impl FnMut(InstanceKey, Primary, Option<C1>, Option<C2>, Option<C3>) ) -> Result<()>where C1: Clone + DeserializableComponent + Component, for<'a> &'a C1::ArrayType: IntoIterator, C2: Clone + DeserializableComponent + Component, for<'a> &'a C2::ArrayType: IntoIterator, C3: Clone + DeserializableComponent + Component, for<'a> &'a C3::ArrayType: IntoIterator,
Visit the primary component of an EntityView. See crate::visit
sourcepub fn visit5<C1, C2, C3, C4>(
&self,
visit: impl FnMut(InstanceKey, Primary, Option<C1>, Option<C2>, Option<C3>, Option<C4>)
) -> Result<()>where
C1: Clone + DeserializableComponent + Component,
for<'a> &'a C1::ArrayType: IntoIterator,
C2: Clone + DeserializableComponent + Component,
for<'a> &'a C2::ArrayType: IntoIterator,
C3: Clone + DeserializableComponent + Component,
for<'a> &'a C3::ArrayType: IntoIterator,
C4: Clone + DeserializableComponent + Component,
for<'a> &'a C4::ArrayType: IntoIterator,
pub fn visit5<C1, C2, C3, C4>( &self, visit: impl FnMut(InstanceKey, Primary, Option<C1>, Option<C2>, Option<C3>, Option<C4>) ) -> Result<()>where C1: Clone + DeserializableComponent + Component, for<'a> &'a C1::ArrayType: IntoIterator, C2: Clone + DeserializableComponent + Component, for<'a> &'a C2::ArrayType: IntoIterator, C3: Clone + DeserializableComponent + Component, for<'a> &'a C3::ArrayType: IntoIterator, C4: Clone + DeserializableComponent + Component, for<'a> &'a C4::ArrayType: IntoIterator,
Visit the primary component of an EntityView. See crate::visit
sourcepub fn visit6<C1, C2, C3, C4, C5>(
&self,
visit: impl FnMut(InstanceKey, Primary, Option<C1>, Option<C2>, Option<C3>, Option<C4>, Option<C5>)
) -> Result<()>where
C1: Clone + DeserializableComponent + Component,
for<'a> &'a C1::ArrayType: IntoIterator,
C2: Clone + DeserializableComponent + Component,
for<'a> &'a C2::ArrayType: IntoIterator,
C3: Clone + DeserializableComponent + Component,
for<'a> &'a C3::ArrayType: IntoIterator,
C4: Clone + DeserializableComponent + Component,
for<'a> &'a C4::ArrayType: IntoIterator,
C5: Clone + DeserializableComponent + Component,
for<'a> &'a C5::ArrayType: IntoIterator,
pub fn visit6<C1, C2, C3, C4, C5>( &self, visit: impl FnMut(InstanceKey, Primary, Option<C1>, Option<C2>, Option<C3>, Option<C4>, Option<C5>) ) -> Result<()>where C1: Clone + DeserializableComponent + Component, for<'a> &'a C1::ArrayType: IntoIterator, C2: Clone + DeserializableComponent + Component, for<'a> &'a C2::ArrayType: IntoIterator, C3: Clone + DeserializableComponent + Component, for<'a> &'a C3::ArrayType: IntoIterator, C4: Clone + DeserializableComponent + Component, for<'a> &'a C4::ArrayType: IntoIterator, C5: Clone + DeserializableComponent + Component, for<'a> &'a C5::ArrayType: IntoIterator,
Visit the primary component of an EntityView. See crate::visit
sourcepub fn visit7<C1, C2, C3, C4, C5, C6>(
&self,
visit: impl FnMut(InstanceKey, Primary, Option<C1>, Option<C2>, Option<C3>, Option<C4>, Option<C5>, Option<C6>)
) -> Result<()>where
C1: Clone + DeserializableComponent + Component,
for<'a> &'a C1::ArrayType: IntoIterator,
C2: Clone + DeserializableComponent + Component,
for<'a> &'a C2::ArrayType: IntoIterator,
C3: Clone + DeserializableComponent + Component,
for<'a> &'a C3::ArrayType: IntoIterator,
C4: Clone + DeserializableComponent + Component,
for<'a> &'a C4::ArrayType: IntoIterator,
C5: Clone + DeserializableComponent + Component,
for<'a> &'a C5::ArrayType: IntoIterator,
C6: Clone + DeserializableComponent + Component,
for<'a> &'a C6::ArrayType: IntoIterator,
pub fn visit7<C1, C2, C3, C4, C5, C6>( &self, visit: impl FnMut(InstanceKey, Primary, Option<C1>, Option<C2>, Option<C3>, Option<C4>, Option<C5>, Option<C6>) ) -> Result<()>where C1: Clone + DeserializableComponent + Component, for<'a> &'a C1::ArrayType: IntoIterator, C2: Clone + DeserializableComponent + Component, for<'a> &'a C2::ArrayType: IntoIterator, C3: Clone + DeserializableComponent + Component, for<'a> &'a C3::ArrayType: IntoIterator, C4: Clone + DeserializableComponent + Component, for<'a> &'a C4::ArrayType: IntoIterator, C5: Clone + DeserializableComponent + Component, for<'a> &'a C5::ArrayType: IntoIterator, C6: Clone + DeserializableComponent + Component, for<'a> &'a C6::ArrayType: IntoIterator,
Visit the primary component of an EntityView. See crate::visit
source§impl<Primary> EntityView<Primary>where
Primary: SerializableComponent + DeserializableComponent,
for<'a> &'a Primary::ArrayType: IntoIterator,
impl<Primary> EntityView<Primary>where Primary: SerializableComponent + DeserializableComponent, for<'a> &'a Primary::ArrayType: IntoIterator,
pub fn as_df1(&self) -> Result<DataFrame>
pub fn as_df2<C1>(&self) -> Result<DataFrame>where C1: SerializableComponent + DeserializableComponent + Clone, for<'a> &'a C1::ArrayType: IntoIterator,
Trait Implementations§
source§impl<Primary: Clone + Component> Clone for EntityView<Primary>
impl<Primary: Clone + Component> Clone for EntityView<Primary>
source§fn clone(&self) -> EntityView<Primary>
fn clone(&self) -> EntityView<Primary>
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more