PGMImageReader.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_PGMImageReader_H
21 #define MIRTK_PGMImageReader_H
22 
23 #include "mirtk/ImageReader.h"
24 
25 
26 namespace mirtk {
27 
28 
29 /**
30  * Class for reading images in PGM file format.
31  *
32  * This is a class which reads images in PGM file format and converts them
33  * into images. The PGM (portable graymap) file format is a file format for
34  * 2D images and is defined in pgm(1). At the moment only images in PGM raw
35  * file format are supported.
36  */
38 {
39  mirtkObjectMacro(PGMImageReader);
40 
41 protected:
42 
43  /// Read header of PGM file
44  virtual void ReadHeader();
45 
46 public:
47 
48  /// Return whether file has correct header
49  static bool CheckHeader(const char *);
50 
51  /// Check if this reader can read a given image file
52  virtual bool CanRead(const char *) const;
53 
54 };
55 
56 
57 } // namespace mirtk
58 
59 #endif // MIRTK_PGMImageReader_H
virtual void ReadHeader()
Read header of PGM file.
Definition: IOConfig.h:41
static bool CheckHeader(const char *)
Return whether file has correct header.
virtual bool CanRead(const char *) const
Check if this reader can read a given image file.