GDCM 3.0.24
gdcmMrProtocol.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: GDCM (Grassroots DICOM). A DICOM library
4
5 Copyright (c) 2006-2011 Mathieu Malaterre
6 All rights reserved.
7 See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html for details.
8
9 This software is distributed WITHOUT ANY WARRANTY; without even
10 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11 PURPOSE. See the above copyright notice for more information.
12
13=========================================================================*/
14#ifndef GDCMMRPROTOCOL_H
15#define GDCMMRPROTOCOL_H
16
17#include "gdcmTypes.h"
18#include "gdcmDataSet.h"
19
20namespace gdcm
21{
22class ByteValue;
23/*
24 * Everything done in this code is for the sole purpose of writing interoperable
25 * software under Sect. 1201 (f) Reverse Engineering exception of the DMCA.
26 * If you believe anything in this code violates any law or any of your rights,
27 * please contact us (gdcm-developers@lists.sourceforge.net) so that we can
28 * find a solution.
29 */
30//-----------------------------------------------------------------------------
31
32class DataElement;
37{
38 friend std::ostream& operator<<(std::ostream &_os, const MrProtocol &d);
39public :
42
43 bool Load( const ByteValue * bv, const char * str, int version );
44 void Print(std::ostream &os) const;
45
46 int GetVersion() const;
47
48 const char * GetMrProtocolByName(const char *name) const;
49
50 bool FindMrProtocolByName(const char *name) const;
51
52 struct Vector3
53 {
54 double dSag;
55 double dCor;
56 double dTra;
57 };
64 {
65 std::vector< Slice > Slices;
66 };
68
69private:
70 struct Element;
71 struct Internals;
72 Internals *Pimpl;
73};
74//-----------------------------------------------------------------------------
75inline std::ostream& operator<<(std::ostream &os, const MrProtocol &d)
76{
77 d.Print( os );
78 return os;
79}
80
81} // end namespace gdcm
82//-----------------------------------------------------------------------------
83#endif //GDCMMRPROTOCOL_H
Class to represent binary value (array of bytes)
Definition gdcmByteValue.h:35
Element class.
Definition gdcmElement.h:70
Class for MrProtocol.
Definition gdcmMrProtocol.h:37
int GetVersion() const
bool FindMrProtocolByName(const char *name) const
bool GetSliceArray(MrProtocol::SliceArray &sa) const
void Print(std::ostream &os) const
const char * GetMrProtocolByName(const char *name) const
bool Load(const ByteValue *bv, const char *str, int version)
#define GDCM_EXPORT
Definition gdcmWin32.h:34
Definition gdcmASN1.h:21
std::ostream & operator<<(std::ostream &os, const Directory &d)
Definition gdcmDirectory.h:88
Definition gdcmMrProtocol.h:64
std::vector< Slice > Slices
Definition gdcmMrProtocol.h:65
Definition gdcmMrProtocol.h:59
Vector3 Normal
Definition gdcmMrProtocol.h:60
Vector3 Position
Definition gdcmMrProtocol.h:61
Definition gdcmMrProtocol.h:53
double dTra
Definition gdcmMrProtocol.h:56
double dSag
Definition gdcmMrProtocol.h:54
double dCor
Definition gdcmMrProtocol.h:55