private TS_COLORPOINTERATTRIBUTE ParseTsColorPointerAttribute(byte[] data, ref int currentIndex)
{
TS_COLORPOINTERATTRIBUTE attribute = new TS_COLORPOINTERATTRIBUTE();
// TS_COLORPOINTERATTRIBUTE: cacheIndex
attribute.cacheIndex = ParseUInt16(data, ref currentIndex, false);
// TS_COLORPOINTERATTRIBUTE: hotSpot
attribute.hotSpot = ParseTsPoint16(data, ref currentIndex);
// TS_COLORPOINTERATTRIBUTE: width
attribute.width = ParseUInt16(data, ref currentIndex, false);
// TS_COLORPOINTERATTRIBUTE: height
attribute.height = ParseUInt16(data, ref currentIndex, false);
// TS_COLORPOINTERATTRIBUTE: lengthAndMask
attribute.lengthAndMask = ParseUInt16(data, ref currentIndex, false);
// TS_COLORPOINTERATTRIBUTE: lengthXorMask
attribute.lengthXorMask = ParseUInt16(data, ref currentIndex, false);
// TS_COLORPOINTERATTRIBUTE: xorMaskData
attribute.xorMaskData = GetBytes(data, ref currentIndex, (int)attribute.lengthXorMask);
// TS_COLORPOINTERATTRIBUTE: andMaskData
attribute.andMaskData = GetBytes(data, ref currentIndex, (int)attribute.lengthAndMask);
// TS_COLORPOINTERATTRIBUTE: pad
attribute.pad = ParseByte(data, ref currentIndex);
return attribute;
}