Struct re_types::blueprint::archetypes::ViewContents
source · pub struct ViewContents {
pub query: Option<SerializedComponentBatch>,
}
Expand description
Archetype: The contents of a View
.
The contents are found by combining a collection of QueryExpression
s.
+ /world/** # add everything…
- /world/roads/** # …but remove all roads…
+ /world/roads/main # …but show main road
If there is multiple matching rules, the most specific rule wins. If there are multiple rules of the same specificity, the last one wins. If no rules match, the path is excluded.
Specifying a path without a +
or -
prefix is equivalent to +
:
/world/** # add everything…
- /world/roads/** # …but remove all roads…
/world/roads/main # …but show main road
The /**
suffix matches the whole subtree, i.e. self and any child, recursively
(/world/**
matches both /world
and /world/car/driver
).
Other uses of *
are not (yet) supported.
Internally, EntityPathFilter
sorts the rule by entity path, with recursive coming before non-recursive.
This means the last matching rule is also the most specific one. For instance:
+ /world/**
- /world
- /world/car/**
+ /world/car/driver
The last rule matching /world/car/driver
is + /world/car/driver
, so it is included.
The last rule matching /world/car/hood
is - /world/car/**
, so it is excluded.
The last rule matching /world
is - /world
, so it is excluded.
The last rule matching /world/house
is + /world/**
, so it is included.
Fields§
§query: Option<SerializedComponentBatch>
The QueryExpression
that populates the contents for the view.
They determine which entities are part of the view.
Implementations§
source§impl ViewContents
impl ViewContents
sourcepub fn descriptor_query() -> ComponentDescriptor
pub fn descriptor_query() -> ComponentDescriptor
Returns the ComponentDescriptor
for Self::query
.
sourcepub fn descriptor_indicator() -> ComponentDescriptor
pub fn descriptor_indicator() -> ComponentDescriptor
Returns the ComponentDescriptor
for the associated indicator component.
source§impl ViewContents
impl ViewContents
sourcepub const NUM_COMPONENTS: usize = 2usize
pub const NUM_COMPONENTS: usize = 2usize
The total number of components in the archetype: 0 required, 1 recommended, 1 optional
source§impl ViewContents
impl ViewContents
sourcepub fn new(query: impl IntoIterator<Item = impl Into<QueryExpression>>) -> Self
pub fn new(query: impl IntoIterator<Item = impl Into<QueryExpression>>) -> Self
Create a new ViewContents
.
sourcepub fn update_fields() -> Self
pub fn update_fields() -> Self
Update only some specific fields of a ViewContents
.
sourcepub fn clear_fields() -> Self
pub fn clear_fields() -> Self
Clear all the fields of a ViewContents
.
sourcepub fn with_query(
self,
query: impl IntoIterator<Item = impl Into<QueryExpression>>,
) -> Self
pub fn with_query( self, query: impl IntoIterator<Item = impl Into<QueryExpression>>, ) -> Self
The QueryExpression
that populates the contents for the view.
They determine which entities are part of the view.
Trait Implementations§
source§impl Archetype for ViewContents
impl Archetype for ViewContents
§type Indicator = GenericIndicatorComponent<ViewContents>
type Indicator = GenericIndicatorComponent<ViewContents>
source§fn name() -> ArchetypeName
fn name() -> ArchetypeName
rerun.archetypes.Points2D
.source§fn display_name() -> &'static str
fn display_name() -> &'static str
source§fn required_components() -> Cow<'static, [ComponentDescriptor]>
fn required_components() -> Cow<'static, [ComponentDescriptor]>
source§fn recommended_components() -> Cow<'static, [ComponentDescriptor]>
fn recommended_components() -> Cow<'static, [ComponentDescriptor]>
source§fn optional_components() -> Cow<'static, [ComponentDescriptor]>
fn optional_components() -> Cow<'static, [ComponentDescriptor]>
source§fn all_components() -> Cow<'static, [ComponentDescriptor]>
fn all_components() -> Cow<'static, [ComponentDescriptor]>
source§fn from_arrow_components(
arrow_data: impl IntoIterator<Item = (ComponentDescriptor, ArrayRef)>,
) -> DeserializationResult<Self>
fn from_arrow_components( arrow_data: impl IntoIterator<Item = (ComponentDescriptor, ArrayRef)>, ) -> DeserializationResult<Self>
ComponentNames
, deserializes them
into this archetype. Read moresource§fn from_arrow(
data: impl IntoIterator<Item = (Field, Arc<dyn Array>)>,
) -> Result<Self, DeserializationError>where
Self: Sized,
fn from_arrow(
data: impl IntoIterator<Item = (Field, Arc<dyn Array>)>,
) -> Result<Self, DeserializationError>where
Self: Sized,
source§impl AsComponents for ViewContents
impl AsComponents for ViewContents
source§fn as_serialized_batches(&self) -> Vec<SerializedComponentBatch>
fn as_serialized_batches(&self) -> Vec<SerializedComponentBatch>
SerializedComponentBatch
es. Read moresource§impl Clone for ViewContents
impl Clone for ViewContents
source§fn clone(&self) -> ViewContents
fn clone(&self) -> ViewContents
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for ViewContents
impl Debug for ViewContents
source§impl Default for ViewContents
impl Default for ViewContents
source§fn default() -> ViewContents
fn default() -> ViewContents
source§impl SizeBytes for ViewContents
impl SizeBytes for ViewContents
source§fn heap_size_bytes(&self) -> u64
fn heap_size_bytes(&self) -> u64
self
uses on the heap. Read moresource§fn total_size_bytes(&self) -> u64
fn total_size_bytes(&self) -> u64
self
in bytes, accounting for both stack and heap space.source§fn stack_size_bytes(&self) -> u64
fn stack_size_bytes(&self) -> u64
self
on the stack, in bytes. Read moreimpl ArchetypeReflectionMarker for ViewContents
Auto Trait Implementations§
impl Freeze for ViewContents
impl !RefUnwindSafe for ViewContents
impl Send for ViewContents
impl Sync for ViewContents
impl Unpin for ViewContents
impl !UnwindSafe for ViewContents
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more