public void Add(EventBean @event, ExprEvaluatorContext exprEvaluatorContext) { _eventsPerStream[0] = @event; var x = AdvancedIndexEvaluationHelper.EvalDoubleColumn(_config.XEval, _organization.IndexName, AdvancedIndexQuadTreeConstants.COL_X, _eventsPerStream, true, exprEvaluatorContext); var y = AdvancedIndexEvaluationHelper.EvalDoubleColumn(_config.YEval, _organization.IndexName, AdvancedIndexQuadTreeConstants.COL_Y, _eventsPerStream, true, exprEvaluatorContext); var width = AdvancedIndexEvaluationHelper.EvalDoubleColumn(_config.WidthEval, _organization.IndexName, AdvancedIndexQuadTreeConstants.COL_WIDTH, _eventsPerStream, true, exprEvaluatorContext); var height = AdvancedIndexEvaluationHelper.EvalDoubleColumn(_config.HeightEval, _organization.IndexName, AdvancedIndexQuadTreeConstants.COL_HEIGHT, _eventsPerStream, true, exprEvaluatorContext); bool added = MXCIFQuadTreeRowIndexAdd.Add(x, y, width, height, @event, _quadTree, _organization.IsUnique, _organization.IndexName); if (!added) { throw AdvancedIndexEvaluationHelper.InvalidColumnValue(_organization.IndexName, "(x,y,width,height)", "(" + x + "," + y + "," + width + "," + height + ")", "a value intersecting index bounding box (range-end-inclusive) " + _quadTree.Root.Bb); } }
public void Add( EventBean @event, ExprEvaluatorContext exprEvaluatorContext) { eventsPerStream[0] = @event; double x = EvalDoubleColumn( config.XEval, organization.IndexName, COL_X, eventsPerStream, true, exprEvaluatorContext); double y = EvalDoubleColumn( config.YEval, organization.IndexName, COL_Y, eventsPerStream, true, exprEvaluatorContext); double width = EvalDoubleColumn( config.WidthEval, organization.IndexName, COL_WIDTH, eventsPerStream, true, exprEvaluatorContext); double height = EvalDoubleColumn( config.HeightEval, organization.IndexName, COL_HEIGHT, eventsPerStream, true, exprEvaluatorContext); bool added = MXCIFQuadTreeRowIndexAdd.Add( x, y, width, height, @event, quadTree, organization.IsUnique, organization.IndexName); if (!added) { throw InvalidColumnValue( organization.IndexName, "(X,Y,Width,Height)", "(" + x.RenderAny() + "," + y.RenderAny() + "," + width.RenderAny() + "," + height.RenderAny() + ")", "a value intersecting index bounding box (range-end-inclusive) " + quadTree.Root.Bb); } }