Refactor ParseData to handle data parsing.
This commit is contained in:
parent
37c81d78ce
commit
348bf2a299
@ -12,7 +12,7 @@ XCBrush::XCBrush()
|
||||
, mFirstAdjacentSideOffsets()
|
||||
, mEdgeCount()
|
||||
{
|
||||
|
||||
SetName("C Brush");
|
||||
}
|
||||
|
||||
XCBrush::~XCBrush()
|
||||
@ -20,45 +20,50 @@ XCBrush::~XCBrush()
|
||||
|
||||
}
|
||||
|
||||
void XCBrush::ParseData(QDataStream *aStream)
|
||||
void XCBrush::ParseData(XDataStream *aStream)
|
||||
{
|
||||
if (GetPtr() == -1)
|
||||
{
|
||||
qint32 sidesPtr, baseAdjacentSidePtr;
|
||||
*aStream
|
||||
>> mMins[0]
|
||||
>> mMins[1]
|
||||
>> mMins[2]
|
||||
>> mContents
|
||||
>> mMaxs[0]
|
||||
>> mMaxs[1]
|
||||
>> mMaxs[2]
|
||||
>> mNumsides
|
||||
>> sidesPtr;
|
||||
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
*aStream
|
||||
>> mAxialMaterialNum[i][0]
|
||||
>> mAxialMaterialNum[i][1]
|
||||
>> mAxialMaterialNum[i][2];
|
||||
mMins[i] = aStream->ParseSingle(QString("%1 min %2").arg(GetName()).arg(i));
|
||||
}
|
||||
|
||||
*aStream >> baseAdjacentSidePtr;
|
||||
mContents = aStream->ParseInt32(QString("%1 contents").arg(GetName()));
|
||||
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
*aStream
|
||||
>> mFirstAdjacentSideOffsets[i][0]
|
||||
>> mFirstAdjacentSideOffsets[i][1]
|
||||
>> mFirstAdjacentSideOffsets[i][2];
|
||||
mMaxs[i] = aStream->ParseSingle(QString("%1 max %2").arg(GetName()).arg(i));
|
||||
}
|
||||
|
||||
// TODO: Implement baseAdjacentSidePtr
|
||||
qint32 sidesPtr;//, baseAdjacentSidePtr;
|
||||
mNumsides = aStream->ParseInt32(QString("%1 # sides").arg(GetName()));
|
||||
sidesPtr = aStream->ParseInt32(QString("%1 sides ptr").arg(GetName()));
|
||||
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
for (int j = 0; j < 3; j++)
|
||||
{
|
||||
mAxialMaterialNum[i][j] = aStream->ParseSingle(QString("%1 axial material num (%2, %3)").arg(GetName()).arg(i).arg(j));
|
||||
}
|
||||
}
|
||||
|
||||
mBaseAdjacentSide = aStream->ParseInt32(QString("%1 base adjacent side ptr").arg(GetName()));
|
||||
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
for (int j = 0; j < 3; j++)
|
||||
{
|
||||
mFirstAdjacentSideOffsets[i][j] = aStream->ParseSingle(QString("%1 first adjacent side offset (%2, %3)").arg(GetName()).arg(i).arg(j));
|
||||
}
|
||||
}
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
*aStream
|
||||
>> mEdgeCount[i][0]
|
||||
>> mEdgeCount[i][1]
|
||||
>> mEdgeCount[i][2];
|
||||
for (int j = 0; j < 3; j++)
|
||||
{
|
||||
mEdgeCount[i][j] = aStream->ParseSingle(QString("%1 edge count (%2, %3)").arg(GetName()).arg(i).arg(j));
|
||||
}
|
||||
}
|
||||
|
||||
aStream->skipRawData(10);
|
||||
@ -69,11 +74,12 @@ void XCBrush::ParseData(QDataStream *aStream)
|
||||
newSize.ParseData(aStream);
|
||||
}
|
||||
|
||||
if (baseAdjacentSidePtr == -1)
|
||||
{
|
||||
XCBrushSide newSize;
|
||||
newSize.ParseData(aStream);
|
||||
}
|
||||
// TODO: Read in this ptr then parse
|
||||
//if (baseAdjacentSidePtr == -1)
|
||||
//{
|
||||
// XCBrushSide newSize;
|
||||
// newSize.ParseData(aStream);
|
||||
//}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user