Hoyt's FORK of DemoIccMAX
2.1.17.hoyt
Documentation for Hoyt's FORK of DemoIccMAX
Loading...
Searching...
No Matches
MainPage.h
Go to the documentation of this file.
1
/** @file
2
File: MainPage.h
3
4
Note: This file was added to provide documentation in doxygen. Nothing in IccProfLib actually uses it.
5
*/
6
7
/** \mainpage
8
*
9
* The IccProfLib is an open source cross platform C++ library for reading, writing, manipulating,
10
* and applying ICC profiles. It is an attempt at a strict interpretation of the ICC profile
11
* specification.
12
* The structure of the library very closely follows the structure of the specification.
13
* A working knowledge of the ICC specification and color management workflows will aid in
14
* understanding the library and it's proper usage. For the latest ICC profile
15
* specification please visit http://www.color.org. Several useful white papers and resources
16
* are also available on the website.
17
*
18
*
19
* Here are some of the things that the IccProfLib supports:
20
* - ICC profile file I/O in CIccProfile class
21
* - Version 5.0 profiles (read & write)
22
* - Version 4.3 profiles (read & write)
23
* - Version 2.x profiles (read)
24
* - C++ classes for all specified tag types (based on CIccTag). Default behavior for
25
* unrecognized private tag types is implemented using a generic Tag class.
26
* - Two basic Color Management Module (CMM) implementations
27
* - Basic pixel level transforms in CIccCmm class
28
* - Additional named color profile support in CIccNamedColorCmm class
29
* - File I/O can be re-directed
30
* - All operations performed using floating point. Pixel precision not limited to integers.
31
* - Transforms are done one pixel at a time.
32
* - Flexible number of profile transforms in a series (as long as the colorspaces match)
33
* - Multidimensional lookup table interpolation
34
* - Three dimensional interpolation uses either linear or tetrahedral interpolation
35
* (selectable at time profile is attached to the CMM).
36
* - Greater than three dimensional interpolation uses linear interpolation
37
* - Matrix/TRC support
38
* - Calculation of Profile ID using the MD5 fingerprinting method (see IccMD5.h)
39
* - Dynamic creation and seemless use of private CIccTag derived objects that are implemented
40
* outside of IccProfLib (IE inside a private library or application that links with
41
* IccProfLib).
42
*
43
* <b>USAGE COMMENTS</b>
44
* -# The IccProfLib implements very basic CMMs. These may not
45
* provide the optimum speed in all situations. Profile transforms are done one pixel
46
* at a time for each profile in a profile transformation chain. Various techniques
47
* can possibly be used to improve performance. An initial thought would be to create a
48
* CMM that uses the basic CIccCmm to generate a single link transform (concatenating
49
* the profiles). Such a transform could employ integer math if needed.
50
* -# The IccProfLib can be used to open, generate, manipulate (by adding, removing, or
51
* modifying tags), and/or save profiles without needing to use the pixel transformations
52
* provided by the CMM classes.
53
* -# Several applications have been written (in RefIccMAX) that make use of the IccProfLib.
54
* It is advisable to examine these applications for additional guidance in making
55
* the best use of the IccProfLib.
56
* -# Before compiling on non-Windows and non Mac OSX platforms it will be necessary to edit
57
* the configuration parameters in IccProfLibConf.h.
58
*
59
* <b>VERSION HISTORY</b>
60
* - Initially based on April 2011 - 1.6.5 release of SampleICC
61
*
62
* <b>TODO List</b>
63
* TBD
64
*
65
* <b>The ICC Software License, Version 0.2</b>
66
*
67
* Copyright � 2003-2016 The International Color Consortium. All rights
68
* reserved.
69
*
70
* Redistribution and use in source and binary forms, with or without
71
* modification, are permitted provided that the following conditions
72
* are met:
73
*
74
* 1. Redistributions of source code must retain the above copyright
75
* notice, this list of conditions and the following disclaimer.
76
*
77
* 2. Redistributions in binary form must reproduce the above copyright
78
* notice, this list of conditions and the following disclaimer in
79
* the documentation and/or other materials provided with the
80
* distribution.
81
*
82
* 3. In the absence of prior written permission, the names "ICC" and "The
83
* International Color Consortium" must not be used to imply that the
84
* ICC organization endorses or promotes products derived from this
85
* software.
86
*
87
*
88
* ====================================================================\n
89
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED\n
90
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES\n
91
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\n
92
* DISCLAIMED. IN NO EVENT SHALL THE INTERNATIONAL COLOR CONSORTIUM OR\n
93
* ITS CONTRIBUTING MEMBERS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n
94
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n
95
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF\n
96
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND\n
97
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\n
98
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT\n
99
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF\n
100
* SUCH DAMAGE.\n
101
* ====================================================================
102
*
103
* This software consists of voluntary contributions made by many
104
* individuals on behalf of the The International Color Consortium.
105
*
106
* Membership in the ICC is encouraged when this software is used for
107
* commercial purposes.
108
*
109
*
110
* <b>CONTACT</b>
111
*
112
* Please send your questions, comments, and or suggestions to forums
113
* on the SampleICC project site. (http://sourceforge.net/projects/sampleicc/).\n
114
*
115
*/
116
IccProfLib
MainPage.h
Generated on Sun Jun 2 2024 07:46:00 for Hoyt's FORK of DemoIccMAX by
1.11.0