Пример #1
0
 public bool?Compute(
     long leftStart,
     long leftEnd,
     long rightStart,
     long rightEnd,
     EventBean[] eventsPerStream,
     bool newData,
     ExprEvaluatorContext context)
 {
     if (overlaps)
     {
         long minThreshold = minEval.Evaluate(leftStart, eventsPerStream, newData, context);
         long maxThreshold = maxEval.Evaluate(leftEnd, eventsPerStream, newData, context);
         return(IntervalComputerOverlapsAndByThresholdEval.ComputeIntervalOverlaps(
                    leftStart,
                    leftEnd,
                    rightStart,
                    rightEnd,
                    minThreshold,
                    maxThreshold));
     }
     else
     {
         long minThreshold = minEval.Evaluate(rightStart, eventsPerStream, newData, context);
         long maxThreshold = maxEval.Evaluate(rightEnd, eventsPerStream, newData, context);
         return(IntervalComputerOverlapsAndByThresholdEval.ComputeIntervalOverlaps(
                    rightStart,
                    rightEnd,
                    leftStart,
                    leftEnd,
                    minThreshold,
                    maxThreshold));
     }
 }
 public CodegenExpression Codegen(
     CodegenExpression leftStart,
     CodegenExpression leftEnd,
     CodegenExpression rightStart,
     CodegenExpression rightEnd,
     CodegenMethodScope codegenMethodScope,
     ExprForgeCodegenSymbol exprSymbol,
     CodegenClassScope codegenClassScope)
 {
     return(IntervalComputerOverlapsAndByThresholdEval.Codegen(
                this,
                leftStart,
                leftEnd,
                rightStart,
                rightEnd,
                codegenMethodScope,
                exprSymbol,
                codegenClassScope));
 }