示例#1
0
 private void InternalRead(BinaryReader reader)
 {
     _header = reader.ReadStructure<CVMDirectoryListingHeader>(CVMDirectoryListingHeader.SIZE);
     _subEntries = new CVMDirectoryListingEntry[_header.entryCount];
   
     for (int i = 0; i < _header.entryCount; i++)
     {
         _subEntries[i] = new CVMDirectoryListingEntry(reader, this);
     }
     
     reader.AlignPosition(16);
    
     for (int i = 0; i < _header.entryCount; i++)
     {
         if (i > 1 && _subEntries[i].Flags.HasFlagUnchecked(RecordFlags.DirectoryRecord))
         {
             _subEntries[i].DirectoryListing = new CVMDirectoryListing(reader, _subEntries[i]);
         }
     }
 }
示例#2
0
 internal CVMDirectoryListing(BinaryReader reader, CVMDirectoryListingEntry originEntry)
 {
     _originEntry = originEntry;
     InternalRead(reader);
 }