packages feed

pcd-loader 0.3.0.0 → 0.3.0.1

raw patch · 3 files changed

+10/−6 lines, 3 filesdep ~lensPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

Dependency ranges changed: lens

API changes (from Hackage documentation)

- PCD.Header: counts :: Lens Header Header [Int] [Int]
+ PCD.Header: counts :: Lens' Header [Int]
- PCD.Header: dimTypes :: Lens Header Header [DimType] [DimType]
+ PCD.Header: dimTypes :: Lens' Header [DimType]
- PCD.Header: fields :: Lens Header Header [Text] [Text]
+ PCD.Header: fields :: Lens' Header [Text]
- PCD.Header: format :: Lens Header Header DataFormat DataFormat
+ PCD.Header: format :: Lens' Header DataFormat
- PCD.Header: height :: Lens Header Header Int Int
+ PCD.Header: height :: Lens' Header Int
- PCD.Header: points :: Lens Header Header Integer Integer
+ PCD.Header: points :: Lens' Header Integer
- PCD.Header: sizes :: Lens Header Header [Int] [Int]
+ PCD.Header: sizes :: Lens' Header [Int]
- PCD.Header: version :: Lens Header Header Text Text
+ PCD.Header: version :: Lens' Header Text
- PCD.Header: viewpoint :: Lens Header Header (V3 Double, Quaternion Double) (V3 Double, Quaternion Double)
+ PCD.Header: viewpoint :: Lens' Header (V3 Double, Quaternion Double)
- PCD.Header: width :: Lens Header Header Integer Integer
+ PCD.Header: width :: Lens' Header Integer

Files

pcd-loader.cabal view
@@ -1,5 +1,5 @@ name:                pcd-loader-version:             0.3.0.0+version:             0.3.0.1 synopsis:            PCD file loader. description:         Parser for PCD (point cloud data) formats.  See                      <http://pointclouds.org/documentation/tutorials/pcd_file_format.php>@@ -23,8 +23,9 @@                     PCD.Internal.StorableFieldType, PCD.Internal.AsciiParsers   ghc-options:      -O2 -Wall   hs-source-dirs:   src-  build-depends:    base >= 4.5 && < 5, text, mtl, lens, vector, bytestring, -                    attoparsec, binary, deepseq, linear+  build-depends:    base >= 4.5 && < 5, text, mtl, vector, bytestring, +                    attoparsec, binary, deepseq, +                    lens >= 3.8.1, linear   default-language: Haskell2010  executable pcd2bin
src/PCD/Data.hs view
@@ -103,8 +103,11 @@ loadPoints parser pcdFile = do h <- openFile pcdFile ReadMode                                (pcdh,_) <- readHeader h                                r <- pcdh `deepseq` readPointData pcdh h parser+                               v <- case r of+                                      Left _ -> return V.empty+                                      Right v' -> V.length v' `seq` return v'                                hClose h-                               return $ either (const V.empty) id r+                               return v  -- |Read a PCD file consisting of floating point XYZ coordinates for -- each point.
src/PCD/Header.hs view
@@ -5,7 +5,7 @@ module PCD.Header where import Control.Applicative import Control.Arrow ((***))-import Control.Lens (makeLenses, (^.), (%~), (.=), _1, _2, use, Setting)+import Control.Lens (makeLenses, (^.), (%~), (.=), _1, _2, use, ASetter) import Control.Monad.State import Data.Foldable (Foldable, foldMap) import Data.Int@@ -213,7 +213,7 @@   where nxt :: (MonadState (a,Maybe Text) m, MonadIO m) => m ()         nxt = liftIO (nextLine h) >>= (_2.=) . Just         entry :: (MonadState (s,Maybe Text) m, MonadIO m, Functor m) => -                 Parser a -> Setting s s a a -> m ()+                 Parser a -> ASetter s s a a -> m ()         entry parser field = do use _2 >>= maybe nxt (const (return ()))                                 Just ln <- use _2                                 case parseOnly parser ln of