bes
Updated for version 3.20.6
DmrppD4Opaque.h
1
2
// -*- mode: c++; c-basic-offset:4 -*-
3
4
// This file is part of the BES
5
6
// Copyright (c) 2016 OPeNDAP, Inc.
7
// Author: James Gallagher <jgallagher@opendap.org>
8
//
9
// This library is free software; you can redistribute it and/or
10
// modify it under the terms of the GNU Lesser General Public
11
// License as published by the Free Software Foundation; either
12
// version 2.1 of the License, or (at your option) any later version.
13
//
14
// This library is distributed in the hope that it will be useful,
15
// but WITHOUT ANY WARRANTY; without even the implied warranty of
16
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17
// Lesser General Public License for 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 _dmrpp_d4opaque_h
26
#define _dmrpp_d4opaque_h 1
27
28
#include <string>
29
30
#include <D4Opaque.h>
31
#include "DmrppCommon.h"
32
33
namespace
libdap
{
34
class
XMLWriter;
35
}
36
37
namespace
dmrpp {
38
39
class
DmrppD4Opaque
:
public
libdap::D4Opaque,
public
DmrppCommon
{
40
void
_duplicate(
const
DmrppD4Opaque
&ts);
41
42
void
insert_chunk(
Chunk
*chunk);
43
void
read_chunks_parallel();
44
45
public
:
46
DmrppD4Opaque
(
const
std::string &n);
47
DmrppD4Opaque
(
const
std::string &n,
const
std::string &d);
48
DmrppD4Opaque
(
const
DmrppD4Opaque
&rhs);
49
50
virtual
~
DmrppD4Opaque
() {}
51
52
DmrppD4Opaque
&operator=(
const
DmrppD4Opaque
&rhs);
53
54
virtual
libdap::BaseType *ptr_duplicate();
55
63
virtual
unsigned
char
*
get_buf
()
64
{
65
return
&d_buf[0];
66
}
67
72
virtual
void
resize
(
unsigned
long
long
size)
73
{
74
d_buf.resize(size);
75
}
76
77
virtual
bool
read
();
78
79
virtual
void
print_dap4(libdap::XMLWriter &writer,
bool
constrained =
false
)
80
{
81
DmrppCommon::print_dmrpp
(writer, constrained);
82
}
83
84
virtual
void
dump(ostream & strm)
const
;
85
};
86
87
}
// namespace dmrpp
88
89
#endif // _dmrpp_d4opaque_h
dmrpp::DmrppD4Opaque
Definition:
DmrppD4Opaque.h:39
dmrpp::Chunk
Definition:
Chunk.h:43
dmrpp::DmrppD4Opaque::read
virtual bool read()
Read opaque data.
Definition:
DmrppD4Opaque.cc:177
dmrpp::DmrppCommon
Size and offset information of data included in DMR++ files.
Definition:
DmrppCommon.h:62
libdap
Definition:
BESDapFunctionResponseCache.h:35
dmrpp::DmrppD4Opaque::resize
virtual void resize(unsigned long long size)
Allocate.
Definition:
DmrppD4Opaque.h:72
dmrpp::DmrppCommon::print_dmrpp
void print_dmrpp(libdap::XMLWriter &writer, bool constrained=false)
Print the DMR++ response for the Scalar types.
Definition:
DmrppCommon.cc:282
dmrpp::DmrppD4Opaque::get_buf
virtual unsigned char * get_buf()
Get a pointer to start of the Opaque data buffer.
Definition:
DmrppD4Opaque.h:63
modules
dmrpp_module
DmrppD4Opaque.h
Generated by
1.8.17