public NormsWriterPerField(DocInverterPerField docInverterPerField, NormsWriterPerThread perThread, FieldInfo fieldInfo) { this.perThread = perThread; this.fieldInfo = fieldInfo; docState = perThread.docState; fieldState = docInverterPerField.fieldState; }
public DocInverterPerField(DocInverterPerThread perThread, FieldInfo fieldInfo) { this.perThread = perThread; this.fieldInfo = fieldInfo; docState = perThread.docState; fieldState = perThread.fieldState; this.consumer = perThread.consumer.AddField(this, fieldInfo); this.endConsumer = perThread.endConsumer.AddField(this, fieldInfo); }
public FreqProxTermsWriterPerField(TermsHashPerField termsHashPerField, FreqProxTermsWriterPerThread perThread, FieldInfo fieldInfo) { this.termsHashPerField = termsHashPerField; this.perThread = perThread; this.fieldInfo = fieldInfo; docState = termsHashPerField.docState; fieldState = termsHashPerField.fieldState; omitTermFreqAndPositions = fieldInfo.omitTermFreqAndPositions; }
public TermVectorsTermsWriterPerField(TermsHashPerField termsHashPerField, TermVectorsTermsWriterPerThread perThread, FieldInfo fieldInfo) { this.termsHashPerField = termsHashPerField; this.perThread = perThread; this.termsWriter = perThread.termsWriter; this.fieldInfo = fieldInfo; docState = termsHashPerField.docState; fieldState = termsHashPerField.fieldState; }
/// <summary>Implemented as /// <c>state.getBoost()*lengthNorm(numTerms)</c>, where /// <c>numTerms</c> is <see cref="FieldInvertState.Length" /> if <see cref="DiscountOverlaps" /> /// is false, else it's <see cref="FieldInvertState.Length" /> /// - <see cref="FieldInvertState.NumOverlap" /> ///. /// /// <p/><b>WARNING</b>: This API is new and experimental, and may suddenly /// change.<p/> /// </summary> public override float ComputeNorm(System.String field, FieldInvertState state) { int numTerms; if (internalDiscountOverlaps) numTerms = state.Length - state.NumOverlap; else numTerms = state.Length; return (state.Boost * LengthNorm(field, numTerms)); }
public TermsHashPerField(DocInverterPerField docInverterPerField, TermsHashPerThread perThread, TermsHashPerThread nextPerThread, FieldInfo fieldInfo) { InitBlock(); this.perThread = perThread; intPool = perThread.intPool; charPool = perThread.charPool; bytePool = perThread.bytePool; docState = perThread.docState; fieldState = docInverterPerField.fieldState; this.consumer = perThread.consumer.AddField(this, fieldInfo); streamCount = consumer.GetStreamCount(); numPostingInt = 2 * streamCount; this.fieldInfo = fieldInfo; if (nextPerThread != null) nextPerField = (TermsHashPerField) nextPerThread.AddField(docInverterPerField, fieldInfo); else nextPerField = null; }
public TermsHashPerField(DocInverterPerField docInverterPerField, TermsHashPerThread perThread, TermsHashPerThread nextPerThread, FieldInfo fieldInfo) { InitBlock(); this.perThread = perThread; intPool = perThread.intPool; charPool = perThread.charPool; bytePool = perThread.bytePool; docState = perThread.docState; fieldState = docInverterPerField.fieldState; this.consumer = perThread.consumer.AddField(this, fieldInfo); streamCount = consumer.GetStreamCount(); numPostingInt = 2 * streamCount; this.fieldInfo = fieldInfo; if (nextPerThread != null) { nextPerField = (TermsHashPerField)nextPerThread.AddField(docInverterPerField, fieldInfo); } else { nextPerField = null; } }
/// <summary> Compute the normalization value for a field, given the accumulated /// state of term processing for this field (see <see cref="FieldInvertState" />). /// /// <p/>Implementations should calculate a float value based on the field /// state and then return that value. /// /// <p/>For backward compatibility this method by default calls /// <see cref="LengthNorm(String, int)" /> passing /// <see cref="FieldInvertState.Length" /> as the second argument, and /// then multiplies this value by <see cref="FieldInvertState.Boost" />.<p/> /// /// <p/><b>WARNING</b>: This API is new and experimental and may /// suddenly change.<p/> /// /// </summary> /// <param name="field">field name /// </param> /// <param name="state">current processing state for this field /// </param> /// <returns> the calculated float norm /// </returns> public virtual float ComputeNorm(System.String field, FieldInvertState state) { return (float) (state.Boost * LengthNorm(field, state.Length)); }
public override float ComputeNorm(System.String fieldName, FieldInvertState state) { return delegee.ComputeNorm(fieldName, state); }