pub struct UniformNoiseCodec {
pub scale: f64,
pub seed: u64,
}
Expand description
Codec that adds seed
ed U(-scale/2, scale/2)
uniform noise of the given
scale
during encoding and passes through the input unchanged during
decoding.
This codec first hashes the input array data and shape to then seed a
pseudo-random number generator that generates the uniform noise. Therefore,
passing in the same input with the same seed
will produce the same noise
and thus the same encoded output.
Fields§
§scale: f64
Scale of the uniform noise, which is sampled from
U(-scale/2, +scale/2)
seed: u64
Seed for the random noise generator
Trait Implementations§
Source§impl Clone for UniformNoiseCodec
impl Clone for UniformNoiseCodec
Source§fn clone(&self) -> UniformNoiseCodec
fn clone(&self) -> UniformNoiseCodec
Returns a copy 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 Codec for UniformNoiseCodec
impl Codec for UniformNoiseCodec
Source§fn encode(&self, data: AnyCowArray<'_>) -> Result<AnyArray, Self::Error>
fn encode(&self, data: AnyCowArray<'_>) -> Result<AnyArray, Self::Error>
Encodes the
data
and returns the result. Read moreSource§fn decode(&self, encoded: AnyCowArray<'_>) -> Result<AnyArray, Self::Error>
fn decode(&self, encoded: AnyCowArray<'_>) -> Result<AnyArray, Self::Error>
Decodes the
encoded
data and returns the result. Read moreSource§fn decode_into(
&self,
encoded: AnyArrayView<'_>,
decoded: AnyArrayViewMut<'_>,
) -> Result<(), Self::Error>
fn decode_into( &self, encoded: AnyArrayView<'_>, decoded: AnyArrayViewMut<'_>, ) -> Result<(), Self::Error>
Source§impl<'de> Deserialize<'de> for UniformNoiseCodec
impl<'de> Deserialize<'de> for UniformNoiseCodec
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl JsonSchema for UniformNoiseCodec
impl JsonSchema for UniformNoiseCodec
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
§fn always_inline_schema() -> bool
fn always_inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref
keyword. Read moreSource§impl Serialize for UniformNoiseCodec
impl Serialize for UniformNoiseCodec
Source§impl StaticCodec for UniformNoiseCodec
impl StaticCodec for UniformNoiseCodec
Source§type Config<'de> = UniformNoiseCodec
type Config<'de> = UniformNoiseCodec
Configuration type, from which the codec can be created infallibly. Read more
Source§fn from_config(config: Self::Config<'_>) -> Self
fn from_config(config: Self::Config<'_>) -> Self
Instantiate a codec from its
config
uration.Source§fn get_config(&self) -> StaticCodecConfig<'_, Self>
fn get_config(&self) -> StaticCodecConfig<'_, Self>
Get the configuration for this codec. Read more
Auto Trait Implementations§
impl Freeze for UniformNoiseCodec
impl RefUnwindSafe for UniformNoiseCodec
impl Send for UniformNoiseCodec
impl Sync for UniformNoiseCodec
impl Unpin for UniformNoiseCodec
impl UnwindSafe for UniformNoiseCodec
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> DynCodec for Twhere
T: StaticCodec,
impl<T> DynCodec for Twhere
T: StaticCodec,
Source§type Type = StaticCodecType<T>
type Type = StaticCodecType<T>
Type object type for this codec.
Source§fn get_config<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn get_config<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
Serializes the configuration parameters for this codec. Read more
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