`AO      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNNone OPQRSTUVW  NoneXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDENone%Extract a raw Haskell value from the  variant. If you  know what you'3ve got, this frees from having to pattern match on  the  constructor. If you' re wrong, you' ll get an  exception.  Associate a &* and a size (in bytes) for every instance  of . The argument to  is never evaluated. #3The PCD format has both ASCII and binary variants. &@Fields attached to a point may be signed integers (I), unsigned & integers (U), or floating point (F). *;Construct a parser for a field based on its type and size. 6 The default PCD version of 0.7. 7/Make a PCD header for a monotyped vector point  type. !mkSimpleHeader fields (type,sz) n prepares a   for  n points with field names fields, field type given by type,  and field size given by sz". Example to save 1000 3D points: ) mkSimpleHeader ["x","y","z"] (F,4) 1000 8mkHeaderXYZ sample n builds a   for n points with  fields "x", "y", and "z" of & and size (in bytes)  derived from the  instance of sample . Example: % mkHeaderXYZ (undefined::Float) 1000 9BAssemble a parser for points by sequencing together all necessary  field parsers. : Create a  . based on an existing one that keeps only the 1 fields whose names pass the supplied predicate. CGet the next non-comment line. D Parse a PCD header. Returns the   and the rest of the file  contents. E Format a  . to be compatible with the PCD specification. F=Compute the number of bytes this point cloud would occupy if  serialized with the $ encoding. E  !"#$%&'()*+FGHIJKLM,-./0123456789:;<=>?@ABCDEFN<  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEF<&)('#%$"! *+ 543210/.-,6789:;<=>?@ABCDEF+ "! #%$&)('*+FGHIJKLM,-./0123456789:;<=>?@ABCDEFNNoneOP a Q* and advance the source pointer past this  datum. RSOTGUVWXHGHGH RSOTGUVWXHNone Y:Read point data using a user-supplied ASCII point parser. ZALoad points of unknown dimension into a boxed vector with a list  of  as the point representation. [ Read back Q points saved as binary data. \BReads point data in either ASCII or binary formats given an ASCII & parser for the point data type and a Q instance. If you ; know that your points are binary or ASCII, consider using   readBinPoints or Y. ]%Parse 3D points serialized in ASCII. ^?Parse 4D points serialized to ASCII. This is useful for points @ with X,Y,Z, and RGB fields each represented by a single float. I:Use an existing PCD header to save binary point data to a D file. The supplied header is used as-is, except that its format is  set to $. J"asciiToBinary inputFile outputFile converts a PCD file from  ASCII to Binary. K8Save a binary PCD file including only the named fields. _(Load points stored in a PCD file into a  . This requires a  Q9 instance for the type used to represent a point. If the ; point is a monotyped collection of fields, consider using   or   to represent points. LARead a PCD file consisting of floating point XYZ coordinates for  each point. MBRead a PCD file consisting of floating point XYZW coordinates for  each point (where the final "W" field may be an RGB triple  encoded as a float). NCParse every field of every point in a PCD file. Returns a function 0 that may be used to project out a named field. YZ[\]^IJK_LM`N !"78IJKLMN"! NMLJIK78YZ[\]^IJK_LM`Na           !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXY Z[ Z\ Z] Z^ Z_ Z` Za Zb Zc de dfghighjghkghlghmghnghoghpghqghrghsghtghughvghwghxghyghzgh{gh|gh}gh~ghghghghghghghghghghghghghghghghghggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg g g g g ggggggggggggggggggg g!g"g#g$g%g&g'g(g)g*g+,g+-g+.g+/g01g02g03g04g05g06g07g08g09g0:g0;g0<g0=g0>g0?g0@g0Ag0Bg0Cg0Dg0Eg0Fg0Gg0Hg0HgIJgIKgILgIMgINgIOgIPgIQgIRgIRgISgTUgTVgTWgTXgTYgTZgT[gT\gT]gT^gT_gT`gTagTbgTcgTdgTegTfgghggiggjggkgglggmggnggoggpggqggrggsggtgguggvggwgxygxzgx{gx|gx}gx~gxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgxgggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggggg  g  g  g  g g g g g g g g g g g g g g g g g g g  g !g "g #g $g %g &g 'g (g )g *g +g ,g -g .g /g 0g 1g 2g 3g 4g56g57g58g59g5:g5;g5<g5=g5>g?@g?Ag?BgCDgCEgCFgCGgCHgIJgIKgILgIMgINgIOgIPgIQgIRgISgITgITgUVgUVgUWgUXgUXgUYgUZg[\g[]g^_g^`g^ag^bg^cg^dg^defghijklmn op oqrrstuvwxyz{|}~pcd-loader-0.2.3.1PCD.Internal.Types PCD.HeaderPCD.Internal.StorableFieldTypePCD.DataPCD.Internal.SmallLens Linear.V2V2 Linear.V3V3baseGHC.WordWord8 linear-0.4.1 Linear.MatrixM44Linear.Quaternion Quaternion Linear.V4V4vector-0.10.0.1Data.Vector.StorableVectorHeader_version_fields_sizes _dimTypes_counts_width_height _viewpoint_points_formatPCDType unsafeUnwrap fromHaskell FieldTypeTDoubleTFloatTIntTUintTShortTUshortTCharTUchar DataFormatBinaryASCIIDimTypeFUI fieldParser sequence'countsdimTypesfieldsformatheightpointssizesversion viewpointwidthdefaultVersionmkSimpleHeader mkHeaderXYZ pointParser filterFields defaultHeader readVersion readFields readTypes namedIntegralnamedIntegrals readViewpoint readFormatnextLine readHeader writeHeadertotalBinarySizeparseBinaryPointspokeBinaryPoints saveBinaryPcd asciiToBinaryprojectBinaryFieldsloadXyzloadXyzw loadAllFields Linear.VectorbasisForbasislerp^/^**^^-^gnegate^+^Data.Traversable Traversabletraverse lens-3.6.0.2Control.Lens.THmakeLensesWith makeClassyFor makeLensesFormakeIso makeClassy makeLensesisoRules classyRules lensRules defaultRules lensFlags lensClass lensFieldlensIsogenerateSignatures classRequiredcreateInstance createClasssingletonRequired singletonIsosingletonAndFieldhandleSingletonsbuildTraversals partialLenses simpleLenses SimpleLenses PartialLensesBuildTraversalsSingletonAndField SingletonIsoHandleSingletonsSingletonRequired CreateClassCreateInstance ClassRequiredGenerateSignaturesLensFlag LensRulesControl.Lens.WithIndexiwhere imapAccumL imapAccumRiforMimapMifor itraversedindices withIndicesitoListifoldlMifoldrMifind iconcatMapiforM_imapM_ifor_ itraverse_iallianyifoldingifoldedimappedimapFunctorWithIndexifoldl'ifoldr'ifoldlifoldrifoldMapFoldableWithIndex itraverseTraversableWithIndexControl.Lens.Platedparts composOpFoldparaparaOf holesOnOfholesOnholes contextsOnOf contextsOn contextsOfcontextstransformMOnOf transformMOf transformMOn transformM transformOnOf transformOf transformOn transform universeOnOf universeOn universeOfuniverse rewriteMOnOf rewriteMOn rewriteMOfrewriteM rewriteOnOf rewriteOn rewriteOfrewritechildrenplatePlatedControl.Lens.TraversalcloneTraversaldroppingtaking_right_leftbesidebothholesOfunsafePartsOf' unsafePartsOfpartsOf'partsOfscanl1Ofscanr1Of mapAccumLOf mapAccumROf transposeOf sequenceOfforMOfmapMOf sequenceAOfforOf traverseOf TraversalSimpleTraversalreflectTraversalReifyTraversalReifiedTraversalSimpleReifiedTraversalControl.Lens.FoldfoldlMOffoldrMOffoldlOf'foldrOf'foldl1Offoldr1OffindOf minimumByOf maximumByOf minimumOf maximumOfnullOflastOf^?!^?headOflengthOfconcatOf concatMapOf notElemOfelemOfmsumOfasumOf sequenceOf_forMOf_mapMOf_ sequenceAOf_forOf_ traverseOf_sumOf productOfallOfanyOforOfandOf^..toListOffoldlOffoldrOffoldOf foldMapOf droppingWhile takingWhile backwardsfilterediteratedunfoldedcycled replicatedrepeatedfoldedfoldingFold reflectFold ReifyFold ReifiedFoldControl.Lens.ZoomzoomZoommagnifyMagnifyControl.Lens.Representable rtraversedrfoldedrmappedrfoldrrfoldMaprforMrmapM_rmapMrfor rtraverse_ rtraversermap tabulatedpaths distributeRepbindRepapReppureRepfmapRepReprep RepresentablewalkPathControl.Lens.Projectionmirror projectionbyprojectstereo Projection projective ProjectiveProjectSimpleProjectionControl.Lens.Isononsimplemappingenum_constidentityreviewunderaufalaisoisosIso SimpleIso reflectIsoReifyIso ReifiedIsoSimpleReifiedIsoControl.Lens.Getterperusesperuseusesuse^.^$viewsviewto^&&GetterGetting reflectGetter ReifyGetter ReifiedGetterControl.Lens.Setter<$!<$!>Control.Lens.IndexedGetter IndexedGetterIndexedGettingreflectIndexedGetterReifyIndexedGetterReifiedIndexedGetterControl.Lens.Indexedindexedicompose<.>reindex.><.indexIndexed Indexable withIndexIndexControl.Lens.InternalContext runBazaarBazaarAccessorMutatorControl.Lens.ClassesGettableSettableControl.Lens.Isomorphicviafromisomap isomorphic Isomorphic Isomorphism$fPCDTypeDouble$fPCDTypeFloat$fPCDTypeInt32$fPCDTypeWord32$fPCDTypeInt16$fPCDTypeWord16 $fPCDTypeInt8$fPCDTypeWord8$fNFDataHeaderpeekStepForeign.StorablepeekStorablePparseBinaryFieldparseBinaryFieldspokeSteppokeBinaryFieldpokeBinaryFieldsreadAsciiPointsreadAsciiPointsDefaultreadHomogenousBinaryPoints readPointData readXYZ_asciireadXYZW_ascii loadPointsloadFlexiblePoints