private void _read()
            {
                _unused1           = m_io.EnsureFixedContents(new byte[] { 0 });
                _systemId          = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(32));
                _volumeId          = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(32));
                _unused2           = m_io.EnsureFixedContents(new byte[] { 0, 0, 0, 0, 0, 0, 0, 0 });
                _volSpaceSize      = new U4bi(m_io, this, m_root);
                _unused3           = m_io.EnsureFixedContents(new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 });
                _volSetSize        = new U2bi(m_io, this, m_root);
                _volSeqNum         = new U2bi(m_io, this, m_root);
                _logicalBlockSize  = new U2bi(m_io, this, m_root);
                _pathTableSize     = new U4bi(m_io, this, m_root);
                _lbaPathTableLe    = m_io.ReadU4le();
                _lbaOptPathTableLe = m_io.ReadU4le();
                _lbaPathTableBe    = m_io.ReadU4be();
                _lbaOptPathTableBe = m_io.ReadU4be();
                __raw_rootDir      = m_io.ReadBytes(34);
                var io___raw_rootDir = new KaitaiStream(__raw_rootDir);

                _rootDir              = new DirEntry(io___raw_rootDir, this, m_root);
                _volSetId             = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(128));
                _publisherId          = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(128));
                _dataPreparerId       = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(128));
                _applicationId        = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(128));
                _copyrightFileId      = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(38));
                _abstractFileId       = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(36));
                _bibliographicFileId  = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(37));
                _volCreateDatetime    = new DecDatetime(m_io, this, m_root);
                _volModDatetime       = new DecDatetime(m_io, this, m_root);
                _volExpireDatetime    = new DecDatetime(m_io, this, m_root);
                _volEffectiveDatetime = new DecDatetime(m_io, this, m_root);
                _fileStructureVersion = m_io.ReadU1();
                _unused4              = m_io.ReadU1();
                _applicationArea      = m_io.ReadBytes(512);
            }
Example #2
0
            private void _read()
            {
                _unused1 = m_io.ReadBytes(1);
                if (!((KaitaiStream.ByteArrayCompare(Unused1, new byte[] { 0 }) == 0)))
                {
                    throw new ValidationNotEqualError(new byte[] { 0 }, Unused1, M_Io, "/types/vol_desc_primary/seq/0");
                }
                _systemId = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(32));
                _volumeId = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(32));
                _unused2  = m_io.ReadBytes(8);
                if (!((KaitaiStream.ByteArrayCompare(Unused2, new byte[] { 0, 0, 0, 0, 0, 0, 0, 0 }) == 0)))
                {
                    throw new ValidationNotEqualError(new byte[] { 0, 0, 0, 0, 0, 0, 0, 0 }, Unused2, M_Io, "/types/vol_desc_primary/seq/3");
                }
                _volSpaceSize = new U4bi(m_io, this, m_root);
                _unused3      = m_io.ReadBytes(32);
                if (!((KaitaiStream.ByteArrayCompare(Unused3, new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }) == 0)))
                {
                    throw new ValidationNotEqualError(new byte[] { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, Unused3, M_Io, "/types/vol_desc_primary/seq/5");
                }
                _volSetSize        = new U2bi(m_io, this, m_root);
                _volSeqNum         = new U2bi(m_io, this, m_root);
                _logicalBlockSize  = new U2bi(m_io, this, m_root);
                _pathTableSize     = new U4bi(m_io, this, m_root);
                _lbaPathTableLe    = m_io.ReadU4le();
                _lbaOptPathTableLe = m_io.ReadU4le();
                _lbaPathTableBe    = m_io.ReadU4be();
                _lbaOptPathTableBe = m_io.ReadU4be();
                __raw_rootDir      = m_io.ReadBytes(34);
                var io___raw_rootDir = new KaitaiStream(__raw_rootDir);

                _rootDir              = new DirEntry(io___raw_rootDir, this, m_root);
                _volSetId             = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(128));
                _publisherId          = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(128));
                _dataPreparerId       = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(128));
                _applicationId        = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(128));
                _copyrightFileId      = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(38));
                _abstractFileId       = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(36));
                _bibliographicFileId  = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(37));
                _volCreateDatetime    = new DecDatetime(m_io, this, m_root);
                _volModDatetime       = new DecDatetime(m_io, this, m_root);
                _volExpireDatetime    = new DecDatetime(m_io, this, m_root);
                _volEffectiveDatetime = new DecDatetime(m_io, this, m_root);
                _fileStructureVersion = m_io.ReadU1();
                _unused4              = m_io.ReadU1();
                _applicationArea      = m_io.ReadBytes(512);
            }
Example #3
0
 private void _read()
 {
     _lenExtAttrRec     = m_io.ReadU1();
     _lbaExtent         = new U4bi(m_io, this, m_root);
     _sizeExtent        = new U4bi(m_io, this, m_root);
     _datetime          = new Datetime(m_io, this, m_root);
     _fileFlags         = m_io.ReadU1();
     _fileUnitSize      = m_io.ReadU1();
     _interleaveGapSize = m_io.ReadU1();
     _volSeqNum         = new U2bi(m_io, this, m_root);
     _lenFileName       = m_io.ReadU1();
     _fileName          = System.Text.Encoding.GetEncoding("UTF-8").GetString(m_io.ReadBytes(LenFileName));
     if (KaitaiStream.Mod(LenFileName, 2) == 0)
     {
         _padding = m_io.ReadU1();
     }
     _rest = m_io.ReadBytesFull();
 }