@Override public int getFieldLength(int fIdx) { if (fIdx < numPrefixFields) { helperTuple.setFieldCount(numPrefixFields); helperTuple.resetByTupleOffset(frame.getBuffer().array(), prefixTupleStartOff); return helperTuple.getFieldLength(fIdx); } else { helperTuple.setFieldCount(numPrefixFields, fieldCount - numPrefixFields); helperTuple.resetByTupleOffset(frame.getBuffer().array(), suffixTupleStartOff); return helperTuple.getFieldLength(fIdx - numPrefixFields); } }
@Override public int getFieldStart(int fIdx) { if (fIdx < numPrefixFields) { helperTuple.setFieldCount(numPrefixFields); helperTuple.resetByTupleOffset(frame.getBuffer().array(), prefixTupleStartOff); return helperTuple.getFieldStart(fIdx); } else { helperTuple.setFieldCount(numPrefixFields, fieldCount - numPrefixFields); helperTuple.resetByTupleOffset(frame.getBuffer().array(), suffixTupleStartOff); return helperTuple.getFieldStart(fIdx - numPrefixFields); } }
public int getSuffixTupleSize() { helperTuple.setFieldCount(numPrefixFields, fieldCount - numPrefixFields); helperTuple.resetByTupleOffset(frame.getBuffer().array(), suffixTupleStartOff); return helperTuple.getTupleSize(); }
public int getPrefixTupleSize() { if (numPrefixFields == 0) { return 0; } helperTuple.setFieldCount(numPrefixFields); helperTuple.resetByTupleOffset(frame.getBuffer().array(), prefixTupleStartOff); return helperTuple.getTupleSize(); }