GIPLImageReader.h
1 /*
2  * Medical Image Registration ToolKit (MIRTK)
3  *
4  * Copyright 2008-2015 Imperial College London
5  * Copyright 2008-2015 Daniel Rueckert, Julia Schnabel
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  */
19 
20 #ifndef MIRTK_GIPLImageReader_H
21 #define MIRTK_GIPLImageReader_H
22 
23 #include "mirtk/ImageReader.h"
24 
25 
26 namespace mirtk {
27 
28 
29 /**
30  * Class for reading images in GIPL file format.
31  *
32  * This is a class which reads images in GIPL file format and converts them
33  * into images. The GIPL file format is a file format for 3D images. It has
34  * been used in Guy's Hospital as universal file format for medical images.
35  * Supported voxel types are char, unsigned char, short and unsigned short,
36  * int, unsigned int and float.
37  */
39 {
40  mirtkObjectMacro(GIPLImageReader);
41 
42 protected:
43 
44  /// Read header of GIPL file
45  virtual void ReadHeader();
46 
47 public:
48 
49  /// Returns whether file has correct header
50  static bool CheckHeader(const char *);
51 
52  /// Check if this reader can read a given image file
53  virtual bool CanRead(const char *) const;
54 
55 };
56 
57 
58 } // namespace mirtk
59 
60 #endif // MIRTK_GIPLImageReader_H
virtual bool CanRead(const char *) const
Check if this reader can read a given image file.
static bool CheckHeader(const char *)
Returns whether file has correct header.
Definition: IOConfig.h:41
virtual void ReadHeader()
Read header of GIPL file.