//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:4.0.30319.42000
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

//
//This source code was auto-generated by MonoXSD
//

// Originally sourced from https://github.com/aaru-dps/Aaru/blob/v5.4/CICMMetadata/dotnet/cicm.cs
// The above header is from the original generated code
// Some formatting cleanup has been done to fit project standards

using System;
using System.CodeDom.Compiler;
using System.Xml.Serialization;

namespace SabreTools.Data.Models.CICM
{
    [GeneratedCode("xsd", "0.0.0.0")]
    [Serializable]
    public class ContentsFile
    {
        [XmlArrayItem("Checksum", IsNullable = false)]
        public Checksum[] Checksums { get; set; }

        [XmlArrayItem("ExtendedAttribute", IsNullable = false)]
        public ExtendedAttribute[] ExtendedAttributes { get; set; }

        [XmlAttribute]
        public string name { get; set; }

        [XmlAttribute]
        public System.DateTime creationTime { get; set; }

        [XmlIgnore]
        public bool creationTimeSpecified { get; set; }

        [XmlAttribute]
        public System.DateTime accessTime { get; set; }

        [XmlIgnore]
        public bool accessTimeSpecified { get; set; }

        [XmlAttribute]
        public System.DateTime statusChangeTime { get; set; }

        [XmlIgnore]
        public bool statusChangeTimeSpecified { get; set; }

        [XmlAttribute]
        public System.DateTime backupTime { get; set; }

        [XmlIgnore]
        public bool backupTimeSpecified { get; set; }

        [XmlAttribute]
        public System.DateTime lastWriteTime { get; set; }

        [XmlIgnore]
        public bool lastWriteTimeSpecified { get; set; }

        [XmlAttribute]
        public ulong attributes { get; set; }

        [XmlAttribute]
        public uint posixMode { get; set; }

        [XmlIgnore]
        public bool posixModeSpecified { get; set; }

        [XmlAttribute]
        public ulong deviceNumber { get; set; }

        [XmlIgnore]
        public bool deviceNumberSpecified { get; set; }

        [XmlAttribute]
        public ulong posixGroupId { get; set; }

        [XmlIgnore]
        public bool posixGroupIdSpecified { get; set; }

        [XmlAttribute]
        public ulong inode { get; set; }

        [XmlAttribute]
        public ulong links { get; set; }

        [XmlAttribute]
        public ulong posixUserId { get; set; }

        [XmlIgnore]
        public bool posixUserIdSpecified { get; set; }

        [XmlAttribute]
        public ulong length { get; set; }
    }
}
