Odil
A C++11 library for the DICOM standard
Loading...
Searching...
No Matches
ElementAccessor.h
Go to the documentation of this file.
1/*************************************************************************
2 * odil - Copyright (C) Universite de Strasbourg
3 * Distributed under the terms of the CeCILL-B license, as published by
4 * the CEA-CNRS-INRIA. Refer to the LICENSE file or to
5 * http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
6 * for details.
7 ************************************************************************/
8
9#ifndef _dfa4858b_1c9d_4ce9_b220_a1c15d873602
10#define _dfa4858b_1c9d_4ce9_b220_a1c15d873602
11
12#include <functional>
13
14#include <dcmtk/config/osconfig.h>
15#include <dcmtk/dcmdata/dcelem.h>
16#include <dcmtk/dcmdata/dcdatset.h>
17
20#include "odil/odil.h"
21
22namespace odil
23{
24
25namespace dcmtk
26{
27
29template<typename TValueType>
31{
33 typedef TValueType ValueType;
34
36 typedef std::function<
37 ValueType(DcmElement const &, unsigned long const)> GetterType;
38
41
43 typedef std::function<
44 void(DcmElement &, ValueType const &, unsigned long const)> SetterType;
45
48
50 static bool has(DcmDataset const & dataset, DcmTagKey const & tag);
51
53 static ValueType get(
54 DcmDataset const & dataset,
55 DcmTagKey const tag, unsigned int const position=0);
56
58 static void set(
59 DcmDataset & dataset,
60 DcmTagKey const tag, ValueType const & value, unsigned int const position=0);
61};
62
63}
64
65}
66
67#include "odil/dcmtk/ElementAccessor.txx"
68
69#endif // _dfa4858b_1c9d_4ce9_b220_a1c15d873602
Definition Association.h:25
#define ODIL_API
Definition odil.h:28
Generic access to values in DcmElement.
Definition ElementAccessor.h:31
TValueType ValueType
C++ type of the VR.
Definition ElementAccessor.h:33
static ValueType get(DcmDataset const &dataset, DcmTagKey const tag, unsigned int const position=0)
Return the value of an element in a dataset.
std::function< ValueType(DcmElement const &, unsigned long const)> GetterType
Getter type.
Definition ElementAccessor.h:37
std::function< void(DcmElement &, ValueType const &, unsigned long const)> SetterType
Setter type.
Definition ElementAccessor.h:44
static GetterType const element_get
Return the value in the element.
Definition ElementAccessor.h:40
static void set(DcmDataset &dataset, DcmTagKey const tag, ValueType const &value, unsigned int const position=0)
Set the value of an element in a dataset.
static SetterType const element_set
Set the value in the element.
Definition ElementAccessor.h:47
static bool has(DcmDataset const &dataset, DcmTagKey const &tag)
Test whether the data set contains a given tag.