source: include/liblas/interfaces.hpp @ 1577:4419e1af24f6

Revision 1577:4419e1af24f6, 3.2 KB checked in by Howard Butler <hobu.inc@…>, 7 months ago (diff)

clean up unused includes

Line 
1/******************************************************************************
2* $Id$
3*
4* Project:  libLAS - http://liblas.org - A BSD library for LAS format data.
5* Purpose:  LAS interface declarations 
6* Author:   Howard Butler, hobu.inc@gmail.com
7*
8******************************************************************************
9* Copyright (c) 2010, Howard Butler
10*
11* All rights reserved.
12*
13* Redistribution and use in source and binary forms, with or without
14* modification, are permitted provided that the following
15* conditions are met:
16*
17*     * Redistributions of source code must retain the above copyright
18*       notice, this list of conditions and the following disclaimer.
19*     * Redistributions in binary form must reproduce the above copyright
20*       notice, this list of conditions and the following disclaimer in
21*       the documentation and/or other materials provided
22*       with the distribution.
23*     * Neither the name of the Martin Isenburg or Iowa Department
24*       of Natural Resources nor the names of its contributors may be
25*       used to endorse or promote products derived from this software
26*       without specific prior written permission.
27*
28* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
29* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
31* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
32* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
33* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
34* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
35* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
36* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
37* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
38* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
39* OF SUCH DAMAGE.
40****************************************************************************/
41
42#ifndef LIBLAS_INTERFACES_HPP_INCLUDED
43#define LIBLAS_INTERFACES_HPP_INCLUDED
44
45
46#include <liblas/detail/fwd.hpp>
47#include <liblas/lasheader.hpp>
48#include <liblas/laspoint.hpp>
49#include <liblas/lasspatialreference.hpp>
50
51namespace liblas {
52
53class ReaderI
54{
55public:
56
57    virtual LASHeader const& ReadHeader() = 0;
58    virtual LASPoint const& ReadNextPoint(const LASHeader& header) = 0;
59    virtual LASPoint const& ReadPointAt(std::size_t n, const LASHeader& header) = 0;
60
61    virtual void Reset(const LASHeader& header) = 0;
62    virtual void SetInputSRS(const LASSpatialReference& srs) = 0;
63    virtual void SetOutputSRS(const LASSpatialReference& srs, const LASHeader& header) = 0;
64
65    virtual ~ReaderI() {};   
66};
67
68class WriterI
69{
70public:
71
72    virtual LASHeader const& WriteHeader(const LASHeader& header) = 0;
73    virtual void UpdateHeader(const LASHeader& header) = 0;
74    virtual void WritePoint(const LASPoint& point, const LASHeader& header) = 0;
75
76    virtual void SetInputSRS(const LASSpatialReference& srs) = 0;
77    virtual void SetOutputSRS(const LASSpatialReference& srs, const LASHeader& header) = 0;
78
79    virtual ~WriterI() {};   
80
81};
82} // namespace liblas
83
84#endif // ndef LIBLAS_INTERFACES_HPP_INCLUDED
Note: See TracBrowser for help on using the repository browser.