use yaserde::*;
use super::DocumentInfo::DocumentInfo;
use super::ExternalTextCollection::ExternalTextCollection;
use super::ProfileBody::ProfileBody;
use super::ProfileHeader::ProfileHeader;
use super::CommNetworkProfile::CommNetworkProfile;
#[derive(YaDeserialize,Default, Debug)]
#[yaserde(rename_all = "PascalCase", namespace="http://www.io-link.com/IODD/2009/11")]
pub struct IODevice {
#[yaserde(rename = "DocumentInfo")]
pub document_info: Option<DocumentInfo>,
#[yaserde(rename = "ProfileHeader")]
pub profileheader : Option<ProfileHeader>,
#[yaserde(rename = "ProfileBody")]
pub profilebody :ProfileBody,
#[yaserde(rename = "CommNetworkProfile")]
pub commnetworkprofile : Option<CommNetworkProfile>,
#[yaserde(rename = "ExternalTextCollection")]
pub externaltextcollection :ExternalTextCollection
}
pub enum RoleSet {
Observer,
Maintenance,
Specialist,
}
pub enum RoleMenu {
Identification,
Parameter,
Observation,
Diagnosis,
}