GDCM 2.2.1

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

- File List
- File Members

gdcmImageRegionReader.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 GDCMIMAGEEXTENTREADER_H
15 #define GDCMIMAGEEXTENTREADER_H
16
17 #include "gdcmImageReader.h"
18 #include "gdcmImage.h"
19 #include "gdcmRegion.h"
20
21 namespace gdcm
22 {
23
24 class ImageRegionReaderInternals;
29 class GDCM_EXPORT ImageRegionReader : public ImageReader
30 {
31 public:
32 ImageRegionReader();
33 ~ImageRegionReader();
34
36 void SetRegion(Region const & region);
37 Region const &GetRegion() const;
38
42 size_t ComputeBufferLength() const;
43
46 bool ReadInformation();
47
50 bool ReadIntoBuffer(char *inreadbuffer, size_t buflen);
51
52 protected:
54 bool Read();
55
56 private:
57 bool ReadRAWIntoBuffer(char *buffer, size_t buflen);
58 bool ReadRLEIntoBuffer(char *buffer, size_t buflen);
59 bool ReadJPEG2000IntoBuffer(char *buffer, size_t buflen);
60 bool ReadJPEGIntoBuffer(char *buffer, size_t buflen);
61 bool ReadJPEGLSIntoBuffer(char *buffer, size_t buflen);
62 ImageRegionReaderInternals *Internals;
63 };
64
65 } // end namespace gdcm
66
67 #endif //GDCMIMAGEEXTENTREADER_H