public override void Read(Stream data) { TagId = new TAG_Byte(); TagId.Read(data); Length = new TAG_Int(); Length.Read(data); Payload = new TAG[Length.Payload]; for (Int32 i = 0; i < Length.Payload; i++) { switch ((TYPE)TagId.Payload) { case TYPE.TAG_Byte: Payload[i] = (TAG)new TAG_Byte(data); break; case TYPE.TAG_Short: Payload[i] = (TAG)new TAG_Short(data); break; case TYPE.TAG_Int: Payload[i] = (TAG)new TAG_Int(data); break; case TYPE.TAG_Long: Payload[i] = (TAG)new TAG_Long(data); break; case TYPE.TAG_Float: Payload[i] = (TAG)new TAG_Float(data); break; case TYPE.TAG_Double: Payload[i] = (TAG)new TAG_Double(data); break; case TYPE.TAG_Byte_Array: Payload[i] = (TAG)new TAG_Byte_Array(data); break; case TYPE.TAG_String: Payload[i] = (TAG)new TAG_String(data); break; case TYPE.TAG_List: Payload[i] = (TAG)new TAG_List(data); break; case TYPE.TAG_Compound: Payload[i] = (TAG)new TAG_Compound(data, this); break; case TYPE.TAG_Int_Array: Payload[i] = (TAG)new TAG_Int_Array(data); break; default: throw new Exception("Unrecognized tag type."); } } }
public override void Read(Stream data) { TagId = new TAG_Byte(); TagId.Read(data); Length = new TAG_Int(); Length.Read(data); Payload = new TAG[Length.Payload]; for (Int32 i = 0; i < Length.Payload; i++) { switch ((TYPE)TagId.Payload) { case TYPE.TAG_Byte: Payload[i] = (TAG) new TAG_Byte(data); break; case TYPE.TAG_Short: Payload[i] = (TAG) new TAG_Short(data); break; case TYPE.TAG_Int: Payload[i] = (TAG) new TAG_Int(data); break; case TYPE.TAG_Long: Payload[i] = (TAG) new TAG_Long(data); break; case TYPE.TAG_Float: Payload[i] = (TAG) new TAG_Float(data); break; case TYPE.TAG_Double: Payload[i] = (TAG) new TAG_Double(data); break; case TYPE.TAG_Byte_Array: Payload[i] = (TAG) new TAG_Byte_Array(data); break; case TYPE.TAG_String: Payload[i] = (TAG) new TAG_String(data); break; case TYPE.TAG_List: Payload[i] = (TAG) new TAG_List(data); break; case TYPE.TAG_Compound: Payload[i] = (TAG) new TAG_Compound(data, this); break; case TYPE.TAG_Int_Array: Payload[i] = (TAG) new TAG_Int_Array(data); break; default: throw new Exception("Unrecognized tag type."); } } }