OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimPointCloudHandler.h
Go to the documentation of this file.
1 //**************************************************************************************************
2 //
3 // OSSIM (http://trac.osgeo.org/ossim/)
4 //
5 // License: MIT -- See LICENSE.txt file in the top level directory for more details.
6 //
7 //**************************************************************************************************
8 // $Id$
9 
10 #ifndef ossimPointCloudHandler_HEADER
11 #define ossimPointCloudHandler_HEADER
12 
14 #include <ossim/base/ossimCommon.h>
15 #include <ossim/base/ossimRefPtr.h>
20 #include <vector>
21 
22 
27 {
28 public:
30 
33 
34  virtual ~ossimPointCloudHandler();
35 
41  virtual bool open(const ossimFilename& imageFile) = 0;
42 
46  virtual void close() = 0;
47 
53  virtual void getFileBlock(ossim_uint32 offset,
54  ossimPointBlock& block,
55  ossim_uint32 maxNumPoints=0xFFFFFFFF) const = 0;
56 
60  virtual void getNextFileBlock(ossimPointBlock& block,
61  ossim_uint32 maxNumPoints=0xFFFFFFFF) const;
62 
63  virtual void rewind() const { m_currentPID = 0; }
64 
71  virtual void getBlock(const ossimGrect& bounds, ossimPointBlock& block) const;
72 
73  virtual const ossimPointRecord* getMinPoint() const { return m_minRecord.get(); }
74  virtual const ossimPointRecord* getMaxPoint() const { return m_maxRecord.get(); }
75 
76  virtual void getBounds(ossimGrect& bounds) const;
77 
82  { return false; }
83 
84  void normalizeBlock(ossimPointBlock& block);
85 
86 protected:
87 
93 
95 };
96 
97 #endif /* ossimPointCloudHandler_HEADER */
ossimRefPtr< ossimPointRecord > m_maxRecord
#define OSSIMDLLEXPORT
virtual void getBlock(const ossimGrect &bounds, ossimPointBlock &block) const =0
Fetches the block of points inside the block bounds.
static ossim_uint32 DEFAULT_BLOCK_SIZE
#define TYPE_DATA
Definition: ossimRtti.h:339
unsigned int ossim_uint32
virtual const ossimPointRecord * getMaxPoint() const
virtual void rewind() const
virtual const ossimPointRecord * getMinPoint() const
Assigns the two points with fields representing the extremes of the dataset.
ossimRefPtr< ossimPointCloudGeometry > m_geometry
Base class for all point-cloud file readers.
ossimRefPtr< ossimPointRecord > m_minRecord
virtual bool canConnectMyInputTo(ossim_int32, const ossimConnectableObject *) const
Handler is always on the start of the pipeline.
int ossim_int32