bes Updated for version 3.21.1
The Backend Server (BES) is the lower two tiers of the Hyrax data server
ReadSequence.cc
1
2// -*- mode: c++; c-basic-offset:4 -*-
3
4// This file is part of asciival, software which can return an XML data
5// representation of the data read from a DAP server.
6
7// Copyright (c) 2010 OPeNDAP, Inc.
8// Author: James Gallagher <jgallagher@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
26// (c) COPYRIGHT URI/MIT 1998,2000
27// Please read the full copyright statement in the file COPYRIGHT_URI.
28//
29// Authors:
30// jhrg,jimg James Gallagher <jgallagher@gso.uri.edu>
31
32// Implementation for the class ReadStructure. See ReadByte.cc
33//
34// 3/12/98 jhrg
35
36#include "config.h"
37
38#include <iostream>
39#include <string>
40
41#include <libdap/InternalErr.h>
42#include <libdap/util.h>
43#include <libdap/debug.h>
44
45#include "ReadSequence.h"
46
47BaseType *
48ReadSequence::ptr_duplicate()
49{
50 return new ReadSequence(*this);
51}
52
53ReadSequence::ReadSequence(const string &n) : Sequence(n)
54{
55}
56
57ReadSequence::ReadSequence(Sequence * bt)
58 : Sequence( bt->name() )
59{
60 // Let's make the alternative structure of Read types now so that we
61 // don't have to do it on the fly.
62 Vars_iter p = bt->var_begin();
63 while (p != bt->var_end()) {
64 BaseType *v = *p ;
65 BaseType *new_bt = v->ptr_duplicate() ;
66 add_var(new_bt);
67 delete new_bt;
68 p++;
69 }
70
71 BaseType::set_send_p(bt->send_p());
72}
73
74ReadSequence::~ReadSequence()
75{
76}
77
78void
79ReadSequence::intern_data(ConstraintEvaluator & eval, DDS & dds)
80{
81}
82