Class TernaryTransformer
- java.lang.Object
-
- org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer
-
- org.apache.iotdb.db.mpp.transformation.dag.transformer.ternary.TernaryTransformer
-
- All Implemented Interfaces:
LayerPointReader,YieldableReader
- Direct Known Subclasses:
CompareTernaryTransformer
public abstract class TernaryTransformer extends Transformer
-
-
Field Summary
Fields Modifier and Type Field Description protected LayerPointReaderfirstPointReaderprotected org.apache.iotdb.tsfile.file.metadata.enums.TSDataTypefirstPointReaderDataTypeprotected booleanisCurrentConstantprotected booleanisFirstPointReaderConstantprotected booleanisSecondPointReaderConstantprotected booleanisThirdPointReaderConstantprotected LayerPointReadersecondPointReaderprotected org.apache.iotdb.tsfile.file.metadata.enums.TSDataTypesecondPointReaderDataTypeprotected LayerPointReaderthirdPointReaderprotected org.apache.iotdb.tsfile.file.metadata.enums.TSDataTypethirdPointReaderDataType-
Fields inherited from class org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer
cachedBinary, cachedBoolean, cachedDouble, cachedFloat, cachedInt, cachedLong, cachedTime, currentNull, hasCachedValue
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedTernaryTransformer(LayerPointReader firstPointReader, LayerPointReader secondPointReader, LayerPointReader thirdPointReader)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected booleancacheValue()if this method returns true, at least one of the cached field should be setprotected static doublecastCurrentValueToDoubleOperand(LayerPointReader layerPointReader, org.apache.iotdb.tsfile.file.metadata.enums.TSDataType layerPointReaderDataType)protected abstract voidcheckType()booleanisConstantPointReader()protected abstract voidtransformAndCache()protected YieldableStateyieldValue()if this method returns YieldableState.YIELDABLE, at least one of the cached field should be set-
Methods inherited from class org.apache.iotdb.db.mpp.transformation.dag.transformer.Transformer
currentBinary, currentBoolean, currentDouble, currentFloat, currentInt, currentLong, currentTime, isCurrentNull, next, readyForNext, yield
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.iotdb.db.mpp.transformation.api.LayerPointReader
getDataType
-
-
-
-
Field Detail
-
firstPointReader
protected final LayerPointReader firstPointReader
-
secondPointReader
protected final LayerPointReader secondPointReader
-
thirdPointReader
protected final LayerPointReader thirdPointReader
-
firstPointReaderDataType
protected final org.apache.iotdb.tsfile.file.metadata.enums.TSDataType firstPointReaderDataType
-
secondPointReaderDataType
protected final org.apache.iotdb.tsfile.file.metadata.enums.TSDataType secondPointReaderDataType
-
thirdPointReaderDataType
protected final org.apache.iotdb.tsfile.file.metadata.enums.TSDataType thirdPointReaderDataType
-
isFirstPointReaderConstant
protected final boolean isFirstPointReaderConstant
-
isSecondPointReaderConstant
protected final boolean isSecondPointReaderConstant
-
isThirdPointReaderConstant
protected final boolean isThirdPointReaderConstant
-
isCurrentConstant
protected final boolean isCurrentConstant
-
-
Constructor Detail
-
TernaryTransformer
protected TernaryTransformer(LayerPointReader firstPointReader, LayerPointReader secondPointReader, LayerPointReader thirdPointReader)
-
-
Method Detail
-
yieldValue
protected YieldableState yieldValue() throws QueryProcessException, java.io.IOException
Description copied from class:Transformerif this method returns YieldableState.YIELDABLE, at least one of the cached field should be set- Specified by:
yieldValuein classTransformer- Throws:
QueryProcessExceptionjava.io.IOException
-
isConstantPointReader
public boolean isConstantPointReader()
-
cacheValue
protected boolean cacheValue() throws QueryProcessException, java.io.IOExceptionDescription copied from class:Transformerif this method returns true, at least one of the cached field should be set- Specified by:
cacheValuein classTransformer- Throws:
QueryProcessExceptionjava.io.IOException
-
transformAndCache
protected abstract void transformAndCache() throws QueryProcessException, java.io.IOException- Throws:
QueryProcessExceptionjava.io.IOException
-
checkType
protected abstract void checkType()
-
castCurrentValueToDoubleOperand
protected static double castCurrentValueToDoubleOperand(LayerPointReader layerPointReader, org.apache.iotdb.tsfile.file.metadata.enums.TSDataType layerPointReaderDataType) throws java.io.IOException, QueryProcessException
- Throws:
java.io.IOExceptionQueryProcessException
-
-