/// <summary> /// Constructs a new instance of <see cref="NodeV32"/>. /// </summary> /// <param name="dataSet"> /// The data set the node is contained within. /// </param> /// <param name="offset"> /// The offset in the data structure to the node. /// </param> /// <param name="reader"> /// Reader connected to the source data structure and positioned to /// start reading. /// </param> internal NodeV32( IStreamDataSet dataSet, int offset, BinaryReader reader) : base(dataSet, offset, reader) { _rankedSignatureCount = (int)reader.ReadUInt16(); _children = NodeFactoryShared.ReadNodeIndexesV32( (FiftyOne.Foundation.Mobile.Detection.Entities.DataSet)dataSet, reader, (int)((long)offset + reader.BaseStream.Position - this._nodeStartStreamPosition), (int)this._childrenCount); _position = reader.BaseStream.Position; }
/// <summary> /// Constructs a new instance of <see cref="NodeV32"/>. /// </summary> /// <param name="dataSet"> /// The data set the node is contained within. /// </param> /// <param name="offset"> /// The offset in the data structure to the node. /// </param> /// <param name="reader"> /// Reader connected to the source data structure and positioned to /// start reading. /// </param> internal NodeV32( DataSet dataSet, int offset, BinaryReader reader) : base(dataSet, offset, reader) { _rankedSignatureCount = (int)reader.ReadUInt16(); _children = NodeFactoryShared.ReadNodeIndexesV32( dataSet, reader, (int)((long)offset + reader.BaseStream.Position - _nodeStartStreamPosition), (int)_childrenCount); _numericChildren = ReadNodeNumericIndexes(dataSet, reader, NumericChildrenCount); if (RankedSignatureCount > 0) { _nodeRankedSignatureValue = reader.ReadInt32(); } }
/// <summary> /// Used by the constructor to read the variable length list of child /// node indexes associated with the node. Returns node indexes from V32 /// data format. /// </summary> /// <param name="dataSet"> /// The data set the node is contained within /// </param> /// <param name="reader"> /// Reader connected to the source data structure and positioned to start reading /// </param> /// <param name="offset"> /// The offset in the data structure to the node /// </param> /// <param name="count"> /// The number of node indexes that need to be read. /// </param> /// <returns>An array of child node indexes for the node</returns> protected override NodeIndex[] ReadNodeIndexes(Entities.DataSet dataSet, BinaryReader reader, int offset, int count) { return(NodeFactoryShared.ReadNodeIndexesV32(dataSet, reader, offset, count)); }