OPeNDAP Hyrax Back End Server (BES)
Updated for version 3.8.3
Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
HDF5_DMR.h
Go to the documentation of this file.
1
// This file is part of the hdf4 data handler for the OPeNDAP data server.
3
//
4
// Author: Kent Yang <myang6@hdfgroup.org>
5
// Copyright (c) 2010-2012 The HDF Group
6
// The idea is borrowed from HDF4 OPeNDAP handler that is implemented by
7
// James Gallagher<jgallagher@opendap.org>
8
9
#ifndef HDF5_DMR_H_
10
#define HDF5_DMR_H_
11
12
#include "
config_hdf5.h
"
13
14
15
#include "hdf5.h"
16
17
18
//#define USE_DAP4 1
19
//#undef USE_DAP4
20
#ifdef USE_DAP4
21
#include <DMR.h>
22
#include <InternalErr.h>
23
24
using namespace
libdap
;
25
41
class
HDF5DMR :
public
libdap::DMR {
42
private
:
43
hid_t fileid;
44
45
void
m_duplicate(
const
HDF5DMR &src)
46
{
47
fileid = src.fileid;
48
}
49
50
public
:
51
HDF5DMR(libdap::DMR *dmr) :
libdap
::DMR(*dmr), fileid(-1) {}
52
HDF5DMR(libdap::D4BaseTypeFactory *factory,
const
string
&name):
libdap
::DMR(factory,name),fileid(-1) {}
53
54
HDF5DMR(
const
HDF5DMR &rhs) :
libdap
::DMR(rhs) {
55
m_duplicate(rhs);
56
}
57
58
HDF5DMR & operator= (
const
HDF5DMR &rhs) {
59
if
(
this
== &rhs)
60
return
*
this
;
61
62
dynamic_cast<
libdap::DMR &
>
(*this) = rhs;
63
m_duplicate(rhs);
64
65
return
*
this
;
66
}
67
68
~HDF5DMR() {
69
70
if
(fileid != -1)
71
H5Fclose(fileid);
72
73
}
74
75
void
setHDF5Dataset(
const
hid_t fileid_in) {
76
fileid = fileid_in;
77
}
78
79
};
80
81
#endif
82
#endif
83
84
85
libdap
static class NCMLUtil overview
Definition:
BESDapResponseBuilder.h:32
config_hdf5.h
modules
hdf5_handler
HDF5_DMR.h
Generated by
1.8.9.1