#[repr(C, align(64))]pub struct GpuPatternMatch {
pub pattern_type: u8,
pub severity: u8,
pub activity_count: u8,
pub flags: u8,
pub activity_ids: [u32; 8],
pub confidence: f32,
pub frequency: u32,
pub avg_duration_ms: f32,
pub impact: f32,
pub _reserved: [u8; 4],
}Expand description
GPU-compatible pattern match (64 bytes, cache-line aligned).
Fields§
§pattern_type: u8Pattern type.
severity: u8Severity level.
activity_count: u8Number of activities in the pattern.
flags: u8Status flags.
activity_ids: [u32; 8]Activity IDs involved (up to 8).
confidence: f32Detection confidence (0.0 - 1.0).
frequency: u32Pattern frequency (how many times detected).
avg_duration_ms: f32Average duration of the pattern (ms).
impact: f32Impact score (0.0 - 1.0).
_reserved: [u8; 4]Reserved.
Implementations§
Source§impl GpuPatternMatch
impl GpuPatternMatch
Sourcepub fn new(pattern_type: PatternType, severity: PatternSeverity) -> Self
pub fn new(pattern_type: PatternType, severity: PatternSeverity) -> Self
Create a new pattern match.
Sourcepub fn get_pattern_type(&self) -> PatternType
pub fn get_pattern_type(&self) -> PatternType
Get the pattern type.
Sourcepub fn get_severity(&self) -> PatternSeverity
pub fn get_severity(&self) -> PatternSeverity
Get the severity level.
Sourcepub fn add_activity(&mut self, activity_id: ActivityId)
pub fn add_activity(&mut self, activity_id: ActivityId)
Add an activity to the pattern.
Sourcepub fn activities(&self) -> &[u32]
pub fn activities(&self) -> &[u32]
Get activities involved in the pattern.
Sourcepub fn with_metrics(
self,
confidence: f32,
frequency: u32,
avg_duration: f32,
) -> Self
pub fn with_metrics( self, confidence: f32, frequency: u32, avg_duration: f32, ) -> Self
Set confidence and impact based on pattern type.
Trait Implementations§
Source§impl Archive for GpuPatternMatch
impl Archive for GpuPatternMatch
Source§type Archived = ArchivedGpuPatternMatch
type Archived = ArchivedGpuPatternMatch
The archived representation of this type. Read more
Source§type Resolver = GpuPatternMatchResolver
type Resolver = GpuPatternMatchResolver
The resolver for this type. It must contain all the additional information from serializing
needed to make the archived type from the normal type.
Source§impl Clone for GpuPatternMatch
impl Clone for GpuPatternMatch
Source§fn clone(&self) -> GpuPatternMatch
fn clone(&self) -> GpuPatternMatch
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for GpuPatternMatch
impl Debug for GpuPatternMatch
Source§impl Default for GpuPatternMatch
impl Default for GpuPatternMatch
Source§fn default() -> GpuPatternMatch
fn default() -> GpuPatternMatch
Returns the “default value” for a type. Read more
Source§impl<__D: Fallible + ?Sized> Deserialize<GpuPatternMatch, __D> for Archived<GpuPatternMatch>
impl<__D: Fallible + ?Sized> Deserialize<GpuPatternMatch, __D> for Archived<GpuPatternMatch>
Source§fn deserialize(
&self,
deserializer: &mut __D,
) -> Result<GpuPatternMatch, __D::Error>
fn deserialize( &self, deserializer: &mut __D, ) -> Result<GpuPatternMatch, __D::Error>
Deserializes using the given deserializer
impl Copy for GpuPatternMatch
Auto Trait Implementations§
impl Freeze for GpuPatternMatch
impl RefUnwindSafe for GpuPatternMatch
impl Send for GpuPatternMatch
impl Sync for GpuPatternMatch
impl Unpin for GpuPatternMatch
impl UnwindSafe for GpuPatternMatch
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> ArchiveUnsized for Twhere
T: Archive,
impl<T> ArchiveUnsized for Twhere
T: Archive,
Source§type Archived = <T as Archive>::Archived
type Archived = <T as Archive>::Archived
The archived counterpart of this type. Unlike
Archive, it may be unsized. Read moreSource§type MetadataResolver = ()
type MetadataResolver = ()
The resolver for the metadata of this type. Read more
Source§unsafe fn resolve_metadata(
&self,
_: usize,
_: <T as ArchiveUnsized>::MetadataResolver,
_: *mut <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata,
)
unsafe fn resolve_metadata( &self, _: usize, _: <T as ArchiveUnsized>::MetadataResolver, _: *mut <<T as ArchiveUnsized>::Archived as ArchivePointee>::ArchivedMetadata, )
Creates the archived version of the metadata for this value at the given position and writes
it to the given output. Read more
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
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.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Gets the layout of the type.