-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Parse GPX files
--
-- Parse GPS Exchange (GPX) files using HXT into data structures.
@package GPX
@version 0.2
module Data.Geo.GPX.Accessor.Number
class Number a
number :: (Number a) => a -> Maybe Int
module Data.Geo.GPX.Accessor.Ageofdgpsdata
class Ageofdgpsdata a
ageofdgpsdata :: (Ageofdgpsdata a) => a -> Maybe Double
module Data.Geo.GPX.Accessor.Pdop
class Pdop a
pdop :: (Pdop a) => a -> Maybe Double
module Data.Geo.GPX.Accessor.Vdop
class Vdop a
vdop :: (Vdop a) => a -> Maybe Double
module Data.Geo.GPX.Accessor.Hdop
class Hdop a
hdop :: (Hdop a) => a -> Maybe Double
module Data.Geo.GPX.Accessor.Sat
class Sat a
sat :: (Sat a) => a -> Maybe Int
module Data.Geo.GPX.Accessor.Sym
class Sym a
sym :: (Sym a) => a -> Maybe String
module Data.Geo.GPX.Accessor.Src
class Src a
src :: (Src a) => a -> Maybe String
module Data.Geo.GPX.Accessor.Cmt
class Cmt a
cmt :: (Cmt a) => a -> Maybe String
module Data.Geo.GPX.Accessor.Geoidheight
class Geoidheight a
geoidheight :: (Geoidheight a) => a -> Maybe Double
module Data.Geo.GPX.Accessor.Ele
class Ele a
ele :: (Ele a) => a -> Maybe Double
module Data.Geo.GPX.Accessor.Keywords
class Keywords a
keywords :: (Keywords a) => a -> Maybe String
module Data.Geo.GPX.Accessor.Time
class Time a
time :: (Time a) => a -> Maybe String
module Data.Geo.GPX.Accessor.Desc
class Desc a
desc :: (Desc a) => a -> Maybe String
module Data.Geo.GPX.Accessor.Name
class Name a
name :: (Name a) => a -> Maybe String
module Data.Geo.GPX.Accessor.Type
class Type a
type' :: (Type a) => a -> Maybe String
module Data.Geo.GPX.Accessor.Text
class Text a
text :: (Text a) => a -> Maybe String
module Data.Geo.GPX.Accessor.Href
class Href a
href :: (Href a) => a -> String
module Data.Geo.GPX.Accessor.Creator
class Creator a
creator :: (Creator a) => a -> String
module Data.Geo.GPX.Accessor.Version
class Version a
version :: (Version a) => a -> String
module Data.Geo.GPX.Accessor.Domain
class Domain a
domain :: (Domain a) => a -> String
module Data.Geo.GPX.Accessor.Id
class Id a
id :: (Id a) => a -> String
module Data.Geo.GPX.Accessor.Value
class Value a b | a -> b
value :: (Value a b) => a -> b
module Data.Geo.GPX.Accessor.License
class License a
license :: (License a) => a -> Maybe String
module Data.Geo.GPX.Accessor.Year
class Year a
year :: (Year a) => a -> Maybe String
module Data.Geo.GPX.Accessor.Author
class Author a b | a -> b
author :: (Author a b) => a -> b
-- | Complex Type: copyrightType
-- http://www.topografix.com/GPX/1/1/#type_copyrightType
module Data.Geo.GPX.CopyrightType
data CopyrightType
copyrightType :: String -> Maybe String -> Maybe String -> CopyrightType
instance Eq CopyrightType
instance Show CopyrightType
instance License CopyrightType
instance Year CopyrightType
instance Author CopyrightType String
instance XmlPickler CopyrightType
module Data.Geo.GPX.Accessor.Copyright
class Copyright a
copyright :: (Copyright a) => a -> Maybe CopyrightType
-- | Complex Type: linkType
-- http://www.topografix.com/GPX/1/1/#type_linkType
module Data.Geo.GPX.LinkType
data LinkType
linkType :: String -> Maybe String -> Maybe String -> LinkType
instance Eq LinkType
instance Show LinkType
instance XmlPickler LinkType
module Data.Geo.GPX.Accessor.Links
class Links a
links :: (Links a) => a -> [LinkType]
module Data.Geo.GPX.Accessor.Link
class Link a
link :: (Link a) => a -> Maybe LinkType
-- | Complex Type: emailType
-- http://www.topografix.com/GPX/1/1/#type_emailType
module Data.Geo.GPX.EmailType
data EmailType
emailType :: String -> String -> EmailType
instance Eq EmailType
instance Show EmailType
instance Domain EmailType
instance Id EmailType
instance XmlPickler EmailType
module Data.Geo.GPX.Accessor.Email
class Email a
email :: (Email a) => a -> Maybe EmailType
-- | Complex Type: personType
-- http://www.topografix.com/GPX/1/1/#type_personType
module Data.Geo.GPX.PersonType
data PersonType
personType :: Maybe String -> Maybe EmailType -> Maybe LinkType -> PersonType
instance Eq PersonType
instance Show PersonType
instance Link PersonType
instance Email PersonType
instance Name PersonType
instance XmlPickler PersonType
-- | Complex Type: extensionsType
-- http://www.topografix.com/GPX/1/1/#type_extensionsType
module Data.Geo.GPX.ExtensionsType
data ExtensionsType
extensionsType :: XmlTree -> ExtensionsType
instance Eq ExtensionsType
instance Show ExtensionsType
instance Value ExtensionsType XmlTree
instance XmlPickler ExtensionsType
module Data.Geo.GPX.Accessor.Extensions
class Extensions a
extensions :: (Extensions a) => a -> Maybe ExtensionsType
-- | Simple Type: latitudeType
-- http://www.topografix.com/GPX/1/1/#type_latitudeType
module Data.Geo.GPX.LatitudeType
data LatitudeType
latitudeType :: Double -> LatitudeType
instance Eq LatitudeType
instance Ord LatitudeType
instance Enum LatitudeType
instance Num LatitudeType
instance Fractional LatitudeType
instance Floating LatitudeType
instance Real LatitudeType
instance RealFrac LatitudeType
instance RealFloat LatitudeType
instance Value LatitudeType Double
instance Show LatitudeType
instance XmlPickler LatitudeType
module Data.Geo.GPX.Accessor.Minlat
class Minlat a
minlat :: (Minlat a) => a -> LatitudeType
module Data.Geo.GPX.Accessor.Maxlat
class Maxlat a
maxlat :: (Maxlat a) => a -> LatitudeType
module Data.Geo.GPX.Accessor.Lat
class Lat a
lat :: (Lat a) => a -> LatitudeType
-- | Simple Type: latitudeType
-- http://www.topografix.com/GPX/1/1/#type_latitudeType
module Data.Geo.GPX.LongitudeType
data LongitudeType
longitudeType :: Double -> LongitudeType
instance Eq LongitudeType
instance Ord LongitudeType
instance Enum LongitudeType
instance Num LongitudeType
instance Fractional LongitudeType
instance Floating LongitudeType
instance Real LongitudeType
instance RealFrac LongitudeType
instance RealFloat LongitudeType
instance Value LongitudeType Double
instance Show LongitudeType
instance XmlPickler LongitudeType
module Data.Geo.GPX.Accessor.Minlon
class Minlon a
minlon :: (Minlon a) => a -> LongitudeType
module Data.Geo.GPX.Accessor.Maxlon
class Maxlon a
maxlon :: (Maxlon a) => a -> LongitudeType
-- | Complex Type: boundsType
-- http://www.topografix.com/GPX/1/1/#type_boundsType
module Data.Geo.GPX.BoundsType
data BoundsType
boundsType :: (LatitudeType, LongitudeType) -> (LatitudeType, LongitudeType) -> BoundsType
instance Show BoundsType
instance Eq BoundsType
instance Maxlon BoundsType
instance Minlon BoundsType
instance Maxlat BoundsType
instance Minlat BoundsType
instance XmlPickler BoundsType
module Data.Geo.GPX.Accessor.Bounds
class Bounds a
bounds :: (Bounds a) => a -> Maybe BoundsType
-- | Complex Type: metadataType
-- http://www.topografix.com/GPX/1/1/#type_metadataType
module Data.Geo.GPX.MetadataType
data MetadataType
metadataType :: Maybe String -> Maybe String -> Maybe PersonType -> Maybe CopyrightType -> [LinkType] -> Maybe String -> Maybe String -> Maybe BoundsType -> Maybe ExtensionsType -> MetadataType
instance Eq MetadataType
instance Show MetadataType
instance Extensions MetadataType
instance Bounds MetadataType
instance Keywords MetadataType
instance Time MetadataType
instance Links MetadataType
instance Copyright MetadataType
instance Author MetadataType (Maybe PersonType)
instance Desc MetadataType
instance Name MetadataType
instance XmlPickler MetadataType
module Data.Geo.GPX.Accessor.Metadata
class Metadata a
metadata :: (Metadata a) => a -> Maybe MetadataType
module Data.Geo.GPX.Accessor.Lon
class Lon a
lon :: (Lon a) => a -> LongitudeType
-- | Complex Type: ptType
-- http://www.topografix.com/GPX/1/1/#type_ptType
module Data.Geo.GPX.PtType
data PtType
ptType :: LatitudeType -> LongitudeType -> Maybe Double -> Maybe String -> PtType
instance Eq PtType
instance Show PtType
instance Time PtType
instance Ele PtType
instance Lon PtType
instance Lat PtType
instance XmlPickler PtType
module Data.Geo.GPX.Accessor.Pts
class Pts a
pts :: (Pts a) => a -> [PtType]
-- | Complex Type: ptsegType
-- http://www.topografix.com/GPX/1/1/#type_ptsegType
module Data.Geo.GPX.PtsegType
data PtsegType
ptsegType :: [PtType] -> PtsegType
instance Eq PtsegType
instance Show PtsegType
instance Pts PtsegType
instance XmlPickler PtsegType
module Data.Geo.GPX.Accessor.Latlon
class Latlon a
latlon :: (Latlon a) => a -> (Double, Double)
instance (Real a, Real b) => Latlon (a, b)
-- | Simple Type: degreesType
-- http://www.topografix.com/GPX/1/1/#type_degreesType
module Data.Geo.GPX.DegreesType
data DegreesType
degreesType :: Double -> DegreesType
instance Eq DegreesType
instance Show DegreesType
instance Value DegreesType Double
instance XmlPickler DegreesType
module Data.Geo.GPX.Accessor.Magvar
class Magvar a
magvar :: (Magvar a) => a -> Maybe DegreesType
-- | Simple Type: fixType
-- http://www.topografix.com/GPX/1/1/#type_fixType
module Data.Geo.GPX.FixType
data FixType
-- | The catamorphism for FixType.
foldFixType :: a -> a -> a -> a -> a -> FixType -> a
-- | Construct a FixType with a value of none.
none :: FixType
-- | Construct a FixType with a value of 2d.
twod :: FixType
-- | Construct a FixType with a value of 3d.
threed :: FixType
-- | Construct a FixType with a value of dgps.
dgps :: FixType
-- | Construct a FixType with a value of pps.
pps :: FixType
-- | Construct a FixType using a string with a value of
-- [none, 2d, 3d, dgps, pps].
fixType :: String -> Maybe FixType
instance Eq FixType
instance Enum FixType
instance Show FixType
instance XmlPickler FixType
module Data.Geo.GPX.Accessor.Fix
class Fix a
fix :: (Fix a) => a -> Maybe FixType
-- | Simple Type: dgpsStationType
-- http://www.topografix.com/GPX/1/1/#type_dgpsStationType
module Data.Geo.GPX.DgpsStationType
data DgpsStationType
dgpsStationType :: Int -> Maybe DgpsStationType
instance Eq DgpsStationType
instance Value DgpsStationType Int
instance XmlPickler DgpsStationType
instance Show DgpsStationType
module Data.Geo.GPX.Accessor.Dgpsid
class Dgpsid a
dgpsid :: (Dgpsid a) => a -> Maybe DgpsStationType
-- | Complex Type: wptType
-- http://www.topografix.com/GPX/1/1/#type_wptType
module Data.Geo.GPX.WptType
data WptType
wptType :: LatitudeType -> LongitudeType -> Maybe Double -> Maybe String -> Maybe DegreesType -> Maybe Double -> Maybe String -> Maybe String -> Maybe String -> Maybe String -> [LinkType] -> Maybe String -> Maybe String -> Maybe FixType -> Maybe Int -> Maybe Double -> Maybe Double -> Maybe Double -> Maybe Double -> Maybe DgpsStationType -> Maybe ExtensionsType -> WptType
instance Eq WptType
instance Show WptType
instance Latlon WptType
instance Extensions WptType
instance Dgpsid WptType
instance Ageofdgpsdata WptType
instance Pdop WptType
instance Vdop WptType
instance Hdop WptType
instance Sat WptType
instance Fix WptType
instance Type WptType
instance Sym WptType
instance Links WptType
instance Src WptType
instance Desc WptType
instance Cmt WptType
instance Name WptType
instance Geoidheight WptType
instance Magvar WptType
instance Time WptType
instance Ele WptType
instance Lon WptType
instance Lat WptType
instance XmlPickler WptType
module Data.Geo.GPX.Accessor.Wpts
class Wpts a
wpts :: (Wpts a) => a -> [WptType]
module Data.Geo.GPX.Accessor.Rtepts
class Rtepts a
rtepts :: (Rtepts a) => a -> [WptType]
-- | Complex Type: rteType
-- http://www.topografix.com/GPX/1/1/#type_rteType
module Data.Geo.GPX.RteType
data RteType
rteType :: Maybe String -> Maybe String -> Maybe String -> Maybe String -> [LinkType] -> Maybe Int -> Maybe String -> Maybe ExtensionsType -> [WptType] -> RteType
instance Eq RteType
instance Show RteType
instance Rtepts RteType
instance Extensions RteType
instance Type RteType
instance Number RteType
instance Links RteType
instance Src RteType
instance Desc RteType
instance Cmt RteType
instance Name RteType
instance XmlPickler RteType
module Data.Geo.GPX.Accessor.Rtes
class Rtes a
rtes :: (Rtes a) => a -> [RteType]
module Data.Geo.GPX.Accessor.Trkpts
class Trkpts a
trkpts :: (Trkpts a) => a -> [WptType]
-- | Complex Type: trksegType
-- http://www.topografix.com/GPX/1/1/#type_trksegType
module Data.Geo.GPX.TrksegType
data TrksegType
trksegType :: [WptType] -> Maybe ExtensionsType -> TrksegType
instance Eq TrksegType
instance Show TrksegType
instance Extensions TrksegType
instance Trkpts TrksegType
instance XmlPickler TrksegType
module Data.Geo.GPX.Accessor.Trksegs
class Trksegs a
trksegs :: (Trksegs a) => a -> [TrksegType]
-- | Complex Type: trkType
-- http://www.topografix.com/GPX/1/1/#type_trkType
module Data.Geo.GPX.TrkType
data TrkType
trkType :: Maybe String -> Maybe String -> Maybe String -> Maybe String -> [LinkType] -> Maybe Int -> Maybe String -> Maybe ExtensionsType -> [TrksegType] -> TrkType
instance Eq TrkType
instance Show TrkType
instance Trksegs TrkType
instance Extensions TrkType
instance Type TrkType
instance Number TrkType
instance Links TrkType
instance Src TrkType
instance Desc TrkType
instance Cmt TrkType
instance Name TrkType
instance XmlPickler TrkType
module Data.Geo.GPX.Accessor.Trks
class Trks a
trks :: (Trks a) => a -> [TrkType]
-- | Complex Type: gpxType
-- http://www.topografix.com/GPX/1/1/#type_gpxType
module Data.Geo.GPX.GpxType
data GpxType
gpxType :: String -> String -> Maybe MetadataType -> [WptType] -> [RteType] -> [TrkType] -> Maybe ExtensionsType -> GpxType
instance Eq GpxType
instance Show GpxType
instance Bounds GpxType
instance Keywords GpxType
instance Time GpxType
instance Links GpxType
instance Copyright GpxType
instance Author GpxType (Maybe PersonType)
instance Desc GpxType
instance Name GpxType
instance Extensions GpxType
instance Trks GpxType
instance Rtes GpxType
instance Wpts GpxType
instance Metadata GpxType
instance Creator GpxType
instance Version GpxType
instance XmlPickler GpxType
-- | Element: gpx
-- http://www.topografix.com/GPX/1/1/#element_gpx
module Data.Geo.GPX.Gpx
data Gpx
gpx :: GpxType -> Gpx
-- | Reads a GPX file into a list of Gpx values removing
-- whitespace.
readGpxFile :: FilePath -> IO [Gpx]
instance Eq Gpx
instance Version Gpx
instance Creator Gpx
instance Metadata Gpx
instance Wpts Gpx
instance Rtes Gpx
instance Trks Gpx
instance Extensions Gpx
instance Name Gpx
instance Desc Gpx
instance Copyright Gpx
instance Links Gpx
instance Time Gpx
instance Keywords Gpx
instance Bounds Gpx
instance Value Gpx GpxType
instance XmlPickler Gpx
instance Show Gpx
instance Author Gpx (Maybe PersonType)
-- | GPX 1.1 Schema http://www.topografix.com/GPX/1/1/
module Data.Geo.GPX