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