bes  Updated for version 3.20.6
ReadTypeFactory.h
1 
2 // -*- mode: c++; c-basic-offset:4 -*-
3 
4 // Copyright (c) 2010 OPeNDAP, Inc.
5 // Author: James Gallagher <jgallagher@opendap.org>
6 //
7 // This is free software; you can redistribute it and/or modify it under the
8 // terms of the GNU Lesser General Public License as published by the Free
9 // Software Foundation; either version 2.1 of the License, or (at your
10 // option) any later version.
11 //
12 // This is distributed in the hope that it will be useful, but WITHOUT ANY
13 // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
14 // FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for
15 // more details.
16 //
17 // You should have received a copy of the GNU Lesser General Public
18 // License along with this library; if not, write to the Free Software
19 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20 //
21 // You can contact OPeNDAP, Inc. at PO Box 112, Saunderstown, RI. 02874-0112.
22 
23 #ifndef ascii_output_factory_h
24 #define ascii_output_factory_h
25 
26 #include <string>
27 
28 #include "BaseTypeFactory.h"
29 
30 class ReadByte;
31 class ReadInt16;
32 class ReadUInt16;
33 class ReadInt32;
34 class ReadUInt32;
35 class ReadFloat32;
36 class ReadFloat64;
37 class ReadStr;
38 class ReadUrl;
39 class ReadArray;
40 class ReadStructure;
41 class ReadSequence;
42 class ReadGrid;
43 
47 public:
48  ReadTypeFactory() {}
49  virtual ~ReadTypeFactory() {}
50 
51  virtual Byte *NewByte(const string &n = "") const;
52  virtual Int16 *NewInt16(const string &n = "") const;
53  virtual UInt16 *NewUInt16(const string &n = "") const;
54  virtual Int32 *NewInt32(const string &n = "") const;
55  virtual UInt32 *NewUInt32(const string &n = "") const;
56  virtual Float32 *NewFloat32(const string &n = "") const;
57  virtual Float64 *NewFloat64(const string &n = "") const;
58 
59  virtual Str *NewStr(const string &n = "") const;
60  virtual Url *NewUrl(const string &n = "") const;
61 
62  virtual Array *NewArray(const string &n = "", BaseType *v = 0) const;
63  virtual Structure *NewStructure(const string &n = "") const;
64  virtual Sequence *NewSequence(const string &n = "") const;
65  virtual Grid *NewGrid(const string &n = "") const;
66 };
67 
68 #endif // ascii_output_factory_h
BaseTypeFactory
Url
Int32
UInt16
Str
ReadTypeFactory
Definition: ReadTypeFactory.h:46
ReadSequence
Definition: ReadSequence.h:43
Byte