Magick++ 6.9.13
Loading...
Searching...
No Matches
CoderInfo.h
1// This may look like C code, but it is really -*- C++ -*-
2//
3// Copyright Bob Friesenhahn, 2001, 2002
4// Copyright Dirk Lemstra 2013-2014
5//
6// CoderInfo Definition
7//
8// Container for image format support information.
9//
10
11#if !defined (Magick_CoderInfo_header)
12#define Magick_CoderInfo_header 1
13
14#include "Magick++/Include.h"
15#include <string>
16
17namespace Magick
18{
19 class MagickPPExport CoderInfo
20 {
21 public:
22
23 enum MatchType {
24 AnyMatch, // match any coder
25 TrueMatch, // match coder if true
26 FalseMatch // match coder if false
27 };
28
29 // Default constructor
30 CoderInfo(void);
31
32 // Copy constructor
33 CoderInfo(const CoderInfo &coder_);
34
35 // Construct with coder name
36 CoderInfo(const std::string &name_);
37
38 // Destructor
39 ~CoderInfo(void);
40
41 // Assignment operator
42 CoderInfo& operator=(const CoderInfo &coder_);
43
44 // Format description
45 std::string description(void) const;
46
47 // Format supports multiple frames
48 bool isMultiFrame(void) const;
49
50 // Format is readable
51 bool isReadable(void) const;
52
53 // Format is writeable
54 bool isWritable(void) const;
55
56 // Format mime type
57 std::string mimeType(void) const;
58
59 // Format name
60 std::string name(void) const;
61
62 // Unregisters this coder
63 bool unregister(void) const;
64
65 //
66 // Implemementation methods
67 //
68 CoderInfo(const MagickCore::MagickInfo *magickInfo_);
69
70 private:
71 std::string _name;
72 std::string _description;
73 std::string _mimeType;
74 bool _isReadable;
75 bool _isWritable;
76 bool _isMultiFrame;
77 };
78
79} // namespace Magick
80
81#endif // Magick_CoderInfo_header