static KeyValuePair <PropertyType, BaseProperty> ReadProperty(BinaryReader reader) { var key = (PropertyType)reader.ReadUInt32(); BaseProperty property = new BaseProperty(); property.Unpack(reader); return(new KeyValuePair <PropertyType, BaseProperty>(key, property)); }
public T AddProperty <T>(PropertyType type) where T : PropertyValue, new() { BaseProperty bp = new BaseProperty { Type = type, Value = new T() }; Properties.Add(type, bp); return((T)bp.Value); }
override public void Unpack(BinaryReader reader) { Value.Clear(); uint count = reader.ReadUInt32(); for (int i = 0; i < count; i++) { BaseProperty prop = new BaseProperty(); prop.Unpack(reader); Value.Add(prop); } }