pub const MMTF_METADATA_EXTENSION: &str = "molframe.mmtf.metadata.v1";
#[derive(Clone, Debug, PartialEq, Eq)]
pub struct MmtfGroupMetadata {
pub name: Box<str>,
pub atom_names: Vec<Box<str>>,
pub elements: Option<Vec<Box<str>>>,
pub single_letter_code: Box<str>,
pub chem_comp_type: Box<str>,
}
#[derive(Clone, Debug, PartialEq, Eq)]
pub struct MmtfEntityMetadata {
pub description: Box<str>,
pub kind: Box<str>,
pub sequence: Box<str>,
}
#[derive(Clone, Debug, Default, PartialEq, Eq)]
pub struct MmtfMetadata {
pub space_group: Option<Box<str>>,
pub groups: Vec<MmtfGroupMetadata>,
pub entities: Vec<MmtfEntityMetadata>,
pub optional_fields: std::collections::BTreeSet<MmtfOptionalField>,
}
#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
pub enum MmtfOptionalField {
BFactor,
Occupancy,
AtomId,
AltLoc,
InsCode,
SequenceIndex,
ChainName,
EntityList,
}