-- | -- Module : Simulation.Aivika.Experiment.Chart.Types -- Copyright : Copyright (c) 2012-2017, David Sorokin <david.sorokin@gmail.com> -- License : BSD3 -- Maintainer : David Sorokin <david.sorokin@gmail.com> -- Stability : experimental -- Tested with: GHC 8.0.1 -- -- The module defines a type class for rendering charts. -- module Simulation.Aivika.Experiment.Chart.Types (ChartRendering(..)) where import Graphics.Rendering.Chart import Simulation.Aivika.Experiment -- | A type class of chart renderers. class ChartRendering r where -- | The file extension used when rendering. renderableChartExtension :: r -> String -- | Generate an image file with the specified path for the given chart. -- The width and height are passed in the second argument to the function. renderChart :: r -> (Int, Int) -> FilePath -> Renderable c -> IO (PickFn c) -- | Return the rendering layout. renderingLayoutLR :: r -> LayoutLR Double Double Double -> LayoutLR Double Double Double -- | Return the rendering layout. renderingLayout :: r -> Layout Double Double -> Layout Double Double