bes  Updated for version 3.20.6
fileout_json/StreamString.h
1 // -*- mode: c++; c-basic-offset:4 -*-
2 //
3 // StringStream.h
4 //
5 // This file is part of BES JSON File Out Module
6 //
7 // Copyright (c) 2014 OPeNDAP, Inc.
8 // Author: Nathan Potter <ndp@opendap.org>
9 //
10 // This library is free software; you can redistribute it and/or
11 // modify it under the terms of the GNU Lesser General Public
12 // License as published by the Free Software Foundation; either
13 // version 2.1 of the License, or (at your option) any later version.
14 //
15 // This library is distributed in the hope that it will be useful,
16 // but WITHOUT ANY WARRANTY; without even the implied warranty of
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
18 // Lesser General Public License for more details.
19 //
20 // You should have received a copy of the GNU Lesser General Public
21 // License along with this library; if not, write to the Free Software
22 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
23 //
24 // You can contact OPeNDAP, Inc. at PO Box 112, Saunderstown, RI. 02874-0112.
25 // (c) COPYRIGHT URI/MIT 1995-1999
26 // Please read the full copyright statement in the file COPYRIGHT_URI.
27 //
28 
29 #ifndef STREAMSTRING_H_
30 #define STREAMSTRING_H_
31 
32 #include <Str.h>
33 
34 namespace libdap {
35 
36 class StreamString: public Str{
37 
38 public:
39 
40  StreamString(const string &n): Str(n) {};
41  StreamString(const string &n, const string &d): Str(n,d) {}
42 
43  virtual ~StreamString()
44  {}
45 
46  StreamString(const Str &copy_from): Str(copy_from){}
47 
48 
49  friend ostream& operator<<(ostream& out, const Str& s) // output
50  {
51  out << s.value();
52 
53  return out;
54  }
55 
56  friend istream& operator>>(istream& in, Str& s) // input
57  {
58  string tmp;
59  in >> tmp;
60  s.set_value(tmp);
61 
62  return in;
63  }
64 
65 };
66 
67 } /* namespace libdap */
68 
69 #endif /* STREAMSTRING_H_ */
libdap
Definition: BESDapFunctionResponseCache.h:35
Str