Struct veloren_common_net::sync::UpdateTracker
source · pub struct UpdateTracker<C: Component> {
reader_id: ReaderId<ComponentEvent>,
inserted: BitSet,
modified: BitSet,
removed: BitSet,
phantom: PhantomData<C>,
}
Fields§
§reader_id: ReaderId<ComponentEvent>
§inserted: BitSet
§modified: BitSet
§removed: BitSet
§phantom: PhantomData<C>
Implementations§
source§impl<C: Component> UpdateTracker<C>where
C::Storage: Tracked,
impl<C: Component> UpdateTracker<C>where
C::Storage: Tracked,
source§impl<C: Component + Clone + Send + Sync> UpdateTracker<C>
impl<C: Component + Clone + Send + Sync> UpdateTracker<C>
pub fn add_packet_for<P>(
&self,
storage: &ReadStorage<'_, C>,
entity: Entity,
packets: &mut Vec<P>,
)where
P: CompPacket + From<C>,
C: TryFrom<P>,
P::Phantom: From<PhantomData<C>> + TryInto<PhantomData<C>>,
C::Storage: Tracked,
pub fn get_updates_for<P>(
&self,
uids: &ReadStorage<'_, Uid>,
storage: &ReadStorage<'_, C>,
entity_filter: impl Join + Copy,
buf: &mut Vec<(u64, CompUpdateKind<P>)>,
)where
P: CompPacket + From<C>,
C: TryFrom<P>,
P::Phantom: From<PhantomData<C>> + TryInto<PhantomData<C>>,
C::Storage: Tracked,
sourcepub fn get_update<P>(
&self,
storage: &ReadStorage<'_, C>,
entity: Entity,
) -> Option<CompUpdateKind<P>>where
P: CompPacket + From<C>,
C: TryFrom<P>,
P::Phantom: From<PhantomData<C>> + TryInto<PhantomData<C>>,
C::Storage: Tracked,
pub fn get_update<P>(
&self,
storage: &ReadStorage<'_, C>,
entity: Entity,
) -> Option<CompUpdateKind<P>>where
P: CompPacket + From<C>,
C: TryFrom<P>,
P::Phantom: From<PhantomData<C>> + TryInto<PhantomData<C>>,
C::Storage: Tracked,
Returns Some(update)
if the tracked component was modified for this
entity.
Auto Trait Implementations§
impl<C> Freeze for UpdateTracker<C>
impl<C> RefUnwindSafe for UpdateTracker<C>where
C: RefUnwindSafe,
impl<C> Send for UpdateTracker<C>where
C: Send,
impl<C> Sync for UpdateTracker<C>where
C: Sync,
impl<C> Unpin for UpdateTracker<C>where
C: Unpin,
impl<C> UnwindSafe for UpdateTracker<C>where
C: UnwindSafe,
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
Mutably borrows from an owned value. Read more
§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>
Converts
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>
Converts
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