pub struct ENExposureConfiguration { /* private fields */ }ENCommon only.Expand description
Configuration parameters for exposure detection.
Configuration parameters are used to calculate an exposure duration for each exposure using the following formula.
exposureDuration = ( ( immediateDuration * immediateDurationWeight ) + ( nearDuration * nearDurationWeight ) + ( mediumDuration * mediumDurationWeight ) + ( otherDuration * otherDurationWeight ) ) infectiousnessWeight ) reportTypeWeight )
See also Apple’s documentation
Implementations§
Source§impl ENExposureConfiguration
impl ENExposureConfiguration
Sourcepub unsafe fn immediateDurationWeight(&self) -> c_double
pub unsafe fn immediateDurationWeight(&self) -> c_double
Weights to apply to durations at each proximity level based on attenuation. Range is 0-250%.
Sourcepub unsafe fn setImmediateDurationWeight(
&self,
immediate_duration_weight: c_double,
)
pub unsafe fn setImmediateDurationWeight( &self, immediate_duration_weight: c_double, )
Setter for immediateDurationWeight.
pub unsafe fn nearDurationWeight(&self) -> c_double
Sourcepub unsafe fn setNearDurationWeight(&self, near_duration_weight: c_double)
pub unsafe fn setNearDurationWeight(&self, near_duration_weight: c_double)
Setter for nearDurationWeight.
pub unsafe fn mediumDurationWeight(&self) -> c_double
Sourcepub unsafe fn setMediumDurationWeight(&self, medium_duration_weight: c_double)
pub unsafe fn setMediumDurationWeight(&self, medium_duration_weight: c_double)
Setter for mediumDurationWeight.
pub unsafe fn otherDurationWeight(&self) -> c_double
Sourcepub unsafe fn setOtherDurationWeight(&self, other_duration_weight: c_double)
pub unsafe fn setOtherDurationWeight(&self, other_duration_weight: c_double)
Setter for otherDurationWeight.
Sourcepub unsafe fn infectiousnessForDaysSinceOnsetOfSymptoms(
&self,
) -> Option<Retained<NSDictionary<NSNumber, NSNumber>>>
pub unsafe fn infectiousnessForDaysSinceOnsetOfSymptoms( &self, ) -> Option<Retained<NSDictionary<NSNumber, NSNumber>>>
Maps daysSinceOnsetOfSymptoms to infectiousness. Must be configured if using V2 scoring. Key is a daysSinceOnsetOfSymptoms: -14 to 14. Value is an ENInfectiousness. Defaults to ENInfectiousnessNone for days not specified. If a value is set to ENInfectiousnessNone, diagnosis keys for it should be ignored.
Sourcepub unsafe fn setInfectiousnessForDaysSinceOnsetOfSymptoms(
&self,
infectiousness_for_days_since_onset_of_symptoms: Option<&NSDictionary<NSNumber, NSNumber>>,
)
pub unsafe fn setInfectiousnessForDaysSinceOnsetOfSymptoms( &self, infectiousness_for_days_since_onset_of_symptoms: Option<&NSDictionary<NSNumber, NSNumber>>, )
Setter for infectiousnessForDaysSinceOnsetOfSymptoms.
This is [copied][objc2_foundation::NSCopying::copy] when set.
Sourcepub unsafe fn infectiousnessStandardWeight(&self) -> c_double
pub unsafe fn infectiousnessStandardWeight(&self) -> c_double
Weights to apply for infectiousness. Range is 0-250%.
Sourcepub unsafe fn setInfectiousnessStandardWeight(
&self,
infectiousness_standard_weight: c_double,
)
pub unsafe fn setInfectiousnessStandardWeight( &self, infectiousness_standard_weight: c_double, )
Setter for infectiousnessStandardWeight.
pub unsafe fn infectiousnessHighWeight(&self) -> c_double
Sourcepub unsafe fn setInfectiousnessHighWeight(
&self,
infectiousness_high_weight: c_double,
)
pub unsafe fn setInfectiousnessHighWeight( &self, infectiousness_high_weight: c_double, )
Setter for infectiousnessHighWeight.
Sourcepub unsafe fn reportTypeConfirmedTestWeight(&self) -> c_double
pub unsafe fn reportTypeConfirmedTestWeight(&self) -> c_double
Weights to apply for each report type. Range is 0-250%.
Sourcepub unsafe fn setReportTypeConfirmedTestWeight(
&self,
report_type_confirmed_test_weight: c_double,
)
pub unsafe fn setReportTypeConfirmedTestWeight( &self, report_type_confirmed_test_weight: c_double, )
Setter for reportTypeConfirmedTestWeight.
pub unsafe fn reportTypeConfirmedClinicalDiagnosisWeight(&self) -> c_double
Sourcepub unsafe fn setReportTypeConfirmedClinicalDiagnosisWeight(
&self,
report_type_confirmed_clinical_diagnosis_weight: c_double,
)
pub unsafe fn setReportTypeConfirmedClinicalDiagnosisWeight( &self, report_type_confirmed_clinical_diagnosis_weight: c_double, )
Setter for reportTypeConfirmedClinicalDiagnosisWeight.
pub unsafe fn reportTypeSelfReportedWeight(&self) -> c_double
Sourcepub unsafe fn setReportTypeSelfReportedWeight(
&self,
report_type_self_reported_weight: c_double,
)
pub unsafe fn setReportTypeSelfReportedWeight( &self, report_type_self_reported_weight: c_double, )
Setter for reportTypeSelfReportedWeight.
pub unsafe fn reportTypeRecursiveWeight(&self) -> c_double
Sourcepub unsafe fn setReportTypeRecursiveWeight(
&self,
report_type_recursive_weight: c_double,
)
pub unsafe fn setReportTypeRecursiveWeight( &self, report_type_recursive_weight: c_double, )
Setter for reportTypeRecursiveWeight.
Sourcepub unsafe fn reportTypeNoneMap(&self) -> ENDiagnosisReportType
pub unsafe fn reportTypeNoneMap(&self) -> ENDiagnosisReportType
Maps scenarios when Report Type is not present into one of the available report types. If this is set to ENDiagnosisReportTypeUnknown, the key will be ignored if it does not contain a report type.
Sourcepub unsafe fn setReportTypeNoneMap(
&self,
report_type_none_map: ENDiagnosisReportType,
)
pub unsafe fn setReportTypeNoneMap( &self, report_type_none_map: ENDiagnosisReportType, )
Setter for reportTypeNoneMap.
Sourcepub unsafe fn attenuationDurationThresholds(
&self,
) -> Retained<NSArray<NSNumber>>
pub unsafe fn attenuationDurationThresholds( &self, ) -> Retained<NSArray<NSNumber>>
Thresholds for calculating attenuationDurations. Defaults to [50, 70, 90].
Index |0 |1 |2 Variable |X |Y |Z
Sourcepub unsafe fn setAttenuationDurationThresholds(
&self,
attenuation_duration_thresholds: &NSArray<NSNumber>,
)
pub unsafe fn setAttenuationDurationThresholds( &self, attenuation_duration_thresholds: &NSArray<NSNumber>, )
Setter for attenuationDurationThresholds.
This is [copied][objc2_foundation::NSCopying::copy] when set.
Sourcepub unsafe fn daysSinceLastExposureThreshold(&self) -> NSInteger
pub unsafe fn daysSinceLastExposureThreshold(&self) -> NSInteger
Exclude exposures with daysSinceLastExposure > this value. Defaults to 0 (don’t filter).
Sourcepub unsafe fn setDaysSinceLastExposureThreshold(
&self,
days_since_last_exposure_threshold: NSInteger,
)
pub unsafe fn setDaysSinceLastExposureThreshold( &self, days_since_last_exposure_threshold: NSInteger, )
Setter for daysSinceLastExposureThreshold.
Sourcepub unsafe fn minimumRiskScoreFullRange(&self) -> c_double
pub unsafe fn minimumRiskScoreFullRange(&self) -> c_double
Minimum risk score. Excludes exposure incidents with scores lower than this. Full range and not capped to ENRiskScore.
Sourcepub unsafe fn setMinimumRiskScoreFullRange(
&self,
minimum_risk_score_full_range: c_double,
)
pub unsafe fn setMinimumRiskScoreFullRange( &self, minimum_risk_score_full_range: c_double, )
Setter for minimumRiskScoreFullRange.
pub unsafe fn attenuationLevelValues(&self) -> Retained<NSArray<NSNumber>>
Sourcepub unsafe fn setAttenuationLevelValues(
&self,
attenuation_level_values: &NSArray<NSNumber>,
)
pub unsafe fn setAttenuationLevelValues( &self, attenuation_level_values: &NSArray<NSNumber>, )
Setter for attenuationLevelValues.
This is [copied][objc2_foundation::NSCopying::copy] when set.
pub unsafe fn attenuationWeight(&self) -> c_double
Sourcepub unsafe fn setAttenuationWeight(&self, attenuation_weight: c_double)
pub unsafe fn setAttenuationWeight(&self, attenuation_weight: c_double)
Setter for attenuationWeight.
pub unsafe fn daysSinceLastExposureLevelValues( &self, ) -> Retained<NSArray<NSNumber>>
Sourcepub unsafe fn setDaysSinceLastExposureLevelValues(
&self,
days_since_last_exposure_level_values: &NSArray<NSNumber>,
)
pub unsafe fn setDaysSinceLastExposureLevelValues( &self, days_since_last_exposure_level_values: &NSArray<NSNumber>, )
Setter for daysSinceLastExposureLevelValues.
This is [copied][objc2_foundation::NSCopying::copy] when set.
pub unsafe fn daysSinceLastExposureWeight(&self) -> c_double
Sourcepub unsafe fn setDaysSinceLastExposureWeight(
&self,
days_since_last_exposure_weight: c_double,
)
pub unsafe fn setDaysSinceLastExposureWeight( &self, days_since_last_exposure_weight: c_double, )
Setter for daysSinceLastExposureWeight.
pub unsafe fn durationLevelValues(&self) -> Retained<NSArray<NSNumber>>
Sourcepub unsafe fn setDurationLevelValues(
&self,
duration_level_values: &NSArray<NSNumber>,
)
pub unsafe fn setDurationLevelValues( &self, duration_level_values: &NSArray<NSNumber>, )
Setter for durationLevelValues.
This is [copied][objc2_foundation::NSCopying::copy] when set.
pub unsafe fn durationWeight(&self) -> c_double
Sourcepub unsafe fn setDurationWeight(&self, duration_weight: c_double)
pub unsafe fn setDurationWeight(&self, duration_weight: c_double)
Setter for durationWeight.
pub unsafe fn metadata(&self) -> Option<Retained<NSDictionary>>
Sourcepub unsafe fn setMetadata(&self, metadata: Option<&NSDictionary>)
pub unsafe fn setMetadata(&self, metadata: Option<&NSDictionary>)
pub unsafe fn minimumRiskScore(&self) -> ENRiskScore
Sourcepub unsafe fn setMinimumRiskScore(&self, minimum_risk_score: ENRiskScore)
pub unsafe fn setMinimumRiskScore(&self, minimum_risk_score: ENRiskScore)
Setter for minimumRiskScore.
pub unsafe fn transmissionRiskLevelValues(&self) -> Retained<NSArray<NSNumber>>
Sourcepub unsafe fn setTransmissionRiskLevelValues(
&self,
transmission_risk_level_values: &NSArray<NSNumber>,
)
pub unsafe fn setTransmissionRiskLevelValues( &self, transmission_risk_level_values: &NSArray<NSNumber>, )
Setter for transmissionRiskLevelValues.
This is [copied][objc2_foundation::NSCopying::copy] when set.
pub unsafe fn transmissionRiskWeight(&self) -> c_double
Sourcepub unsafe fn setTransmissionRiskWeight(
&self,
transmission_risk_weight: c_double,
)
pub unsafe fn setTransmissionRiskWeight( &self, transmission_risk_weight: c_double, )
Setter for transmissionRiskWeight.
Methods from Deref<Target = NSObject>§
Sourcepub fn doesNotRecognizeSelector(&self, sel: Sel) -> !
pub fn doesNotRecognizeSelector(&self, sel: Sel) -> !
Handle messages the object doesn’t recognize.
See Apple’s documentation for details.
Methods from Deref<Target = AnyObject>§
Sourcepub fn class(&self) -> &'static AnyClass
pub fn class(&self) -> &'static AnyClass
Dynamically find the class of this object.
§Panics
May panic if the object is invalid (which may be the case for objects
returned from unavailable init/new methods).
§Example
Check that an instance of NSObject has the precise class NSObject.
use objc2::ClassType;
use objc2::runtime::NSObject;
let obj = NSObject::new();
assert_eq!(obj.class(), NSObject::class());Sourcepub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
👎Deprecated: this is difficult to use correctly, use Ivar::load instead.
pub unsafe fn get_ivar<T>(&self, name: &str) -> &Twhere
T: Encode,
Ivar::load instead.Use Ivar::load instead.
§Safety
The object must have an instance variable with the given name, and it
must be of type T.
See Ivar::load_ptr for details surrounding this.
Sourcepub fn downcast_ref<T>(&self) -> Option<&T>where
T: DowncastTarget,
pub fn downcast_ref<T>(&self) -> Option<&T>where
T: DowncastTarget,
Attempt to downcast the object to a class of type T.
This is the reference-variant. Use Retained::downcast if you want
to convert a retained object to another type.
§Mutable classes
Some classes have immutable and mutable variants, such as NSString
and NSMutableString.
When some Objective-C API signature says it gives you an immutable class, it generally expects you to not mutate that, even though it may technically be mutable “under the hood”.
So using this method to convert a NSString to a NSMutableString,
while not unsound, is generally frowned upon unless you created the
string yourself, or the API explicitly documents the string to be
mutable.
See Apple’s documentation on mutability and on
isKindOfClass: for more details.
§Generic classes
Objective-C generics are called “lightweight generics”, and that’s because they aren’t exposed in the runtime. This makes it impossible to safely downcast to generic collections, so this is disallowed by this method.
You can, however, safely downcast to generic collections where all the
type-parameters are AnyObject.
§Panics
This works internally by calling isKindOfClass:. That means that the
object must have the instance method of that name, and an exception
will be thrown (if CoreFoundation is linked) or the process will abort
if that is not the case. In the vast majority of cases, you don’t need
to worry about this, since both root objects NSObject and
NSProxy implement this method.
§Examples
Cast an NSString back and forth from NSObject.
use objc2::rc::Retained;
use objc2_foundation::{NSObject, NSString};
let obj: Retained<NSObject> = NSString::new().into_super();
let string = obj.downcast_ref::<NSString>().unwrap();
// Or with `downcast`, if we do not need the object afterwards
let string = obj.downcast::<NSString>().unwrap();Try (and fail) to cast an NSObject to an NSString.
use objc2_foundation::{NSObject, NSString};
let obj = NSObject::new();
assert!(obj.downcast_ref::<NSString>().is_none());Try to cast to an array of strings.
use objc2_foundation::{NSArray, NSObject, NSString};
let arr = NSArray::from_retained_slice(&[NSObject::new()]);
// This is invalid and doesn't type check.
let arr = arr.downcast_ref::<NSArray<NSString>>();This fails to compile, since it would require enumerating over the array to ensure that each element is of the desired type, which is a performance pitfall.
Downcast when processing each element instead.
use objc2_foundation::{NSArray, NSObject, NSString};
let arr = NSArray::from_retained_slice(&[NSObject::new()]);
for elem in arr {
if let Some(data) = elem.downcast_ref::<NSString>() {
// handle `data`
}
}Trait Implementations§
Source§impl AsRef<AnyObject> for ENExposureConfiguration
impl AsRef<AnyObject> for ENExposureConfiguration
Source§impl AsRef<NSObject> for ENExposureConfiguration
impl AsRef<NSObject> for ENExposureConfiguration
Source§impl Borrow<AnyObject> for ENExposureConfiguration
impl Borrow<AnyObject> for ENExposureConfiguration
Source§impl Borrow<NSObject> for ENExposureConfiguration
impl Borrow<NSObject> for ENExposureConfiguration
Source§impl ClassType for ENExposureConfiguration
impl ClassType for ENExposureConfiguration
Source§const NAME: &'static str = "ENExposureConfiguration"
const NAME: &'static str = "ENExposureConfiguration"
Source§type ThreadKind = <<ENExposureConfiguration as ClassType>::Super as ClassType>::ThreadKind
type ThreadKind = <<ENExposureConfiguration as ClassType>::Super as ClassType>::ThreadKind
Source§impl Debug for ENExposureConfiguration
impl Debug for ENExposureConfiguration
Source§impl Deref for ENExposureConfiguration
impl Deref for ENExposureConfiguration
Source§impl Hash for ENExposureConfiguration
impl Hash for ENExposureConfiguration
Source§impl Message for ENExposureConfiguration
impl Message for ENExposureConfiguration
Source§impl NSObjectProtocol for ENExposureConfiguration
impl NSObjectProtocol for ENExposureConfiguration
Source§fn isEqual(&self, other: Option<&AnyObject>) -> bool
fn isEqual(&self, other: Option<&AnyObject>) -> bool
Source§fn hash(&self) -> usize
fn hash(&self) -> usize
Source§fn isKindOfClass(&self, cls: &AnyClass) -> bool
fn isKindOfClass(&self, cls: &AnyClass) -> bool
Source§fn is_kind_of<T>(&self) -> bool
fn is_kind_of<T>(&self) -> bool
isKindOfClass directly, or cast your objects with AnyObject::downcast_ref