GDCM 2.2.1

- Main Page
- Related Pages
- Namespaces
- Classes
- Files
- Examples

- File List
- File Members

gdcmRAWCodec.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 GDCMRAWCODEC_H
15 #define GDCMRAWCODEC_H
16
17 #include "gdcmImageCodec.h"
18
19 namespace gdcm
20 {
21
22 class RAWInternals;
26 class GDCM_EXPORT RAWCodec : public ImageCodec
27 {
28 public:
29 RAWCodec();
30 ~RAWCodec();
31 bool CanCode(TransferSyntax const &ts) const;
32 bool CanDecode(TransferSyntax const &ts) const;
33 bool Decode(DataElement const &is, DataElement &os);
34 bool Code(DataElement const &in, DataElement &out);
35
36 bool GetHeaderInfo(std::istream &is, TransferSyntax &ts);
37
40 bool DecodeBytes(const char* inBytes, size_t inBufferLength,
41 char* outBytes, size_t inOutBufferLength);
42
43 protected:
44 bool DecodeByStreams(std::istream &is, std::ostream &os);
45
46 private:
47 RAWInternals *Internals;
48 };
49
50 } // end namespace gdcm
51
52 #endif // GDCMRAWCODEC_H