Skip to main content

Identification

Struct Identification 

Source
pub struct Identification {
    pub interchange: InterchangeObjectFields,
    pub this_generation_uid: UlBytes,
    pub company_name: String,
    pub product_name: String,
    pub product_version: Option<ProductVersion>,
    pub version_string: String,
    pub product_uid: UlBytes,
    pub modification_date: MxfTimestamp,
    pub toolkit_version: Option<ProductVersion>,
    pub platform: Option<String>,
    pub dark: Vec<(u16, Vec<u8>)>,
}
Expand description

The Identification Set — SMPTE ST 377-1:2019 Annex A.3: one instance per application/device that has created or modified the file (§7.5.2), each referenced from the Preface’s Identifications array.

Per A.3’s closing note, the Interchange Object’s optional Generation UID property “shall not be encoded in Identification Set instances” — this crate does not enforce that at parse time (a non-conformant file is still identified, not rejected); callers constructing a fresh Identification should simply leave interchange.generation_uid as None.

Fields§

§interchange: InterchangeObjectFields

Interchange Object (A.1) base properties.

§this_generation_uid: UlBytes

This Generation UID (0x3C09, Req) — referenced by other Sets’ optional Generation UID property (§7.5.2).

§company_name: String

Company Name (0x3C01, Req).

§product_name: String

Product Name (0x3C02, Req).

§product_version: Option<ProductVersion>

Product Version (0x3C03, Opt).

§version_string: String

Version String (0x3C04, Req).

§product_uid: UlBytes

Product UID (0x3C05, Req).

§modification_date: MxfTimestamp

Modification Date (0x3C06, Req).

§toolkit_version: Option<ProductVersion>

Toolkit Version (0x3C07, Opt).

§platform: Option<String>

Platform (0x3C08, Opt).

§dark: Vec<(u16, Vec<u8>)>

Every other property found on parse (private/dark extension).

Trait Implementations§

Source§

impl Clone for Identification

Source§

fn clone(&self) -> Identification

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Identification

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for Identification

Source§

impl<'a> Parse<'a> for Identification

Source§

type Error = Error

The error type this implementer returns. Typically the enclosing crate’s Error enum.
Source§

fn parse(bytes: &'a [u8]) -> Result<Self>

Parse bytes as Self. Returns Err(Self::Error) on any protocol violation or buffer underrun.
Source§

impl PartialEq for Identification

Source§

fn eq(&self, other: &Identification) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl Serialize for Identification

Source§

type Error = Error

The error type this implementer returns (usually the same as the corresponding Parse impl, but need not be).
Source§

fn serialized_len(&self) -> usize

Number of bytes serialize_into will write.
Source§

fn serialize_into(&self, buf: &mut [u8]) -> Result<usize>

Write the serialised form into buf. Returns the number of bytes written (always equal to serialized_len()).
Source§

fn to_bytes(&self) -> Vec<u8>
where Self::Error: Debug,

Convenience: allocate a Vec and serialise into it. Read more
Source§

impl StructuralPartialEq for Identification

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.