GEOS  3.8.0dev
Writer.h
1 /**********************************************************************
2  *
3  * GEOS - Geometry Engine Open Source
4  * http://geos.osgeo.org
5  *
6  * Copyright (C) 2005-2006 Refractions Research Inc.
7  * Copyright (C) 2001-2002 Vivid Solutions Inc.
8  *
9  * This is free software; you can redistribute and/or modify it under
10  * the terms of the GNU Lesser General Public Licence as published
11  * by the Free Software Foundation.
12  * See the COPYING file for more information.
13  *
14  **********************************************************************
15  *
16  * Last port: ORIGINAL WORK to be used like java.io.Writer
17  *
18  **********************************************************************/
19 
20 #ifndef GEOS_IO_WRITER_H
21 #define GEOS_IO_WRITER_H
22 
23 #include <geos/export.h>
24 
25 #include <string>
26 
27 #ifdef _MSC_VER
28 #pragma warning(push)
29 #pragma warning(disable: 4251) // warning C4251: needs to have dll-interface to be used by clients of class
30 #endif
31 
32 namespace geos {
33 namespace io {
34 
35 class GEOS_DLL Writer {
36 public:
37  Writer();
38  void reserve(std::size_t capacity);
39  ~Writer();
40  void write(const std::string& txt);
41  const std::string& toString();
42 private:
43  std::string str;
44 };
45 
46 } // namespace geos::io
47 } // namespace geos
48 
49 #ifdef _MSC_VER
50 #pragma warning(pop)
51 #endif
52 
53 #endif // #ifndef GEOS_IO_WRITER_H
Basic namespace for all GEOS functionalities.
Definition: IndexedNestedRingTester.h:25