[Liblas-commits] hg-main-tree: use BOOST_CHECK_CLOSE instead of BOOST_CHECK_CLOSE...

liblas-commits at liblas.org liblas-commits at liblas.org
Fri Mar 25 08:54:51 EDT 2011


details:   http://hg.libpc.orghg-main-tree/rev/e7c47e4ccaed
changeset: 440:e7c47e4ccaed
user:      Howard Butler <hobu.inc at gmail.com>
date:      Fri Mar 25 07:54:19 2011 -0500
description:
use BOOST_CHECK_CLOSE instead of BOOST_CHECK_CLOSE_FRACTION
Subject: hg-main-tree: scaffolding for BlockIterator

details:   http://hg.libpc.orghg-main-tree/rev/15ecd00aa90f
changeset: 441:15ecd00aa90f
user:      Howard Butler <hobu.inc at gmail.com>
date:      Fri Mar 25 07:54:32 2011 -0500
description:
scaffolding for BlockIterator
Subject: hg-main-tree: merge

details:   http://hg.libpc.orghg-main-tree/rev/85bc45d65bb2
changeset: 442:85bc45d65bb2
user:      Howard Butler <hobu.inc at gmail.com>
date:      Fri Mar 25 07:54:45 2011 -0500
description:
merge

diffstat:

 apps/pcinfo.cpp                                    |   1 +
 doc/notes/coding-conventions.txt                   |  33 ++++++++++++
 include/libpc/Bounds.hpp                           |   8 +--
 include/libpc/Chipper.hpp                          |  58 ++++++++++++++++++---
 include/libpc/ChipperIterator.hpp                  |   8 ++-
 include/libpc/Color.hpp                            |   4 +-
 include/libpc/Dimension.hpp                        |   6 +-
 include/libpc/DimensionLayout.hpp                  |   2 +
 include/libpc/Filter.hpp                           |   4 +-
 include/libpc/FilterIterator.hpp                   |   2 +
 include/libpc/Header.hpp                           |   4 +-
 include/libpc/Iterator.hpp                         |  10 +++-
 include/libpc/Metadata.hpp                         |   5 +-
 include/libpc/PointBuffer.hpp                      |   8 +-
 include/libpc/PointBufferCache.hpp                 |  10 ++-
 include/libpc/Range.hpp                            |   4 +-
 include/libpc/Schema.hpp                           |   7 +-
 include/libpc/SchemaLayout.hpp                     |   2 +
 include/libpc/Signaller.hpp                        |   2 +-
 include/libpc/SpatialReference.hpp                 |   4 +-
 include/libpc/Stage.hpp                            |   7 +-
 include/libpc/Utils.hpp                            |  10 +---
 include/libpc/Vector.hpp                           |   4 +-
 include/libpc/Writer.hpp                           |   7 ++-
 include/libpc/drivers/faux/Iterator.hpp            |   7 ++-
 include/libpc/drivers/faux/Reader.hpp              |  13 ++++-
 include/libpc/drivers/faux/Writer.hpp              |   6 +-
 include/libpc/drivers/las/Header.hpp               |   9 +-
 include/libpc/drivers/las/Iterator.hpp             |   9 +-
 include/libpc/drivers/las/Reader.hpp               |  16 ++++-
 include/libpc/drivers/las/Writer.hpp               |   6 +-
 include/libpc/drivers/liblas/Header.hpp            |  16 +++--
 include/libpc/drivers/liblas/Iterator.hpp          |  12 ++-
 include/libpc/drivers/liblas/Reader.hpp            |  13 +++-
 include/libpc/drivers/liblas/Writer.hpp            |   6 +-
 include/libpc/drivers/oci/Common.hpp               |   5 +-
 include/libpc/drivers/oci/Reader.hpp               |   6 +-
 include/libpc/drivers/oci/Writer.hpp               |  12 ++--
 include/libpc/exceptions.hpp                       |   3 +-
 include/libpc/export.hpp                           |   1 -
 include/libpc/filters/CacheFilter.hpp              |   9 ++-
 include/libpc/filters/CacheFilterIterator.hpp      |   7 +-
 include/libpc/filters/ColorFilter.hpp              |  18 ++++--
 include/libpc/filters/ColorFilterIterator.hpp      |  11 ++-
 include/libpc/filters/CropFilter.hpp               |  14 +++-
 include/libpc/filters/CropFilterIterator.hpp       |  11 ++-
 include/libpc/filters/DecimationFilter.hpp         |  15 +++-
 include/libpc/filters/DecimationFilterIterator.hpp |  11 ++-
 include/libpc/filters/MosaicFilter.hpp             |  12 +++-
 include/libpc/filters/MosaicFilterIterator.hpp     |  11 ++-
 include/libpc/libpc.hpp                            |   5 +
 include/libpc/libpc_config.hpp                     |   3 +-
 include/libpc/types.hpp                            |   4 +-
 src/Bounds.cpp                                     |   3 +-
 src/Chipper.cpp                                    |  11 +--
 src/ChipperIterator.cpp                            |   3 +-
 src/Color.cpp                                      |   6 --
 src/Dimension.cpp                                  |  12 +---
 src/DimensionLayout.cpp                            |   6 --
 src/Filter.cpp                                     |   2 +
 src/Header.cpp                                     |  18 +++---
 src/Iterator.cpp                                   |   2 -
 src/Metadata.cpp                                   |   2 +
 src/PointBuffer.cpp                                |   6 --
 src/PointBufferCache.cpp                           |   1 +
 src/Schema.cpp                                     |  13 +---
 src/SchemaLayout.cpp                               |   7 --
 src/Signaller.cpp                                  |   1 +
 src/Stage.cpp                                      |   2 +
 src/Utils.cpp                                      |   5 +-
 src/Vector.cpp                                     |   4 +
 src/Writer.cpp                                     |   9 +-
 src/drivers/faux/Iterator.cpp                      |  11 +---
 src/drivers/faux/Reader.cpp                        |  12 +---
 src/drivers/faux/Writer.cpp                        |   7 +-
 src/drivers/las/Header.cpp                         |   1 -
 src/drivers/las/Iterator.cpp                       |   5 +-
 src/drivers/las/LasHeaderReader.cpp                |  12 ++-
 src/drivers/las/LasHeaderReader.hpp                |  10 +-
 src/drivers/las/LasHeaderWriter.cpp                |   3 +
 src/drivers/las/LasHeaderWriter.hpp                |   9 +-
 src/drivers/las/Reader.cpp                         |   3 +
 src/drivers/las/Writer.cpp                         |   6 +-
 src/drivers/liblas/Header.cpp                      |   5 +-
 src/drivers/liblas/Iterator.cpp                    |   7 +-
 src/drivers/liblas/Reader.cpp                      |   8 +-
 src/drivers/liblas/Writer.cpp                      |  11 ++-
 src/drivers/oci/Reader.cpp                         |  11 ----
 src/drivers/oci/Writer.cpp                         |  14 +---
 src/drivers/oci/common.cpp                         |   7 ++-
 src/drivers/oci/header.cpp                         |   4 +-
 src/filters/CacheFilter.cpp                        |   3 +-
 src/filters/CacheFilterIterator.cpp                |   5 +-
 src/filters/ColorFilter.cpp                        |   8 ++-
 src/filters/ColorFilterIterator.cpp                |   4 +-
 src/filters/CropFilter.cpp                         |   5 +-
 src/filters/CropFilterIterator.cpp                 |   6 +-
 src/filters/DecimationFilter.cpp                   |   4 +-
 src/filters/DecimationFilterIterator.cpp           |   4 +-
 src/filters/MosaicFilter.cpp                       |   6 +-
 src/filters/MosaicFilterIterator.cpp               |   4 +-
 test/unit/CacheFilterTest.cpp                      |   4 +
 test/unit/ChipperTest.cpp                          |  13 ++--
 test/unit/ConfigTest.cpp                           |   1 +
 test/unit/DecimationFilterTest.cpp                 |   5 +
 test/unit/FauxReaderTest.cpp                       |   4 +
 test/unit/LiblasReaderTest.cpp                     |   4 +
 test/unit/LiblasWriterTest.cpp                     |   1 +
 test/unit/MosaicFilterTest.cpp                     |   4 +
 109 files changed, 476 insertions(+), 349 deletions(-)

diffs (truncated from 2204 to 300 lines):

diff -r 06f5aad81e0c -r 85bc45d65bb2 apps/pcinfo.cpp
--- a/apps/pcinfo.cpp	Thu Mar 24 14:26:10 2011 -0500
+++ b/apps/pcinfo.cpp	Fri Mar 25 07:54:45 2011 -0500
@@ -12,6 +12,7 @@
 
 #include <libpc/drivers/las/Reader.hpp>
 #include <libpc/drivers/liblas/Reader.hpp>
+#include <libpc/Utils.hpp>
 #ifdef HAVE_MRSID
 #include <libpc/drivers/mrsid/Reader.hpp>
 #endif
diff -r 06f5aad81e0c -r 85bc45d65bb2 doc/notes/coding-conventions.txt
--- a/doc/notes/coding-conventions.txt	Thu Mar 24 14:26:10 2011 -0500
+++ b/doc/notes/coding-conventions.txt	Fri Mar 25 07:54:45 2011 -0500
@@ -75,3 +75,36 @@
 * private headers alongside source files in src/
 
 * ...
+
+
+#include Conventions
+====================
+
+* For public headers from the ./include/libpc directory, use angle brackets:
+  #include <libpc/Stage.h>
+
+* For private headers (from somehwere in ./src), use quotes:
+  #include "support.hpp"
+
+* #include lines should be grouped and arranged in this order: C++/std headers,
+  3rd-party headers (e.g. gdal or boost), libpc headers, local headers.  The
+  libpc headers may be further grouped by subdirectory, e.g. drivers/liblas,
+  filters, etc.
+
+* First exception to the above: source files (.cpp) should #include their
+  corresponding .hpp file first.  This assures that the header is including
+  all the files it needs to.
+  
+* Second exception to the above: header files (.hpp) should #include libpc.hpp
+  first.  This assures that we are consistent in including all "standard" stuff
+  we use everywhere.
+
+* Don't #include a file where a simple forward declaration will do.
+  (Note: this only applies to libpc files; don't forward declare from system
+  or 3rd party headers.)
+
+* Don't include a file unless it actually is required to compile the source unit.
+
+* Include guards should spell out the full path, like this:
+  #ifndef INCLUDED_DRIVERS_FAUX_READER_ITERATOR_HPP
+ 
\ No newline at end of file
diff -r 06f5aad81e0c -r 85bc45d65bb2 include/libpc/Bounds.hpp
--- a/include/libpc/Bounds.hpp	Thu Mar 24 14:26:10 2011 -0500
+++ b/include/libpc/Bounds.hpp	Fri Mar 25 07:54:45 2011 -0500
@@ -42,18 +42,14 @@
 #ifndef INCLUDED_BOUNDS_HPP
 #define INCLUDED_BOUNDS_HPP
 
+#include <libpc/libpc.hpp>
+
 #include <cassert>
 #include <vector>
-#include <iostream>
 #include <sstream>
-#include <string>
-#include <stdexcept>
-#include <math.h>
 
-#include <libpc/export.hpp>
 #include <libpc/Vector.hpp>
 #include <libpc/Range.hpp>
-#include <libpc/Utils.hpp>
 
 namespace libpc
 {
diff -r 06f5aad81e0c -r 85bc45d65bb2 include/libpc/Chipper.hpp
--- a/include/libpc/Chipper.hpp	Thu Mar 24 14:26:10 2011 -0500
+++ b/include/libpc/Chipper.hpp	Fri Mar 25 07:54:45 2011 -0500
@@ -1,20 +1,60 @@
-#ifndef LIBLAS_CHIPPER_H
-#define LIBLAS_CHIPPER_H
+/******************************************************************************
+ * $Id$
+ *
+ * Project:  libPC - http://libpc.org - A BSD library for point cloud data.
+ * Purpose:  libPC chipper class
+ * Author:   Howard Butler, hobu.inc at gmail.com
+ *
+ ******************************************************************************
+ * Copyright (c) 2011, Howard Butler
+ *
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following
+ * conditions are met:
+ *
+ *     * Redistributions of source code must retain the above copyright
+ *       notice, this list of conditions and the following disclaimer.
+ *     * Redistributions in binary form must reproduce the above copyright
+ *       notice, this list of conditions and the following disclaimer in
+ *       the documentation and/or other materials provided
+ *       with the distribution.
+ *     * Neither the name of the Martin Isenburg or Iowa Department
+ *       of Natural Resources nor the names of its contributors may be
+ *       used to endorse or promote products derived from this software
+ *       without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
+ * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
+ * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
+ * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+ * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
+ * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
+ * OF SUCH DAMAGE.
+ ****************************************************************************/
 
-#include <libpc/Stage.hpp>
-#include <libpc/Filter.hpp>
-#include <libpc/Bounds.hpp>
-#include <libpc/export.hpp>
-#include <libpc/Iterator.hpp>
-#include <libpc/FilterIterator.hpp>
+#ifndef LIBPC_CHIPPER_H
+#define LIBPC_CHIPPER_H
 
-#include <boost/scoped_ptr.hpp>
+#include <libpc/libpc.hpp>
 
 #include <vector>
 
+#include <libpc/Filter.hpp>
+#include <libpc/Bounds.hpp>
+#include <libpc/PointBuffer.hpp>
+
 namespace libpc
 {
 
+class Stage;
+
 namespace chipper
 {
 
diff -r 06f5aad81e0c -r 85bc45d65bb2 include/libpc/ChipperIterator.hpp
--- a/include/libpc/ChipperIterator.hpp	Thu Mar 24 14:26:10 2011 -0500
+++ b/include/libpc/ChipperIterator.hpp	Fri Mar 25 07:54:45 2011 -0500
@@ -35,12 +35,16 @@
 #ifndef INCLUDED_CHIPPERITERATOR_HPP
 #define INCLUDED_CHIPPERITERATOR_HPP
 
-#include <libpc/Filter.hpp>
+#include <libpc/libpc.hpp>
+
 #include <libpc/FilterIterator.hpp>
 
 namespace libpc {
 
-class chipper::Chipper;
+namespace chipper
+{
+    class Chipper;
+}
     
 namespace filters {
 
diff -r 06f5aad81e0c -r 85bc45d65bb2 include/libpc/Color.hpp
--- a/include/libpc/Color.hpp	Thu Mar 24 14:26:10 2011 -0500
+++ b/include/libpc/Color.hpp	Fri Mar 25 07:54:45 2011 -0500
@@ -41,11 +41,9 @@
 #ifndef LIBPC_COLOR_HPP_INCLUDED
 #define LIBPC_COLOR_HPP_INCLUDED
 
-#include <libpc/export.hpp>
+#include <libpc/libpc.hpp>
 
-// boost
 #include <boost/array.hpp>
-#include <boost/cstdint.hpp>
 
 
 namespace libpc
diff -r 06f5aad81e0c -r 85bc45d65bb2 include/libpc/Dimension.hpp
--- a/include/libpc/Dimension.hpp	Thu Mar 24 14:26:10 2011 -0500
+++ b/include/libpc/Dimension.hpp	Fri Mar 25 07:54:45 2011 -0500
@@ -42,13 +42,9 @@
 #ifndef LIBPC_DIMENSION_HPP_INCLUDED
 #define LIBPC_DIMENSION_HPP_INCLUDED
 
-#include <string>
+#include <libpc/libpc.hpp>
 
-// boost
 #include <boost/property_tree/ptree.hpp>
-#include <boost/cstdint.hpp>
-
-#include <libpc/export.hpp>
 
 
 namespace libpc
diff -r 06f5aad81e0c -r 85bc45d65bb2 include/libpc/DimensionLayout.hpp
--- a/include/libpc/DimensionLayout.hpp	Thu Mar 24 14:26:10 2011 -0500
+++ b/include/libpc/DimensionLayout.hpp	Fri Mar 25 07:54:45 2011 -0500
@@ -42,6 +42,8 @@
 #ifndef LIBPC_DIMENSIONLAYOUT_HPP_INCLUDED
 #define LIBPC_DIMENSIONLAYOUT_HPP_INCLUDED
 
+#include <libpc/libpc.hpp>
+
 #include <libpc/Dimension.hpp>
 
 
diff -r 06f5aad81e0c -r 85bc45d65bb2 include/libpc/Filter.hpp
--- a/include/libpc/Filter.hpp	Thu Mar 24 14:26:10 2011 -0500
+++ b/include/libpc/Filter.hpp	Fri Mar 25 07:54:45 2011 -0500
@@ -35,9 +35,9 @@
 #ifndef INCLUDED_FILTER_HPP
 #define INCLUDED_FILTER_HPP
 
-#include <libpc/export.hpp>
+#include <libpc/libpc.hpp>
+
 #include <libpc/Stage.hpp>
-#include <libpc/Header.hpp>
 
 namespace libpc
 {
diff -r 06f5aad81e0c -r 85bc45d65bb2 include/libpc/FilterIterator.hpp
--- a/include/libpc/FilterIterator.hpp	Thu Mar 24 14:26:10 2011 -0500
+++ b/include/libpc/FilterIterator.hpp	Fri Mar 25 07:54:45 2011 -0500
@@ -35,6 +35,8 @@
 #ifndef INCLUDED_FILTERITERATOR_HPP
 #define INCLUDED_FILTERITERATOR_HPP
 
+#include <libpc/libpc.hpp>
+
 #include <libpc/Iterator.hpp>
 
 namespace libpc
diff -r 06f5aad81e0c -r 85bc45d65bb2 include/libpc/Header.hpp
--- a/include/libpc/Header.hpp	Thu Mar 24 14:26:10 2011 -0500
+++ b/include/libpc/Header.hpp	Fri Mar 25 07:54:45 2011 -0500
@@ -35,10 +35,8 @@
 #ifndef INCLUDED_HEADER_HPP
 #define INCLUDED_HEADER_HPP
 
-#include <iostream>
-#include <boost/cstdint.hpp>
+#include <libpc/libpc.hpp>
 
-#include <libpc/libpc.hpp>
 #include <libpc/Schema.hpp>
 #include <libpc/Bounds.hpp>
 #include <libpc/SpatialReference.hpp>
diff -r 06f5aad81e0c -r 85bc45d65bb2 include/libpc/Iterator.hpp
--- a/include/libpc/Iterator.hpp	Thu Mar 24 14:26:10 2011 -0500
+++ b/include/libpc/Iterator.hpp	Fri Mar 25 07:54:45 2011 -0500
@@ -35,7 +35,7 @@
 #ifndef INCLUDED_ITERATOR_HPP
 #define INCLUDED_ITERATOR_HPP
 
-#include <libpc/Bounds.hpp>
+#include <libpc/libpc.hpp>
 
 namespace libpc
 {
@@ -136,6 +136,14 @@
     virtual boost::uint64_t seekImpl(boost::uint64_t position) = 0;
 };
 
+class LIBPC_DLL BlockIterator : public Iterator
+{
+public:
+    BlockIterator(const Stage& stage);
+    virtual ~BlockIterator();
+
+
+};
 
 } // namespace libpc
 
diff -r 06f5aad81e0c -r 85bc45d65bb2 include/libpc/Metadata.hpp
--- a/include/libpc/Metadata.hpp	Thu Mar 24 14:26:10 2011 -0500
+++ b/include/libpc/Metadata.hpp	Fri Mar 25 07:54:45 2011 -0500
@@ -35,10 +35,9 @@
 #ifndef INCLUDED_METADATA_HPP
 #define INCLUDED_METADATA_HPP
 
+#include <libpc/libpc.hpp>
+
 #include <vector>
-#include <boost/cstdint.hpp>
-
-#include <libpc/Utils.hpp>
 


More information about the Liblas-commits mailing list