/** * Copyright (C) 2010-14 diirt developers. See COPYRIGHT.TXT * All rights reserved. Use is subject to license terms. See LICENSE.TXT */ package org.diirt.datasource.graphene; import org.diirt.graphene.BubbleGraph2DRendererUpdate; import org.diirt.datasource.ReadFunction; import org.diirt.datasource.expression.DesiredRateExpression; import org.diirt.datasource.expression.DesiredRateExpressionImpl; import org.diirt.datasource.expression.DesiredRateExpressionList; import static org.diirt.datasource.graphene.ExpressionLanguage.*; /** * @author shroffk * */ public class BubbleGraph2DExpression extends DesiredRateExpressionImpl<Graph2DResult> implements Graph2DExpression<BubbleGraph2DRendererUpdate> { BubbleGraph2DExpression(DesiredRateExpressionList<?> childExpressions, ReadFunction<Graph2DResult> function, String defaultName) { super(childExpressions, function, defaultName); } BubbleGraph2DExpression(DesiredRateExpression<?> tableData, DesiredRateExpression<?> xColumnName, DesiredRateExpression<?> yColumnName, DesiredRateExpression<?> sizeColumnName, DesiredRateExpression<?> colorColumnName) { super(ExpressionLanguage.<Object>createList(tableData, xColumnName, yColumnName, sizeColumnName, colorColumnName), new BubbleGraph2DFunction(functionOf(tableData), functionOf(xColumnName), functionOf(yColumnName), functionOf(sizeColumnName), functionOf(colorColumnName)), "Bubble Graph"); } @Override public void update(BubbleGraph2DRendererUpdate update) { ((BubbleGraph2DFunction) getFunction()).getRendererUpdateQueue().writeValue(update); } @Override public BubbleGraph2DRendererUpdate newUpdate() { return new BubbleGraph2DRendererUpdate(); } }