public void Read(__BinaryParser input)
{
// binaryHeaderEnum has already been read
objectId = input.ReadInt32();
name = input.ReadString();
numMembers = input.ReadInt32();
memberNames = new String[numMembers];
binaryTypeEnumA = new BinaryTypeEnum[numMembers];
typeInformationA = new Object[numMembers];
memberAssemIds = new Int32[numMembers];
for (int i=0; i<numMembers; i++)
memberNames[i] = input.ReadString();
for (int i=0; i<numMembers; i++)
binaryTypeEnumA[i] = (BinaryTypeEnum)input.ReadByte();
for (int i=0; i<numMembers; i++)
if (binaryTypeEnumA[i] != BinaryTypeEnum.ObjectUrt && binaryTypeEnumA[i] != BinaryTypeEnum.ObjectUser)
typeInformationA[i] = BinaryConverter.ReadTypeInfo(binaryTypeEnumA[i], input, out memberAssemIds[i]);
else
BinaryConverter.ReadTypeInfo(binaryTypeEnumA[i], input, out memberAssemIds[i]);
if (binaryHeaderEnum == BinaryHeaderEnum.ObjectWithMapTypedAssemId)
{
assemId = input.ReadInt32();
}
}