From bb77572693e60968b2dcba20c220211b5aff5947 Mon Sep 17 00:00:00 2001 From: Rob Stewart Date: Wed, 10 Aug 2011 23:10:49 +0100 Subject: [PATCH] putting all modules in Data.GPS --- .../GPS/Gps2HtmlReport}/HTMLGenerator.hs | 4 ++-- .../GPS/Gps2HtmlReport}/JourneyCharts.hs | 4 ++-- {Gps2HtmlReport => Data/GPS/Gps2HtmlReport}/JourneyStats.hs | 2 +- {Gps2HtmlReport => Data/GPS/Gps2HtmlReport}/Main.hs | 6 +++--- {Gps2HtmlReport => Data/GPS/Gps2HtmlReport}/OsmChart.hs | 2 +- README.md | 5 +++++ gps2htmlReport.cabal | 6 +++--- 7 files changed, 17 insertions(+), 12 deletions(-) rename {Gps2HtmlReport => Data/GPS/Gps2HtmlReport}/HTMLGenerator.hs (97%) rename {Gps2HtmlReport => Data/GPS/Gps2HtmlReport}/JourneyCharts.hs (98%) rename {Gps2HtmlReport => Data/GPS/Gps2HtmlReport}/JourneyStats.hs (98%) rename {Gps2HtmlReport => Data/GPS/Gps2HtmlReport}/Main.hs (90%) rename {Gps2HtmlReport => Data/GPS/Gps2HtmlReport}/OsmChart.hs (93%) diff --git a/Gps2HtmlReport/HTMLGenerator.hs b/Data/GPS/Gps2HtmlReport/HTMLGenerator.hs similarity index 97% rename from Gps2HtmlReport/HTMLGenerator.hs rename to Data/GPS/Gps2HtmlReport/HTMLGenerator.hs index 56cf50d..def14a8 100644 --- a/Gps2HtmlReport/HTMLGenerator.hs +++ b/Data/GPS/Gps2HtmlReport/HTMLGenerator.hs @@ -1,14 +1,14 @@ {-# LANGUAGE ScopedTypeVariables #-} -- | The `HTMLGenerator' module generates the HTML content for the index.html generated -module Gps2HtmlReport.HTMLGenerator where +module Data.GPS.Gps2HtmlReport.HTMLGenerator where import Text.Html import Data.GPS hiding (src,link,href) import Text.Printf import Data.Maybe -import Gps2HtmlReport.JourneyStats +import Data.GPS.Gps2HtmlReport.JourneyStats -- | Takes all the WayPoints and generates the HTML file generateHtmlPage :: [WptType] -> Html diff --git a/Gps2HtmlReport/JourneyCharts.hs b/Data/GPS/Gps2HtmlReport/JourneyCharts.hs similarity index 98% rename from Gps2HtmlReport/JourneyCharts.hs rename to Data/GPS/Gps2HtmlReport/JourneyCharts.hs index 3b84e93..60b6416 100644 --- a/Gps2HtmlReport/JourneyCharts.hs +++ b/Data/GPS/Gps2HtmlReport/JourneyCharts.hs @@ -1,7 +1,7 @@ -- | This module uses the JourneyStats module to generate -- the statistics about the journey WayPoints, then -- uses the Cairo bindings to generate the charts -module Gps2HtmlReport.JourneyCharts where +module Data.GPS.Gps2HtmlReport.JourneyCharts where import Data.GPS import Data.Maybe @@ -10,7 +10,7 @@ import Data.Accessor import Data.Colour import Data.Colour.Names -import Gps2HtmlReport.JourneyStats +import Data.GPS.Gps2HtmlReport.JourneyStats data OutputType = Window | PNG | PS | PDF | SVG diff --git a/Gps2HtmlReport/JourneyStats.hs b/Data/GPS/Gps2HtmlReport/JourneyStats.hs similarity index 98% rename from Gps2HtmlReport/JourneyStats.hs rename to Data/GPS/Gps2HtmlReport/JourneyStats.hs index 7618b7b..4aa3cec 100644 --- a/Gps2HtmlReport/JourneyStats.hs +++ b/Data/GPS/Gps2HtmlReport/JourneyStats.hs @@ -1,6 +1,6 @@ -- | This module provides the JourneyCharts and HTMLGenerator -- modules with statistics for the charts, and the journey statistics -module Gps2HtmlReport.JourneyStats where +module Data.GPS.Gps2HtmlReport.JourneyStats where import Data.GPS hiding (speed) import Data.Maybe diff --git a/Gps2HtmlReport/Main.hs b/Data/GPS/Gps2HtmlReport/Main.hs similarity index 90% rename from Gps2HtmlReport/Main.hs rename to Data/GPS/Gps2HtmlReport/Main.hs index 5ebb5f4..b289cdb 100644 --- a/Gps2HtmlReport/Main.hs +++ b/Data/GPS/Gps2HtmlReport/Main.hs @@ -5,9 +5,9 @@ import System.FilePath import System.Directory import Text.Html -import Gps2HtmlReport.OsmChart -import Gps2HtmlReport.HTMLGenerator -import Gps2HtmlReport.JourneyCharts +import Data.GPS.Gps2HtmlReport.OsmChart +import Data.GPS.Gps2HtmlReport.HTMLGenerator +import Data.GPS.Gps2HtmlReport.JourneyCharts -- | Reads the current directory for all .gpx files, then maps to `generateReport' for each one main :: IO [()] diff --git a/Gps2HtmlReport/OsmChart.hs b/Data/GPS/Gps2HtmlReport/OsmChart.hs similarity index 93% rename from Gps2HtmlReport/OsmChart.hs rename to Data/GPS/Gps2HtmlReport/OsmChart.hs index 0ec42c8..a7921fb 100644 --- a/Gps2HtmlReport/OsmChart.hs +++ b/Data/GPS/Gps2HtmlReport/OsmChart.hs @@ -3,7 +3,7 @@ -- | This module utilizes the perl gpx2png program -- to download the OSM tiles, and the GraphicsMagick bindings -- to resize the OSM image if necessary -module Gps2HtmlReport.OsmChart where +module Data.GPS.Gps2HtmlReport.OsmChart where import System.FilePath import System.Directory diff --git a/README.md b/README.md index e53818c..8f9f5e0 100644 --- a/README.md +++ b/README.md @@ -61,6 +61,11 @@ I'd also like to know what is required to make this utility work on non-Linux sy Either way, get in touch! +To Do +----- + +* It would be great to port the perl `gpx2png' utility to Haskell, eliminating this dependency. +* This Haskell program currently makes use of elevation, latitude and longitude. There are many other attributes possibly available in WptType. Ideas for what to do with these attributes [here](http://hackage.haskell.org/packages/archive/GPX/0.4.8/doc/html/Data-Geo-GPX-WptType.html#t:WptType) most welcome. Credits ------- diff --git a/gps2htmlReport.cabal b/gps2htmlReport.cabal index 8c71dc5..5cd8092 100644 --- a/gps2htmlReport.cabal +++ b/gps2htmlReport.cabal @@ -16,9 +16,9 @@ extra-source-files: README.md tested-with: GHC ==7.0.2 Executable gps2htmlReport - Main-is: Gps2HtmlReport/Main.hs + Main-is: Data/GPS/Gps2HtmlReport/Main.hs library - Build-Depends: base >= 4, html, gps, time, cairo, Chart, random, data-accessor, colour, xsd, filepath, directory, process, gd + Build-Depends: base >= 4 && < 5, html, gps, time, cairo, Chart, random, data-accessor, colour, xsd, filepath, directory, process, gd Extensions: ScopedTypeVariables - Exposed-Modules: Gps2HtmlReport.HTMLGenerator, Gps2HtmlReport.JourneyStats, Gps2HtmlReport.JourneyCharts, Gps2HtmlReport.OsmChart \ No newline at end of file + Exposed-Modules: Data.GPS.Gps2HtmlReport.HTMLGenerator, Data.GPS.Gps2HtmlReport.JourneyStats, Data.GPS.Gps2HtmlReport.JourneyCharts, Data.GPS.Gps2HtmlReport.OsmChart \ No newline at end of file