internal ZProperty(byte[] memory, ZPropertyTable propertyTable, int index, int address, int number, int dataAddress, int length) { this.memory = memory; this.propertyTable = propertyTable; this.index = index; this.address = address; this.number = number; this.dataAddress = dataAddress; this.length = length; }
internal ZPropertyTable GetPropertyTable(ushort address) { ZPropertyTable propertyTable; if (!propertyTables.TryGetValue(address, out propertyTable)) { propertyTable = new ZPropertyTable(this, address); propertyTables.Add(address, propertyTable); } return(propertyTable); }
internal ZProperty[] ReadPropertyTableProperties(ZPropertyTable propertyTable) { // read properties... var props = new List <ZProperty>(); var reader = new MemoryReader(memory, propertyTable.Address); reader.SkipShortName(); var version = Header.ReadVersion(memory); var index = 0; var prop = reader.NextProperty(version, propertyTable, index); while (prop != null) { props.Add(prop); prop = reader.NextProperty(version, propertyTable, ++index); } return(props.ToArray()); }