Package com.macrofocus.high_d.distributions

# Class AbstractDistributionsComponent<Component,Color,Row,Column,Value,Bin>

java.lang.Object
com.macrofocus.high_d.distributions.AbstractDistributionsComponent<Component,Color,Row,Column,Value,Bin>

All Implemented Interfaces:
  `com.macrofocus.crossplatform.CPComponent<Component>`, `DistributionsComponent<Component,Color,Row,Column,Value,Bin>`

Direct Known Subclasses:
  `JavaFXDistributionsComponent`

public abstract class AbstractDistributionsComponent<Component,Color,Row,Column,Value,Bin> extends Object implements DistributionsComponent<Component,Color,Row,Column,Value,Bin>
Created by luc on 12/06/16.

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Class
  Description
  `protected static enum`
  `AbstractDistributionsComponent.State`

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected final com.macrofocus.crossplatform.CPCanvas`
  `canvas`
  `protected DistributionsModel<Color,Row,Column,Value,Bin>`
  `model`
  `protected final CPTimer`
  `timer`
  `protected final DistributionsView<? extends Component,Color,Row,Column,Value,Bin>`
  `view`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `AbstractDistributionsComponent(DistributionsView<? extends Component,Color,Row,Column,Value,Bin> view, com.macrofocus.crossplatform.CPFactory<?,?,?,Color> factory)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `clearCache()`
  `void`
  `createOverplots()`
  `List<Bin>`
  `getBins(com.macrofocus.geom.Rectangle2D rect)`
  `Bin`
  `getClosestBin(int x, int y)`
  `com.macrofocus.molap.subset.DistributionDimension<Row,Value,Bin>`
  `getClosestDistribution(int x, int y)`
  `Row`
  `getClosestRow(int x, int y)`
  `protected abstract int`
  `getHeight()`
  `protected AbstractDistributionsComponent.State`
  `getState(com.macrofocus.molap.subset.SingleBinningDimension<Row,Bin> dimension, Bin bin)`
  `protected abstract int`
  `getWidth()`
  `protected void`
  `refresh()`
  `protected abstract void`
  `repaint()`
  `void`
  `setModel(DistributionsModel<Color,Row,Column,Value,Bin> model)`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

  ### Methods inherited from interface com.macrofocus.crossplatform.CPComponent

  `setStyleClass`

  ### Methods inherited from interface com.macrofocus.high_d.distributions.DistributionsComponent

  `getNativeComponent, scheduleUpdate`

- ## Field Details

  - ### model

    protected DistributionsModel<Color,Row,Column,Value,Bin> model

  - ### view

    protected final DistributionsView<? extends Component,Color,Row,Column,Value,Bin> view

  - ### canvas

    protected final com.macrofocus.crossplatform.CPCanvas canvas

  - ### timer

    protected final CPTimer timer

- ## Constructor Details

  - ### AbstractDistributionsComponent

    public AbstractDistributionsComponent(DistributionsView<? extends Component,Color,Row,Column,Value,Bin> view, com.macrofocus.crossplatform.CPFactory<?,?,?,Color> factory)

- ## Method Details

  - ### getWidth

    protected abstract int getWidth()

  - ### getHeight

    protected abstract int getHeight()

  - ### repaint

    protected abstract void repaint()

  - ### setModel

    public void setModel(DistributionsModel<Color,Row,Column,Value,Bin> model)
    Specified by:
      `setModel` in interface `DistributionsComponent<Component,Color,Row,Column,Value,Bin>`

  - ### refresh

    protected void refresh()

  - ### clearCache

    public void clearCache()
    Specified by:
      `clearCache` in interface `DistributionsComponent<Component,Color,Row,Column,Value,Bin>`

  - ### getClosestDistribution

    public com.macrofocus.molap.subset.DistributionDimension<Row,Value,Bin> getClosestDistribution(int x, int y)
    Specified by:
      `getClosestDistribution` in interface `DistributionsComponent<Component,Color,Row,Column,Value,Bin>`

  - ### getClosestBin

    public Bin getClosestBin(int x, int y)
    Specified by:
      `getClosestBin` in interface `DistributionsComponent<Component,Color,Row,Column,Value,Bin>`

  - ### getBins

    public List<Bin> getBins(com.macrofocus.geom.Rectangle2D rect)
    Specified by:
      `getBins` in interface `DistributionsComponent<Component,Color,Row,Column,Value,Bin>`

  - ### getClosestRow

    public Row getClosestRow(int x, int y)
    Specified by:
      `getClosestRow` in interface `DistributionsComponent<Component,Color,Row,Column,Value,Bin>`

  - ### getState

    protected AbstractDistributionsComponent.State getState(com.macrofocus.molap.subset.SingleBinningDimension<Row,Bin> dimension, Bin bin)

  - ### createOverplots

    public void createOverplots()
    Specified by:
      `createOverplots` in interface `DistributionsComponent<Component,Color,Row,Column,Value,Bin>`