h5cpp
0.5.0
A modern C++ wrapper for the HDF5 C library
view.hpp
Go to the documentation of this file.
1
//
2
// (c) Copyright 2017 DESY,ESS
3
//
4
// This file is part of h5cpp.
5
//
6
// This library is free software; you can redistribute it and/or modify it
7
// under the terms of the GNU Lesser General Public License as published
8
// by the Free Software Foundation; either version 2.1 of the License, or
9
// (at your option) any later version.
10
//
11
// This library is distributed in the hope that it will be useful, but
12
// WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY
13
// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
14
// License for more details.
15
//
16
// You should have received a copy of the GNU Lesser General Public License
17
// along with this library; if not, write to the
18
// Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor
19
// Boston, MA 02110-1301 USA
20
// ===========================================================================
21
//
22
// Authors:
23
// Eugen Wintersberger <eugen.wintersberger@desy.de>
24
// Martin Shetty <martin.shetty@esss.se>
25
// Created on: Nov 13, 2017
26
//
27
#pragma once
28
29
#include <
h5cpp/dataspace/hyperslab.hpp
>
30
#include <
h5cpp/dataspace/dataspace.hpp
>
31
#include <
h5cpp/core/windows.hpp
>
32
33
namespace
hdf5
{
34
namespace
dataspace {
35
42
class
DLL_EXPORT
View
{
43
public
:
50
View
() =
default
;
51
58
View
(
const
View
&) =
default
;
59
69
explicit
View
(
const
Dataspace
&space);
70
81
View
(
const
Dataspace
&space,
const
SelectionList
&selections);
82
94
View
(
const
Dataspace
&space,
const
Hyperslab
&selection);
95
104
void
operator()(
const
SelectionList
&selections)
const
;
105
116
void
operator()(
const
Hyperslab
&slab)
const
;
117
121
size_t
size()
const
;
122
123
explicit
operator
hid_t()
const
{
124
return
static_cast<
hid_t
>
(space_);
125
}
126
127
private
:
128
Dataspace
space_;
129
133
void
clear()
const
;
134
138
void
apply(
const
SelectionList
&selections)
const
;
139
};
140
141
}
// namespace dataspace
142
}
// namespace hdf5
hdf5::dataspace::View
guard object for selections
Definition:
view.hpp:42
windows.hpp
hyperslab.hpp
DLL_EXPORT
#define DLL_EXPORT
Definition:
windows.hpp:29
hdf5::dataspace::Dataspace
dataspace base class
Definition:
dataspace.hpp:41
hdf5::dataspace::SelectionList
std::list< OperationWithSelection > SelectionList
Definition:
selection.hpp:130
dataspace.hpp
hdf5::dataspace::Hyperslab
hyperslab selection class
Definition:
hyperslab.hpp:52
hdf5
top-level namespace of the entire library
Definition:
attribute.hpp:45
h5cpp
src
h5cpp
dataspace
view.hpp
Generated on Mon May 2 2022 08:20:20 for h5cpp by
1.8.17