Hoyt's FORK of DemoIccMAX
2.1.17.hoyt
Documentation for Hoyt's FORK of DemoIccMAX
Loading...
Searching...
No Matches
IccMpeXmlFactory.cpp
Go to the documentation of this file.
1
/** @file
2
File: IccMpeXmlFactory.cpp
3
4
Contains: Implementation of a CIccTagXmlFactory class and
5
creation factories - An extension factory providing ICC
6
XML format capabilities
7
8
Version: V1
9
10
Copyright: (c) see ICC Software License
11
*/
12
13
/*
14
* The ICC Software License, Version 0.2
15
*
16
*
17
* Copyright (c) 2003-2012 The International Color Consortium. All rights
18
* reserved.
19
*
20
* Redistribution and use in source and binary forms, with or without
21
* modification, are permitted provided that the following conditions
22
* are met:
23
*
24
* 1. Redistributions of source code must retain the above copyright
25
* notice, this list of conditions and the following disclaimer.
26
*
27
* 2. Redistributions in binary form must reproduce the above copyright
28
* notice, this list of conditions and the following disclaimer in
29
* the documentation and/or other materials provided with the
30
* distribution.
31
*
32
* 3. In the absence of prior written permission, the names "ICC" and "The
33
* International Color Consortium" must not be used to imply that the
34
* ICC organization endorses or promotes products derived from this
35
* software.
36
*
37
*
38
* THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
39
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
40
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
41
* DISCLAIMED. IN NO EVENT SHALL THE INTERNATIONAL COLOR CONSORTIUM OR
42
* ITS CONTRIBUTING MEMBERS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
43
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
44
* LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
45
* USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
46
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
47
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
48
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
49
* SUCH DAMAGE.
50
* ====================================================================
51
*
52
* This software consists of voluntary contributions made by many
53
* individuals on behalf of the The International Color Consortium.
54
*
55
*
56
* Membership in the ICC is encouraged when this software is used for
57
* commercial purposes.
58
*
59
*
60
* For more information on The International Color Consortium, please
61
* see <http://www.color.org/>.
62
*
63
*
64
*/
65
66
#include "
IccMpeXml.h
"
67
#include "
IccMpeXmlFactory.h
"
68
#include "
IccUtil.h
"
69
#include "
IccProfile.h
"
70
71
#ifdef USEREFICCMAXNAMESPACE
72
namespace
refIccMAX {
73
#endif
74
75
CIccMultiProcessElement
*
CIccMpeXmlFactory::CreateElement
(
icElemTypeSignature
elemTypeSig)
76
{
77
switch
(elemTypeSig) {
78
case
icSigMatrixElemType
:
79
return
new
CIccMpeXmlMatrix
();
80
81
case
icSigCurveSetElemType
:
82
return
new
CIccMpeXmlCurveSet
();
83
84
case
icSigCLutElemType
:
85
return
new
CIccMpeXmlCLUT
();
86
87
case
icSigExtCLutElemType
:
88
return
new
CIccMpeXmlExtCLUT
();
89
90
case
icSigCalculatorElemType
:
91
return
new
CIccMpeXmlCalculator
();
92
93
case
icSigTintArrayElemType
:
94
return
new
CIccMpeXmlTintArray
();
95
96
case
icSigToneMapElemType
:
97
return
new
CIccMpeXmlToneMap
();
98
99
case
icSigXYZToJabElemType
:
100
return
new
CIccMpeXmlXYZToJab
();
101
102
case
icSigJabToXYZElemType
:
103
return
new
CIccMpeXmlJabToXYZ
();
104
105
case
icSigEmissionMatrixElemType
:
106
return
new
CIccMpeXmlEmissionMatrix
();
107
108
case
icSigInvEmissionMatrixElemType
:
109
return
new
CIccMpeXmlInvEmissionMatrix
();
110
111
case
icSigEmissionCLUTElemType
:
112
return
new
CIccMpeXmlEmissionCLUT
();
113
114
case
icSigReflectanceCLUTElemType
:
115
return
new
CIccMpeXmlReflectanceCLUT
();
116
117
case
icSigEmissionObserverElemType
:
118
return
new
CIccMpeXmlEmissionObserver
();
119
120
case
icSigReflectanceObserverElemType
:
121
return
new
CIccMpeXmlReflectanceObserver
();
122
123
case
icSigBAcsElemType
:
124
return
new
CIccMpeXmlBAcs
();
125
126
case
icSigEAcsElemType
:
127
return
new
CIccMpeXmlEAcs
();
128
129
default
:
130
return
new
CIccMpeXmlUnknown
();
131
}
132
}
133
134
bool
CIccMpeXmlFactory::GetElementSigName
(std::string &elemName,
icElemTypeSignature
elemTypeSig)
135
{
136
return
false
;
137
}
138
139
#ifdef USEREFICCMAXNAMESPACE
140
}
//namespace refIccMAX
141
#endif
IccMpeXml.h
File: IccMpeXml.h.
IccMpeXmlFactory.h
File: IccMpeXmlFactory.h.
IccProfile.h
File: IccProfile.h.
IccUtil.h
File: IccUtil.h.
CIccMpeXmlBAcs
Definition
IccMpeXml.h:206
CIccMpeXmlCLUT
Definition
IccMpeXml.h:180
CIccMpeXmlCalculator
Definition
IccMpeXml.h:302
CIccMpeXmlCurveSet
Definition
IccMpeXml.h:110
CIccMpeXmlEAcs
Definition
IccMpeXml.h:219
CIccMpeXmlEmissionCLUT
Definition
IccMpeXml.h:370
CIccMpeXmlEmissionMatrix
Definition
IccMpeXml.h:344
CIccMpeXmlEmissionObserver
Definition
IccMpeXml.h:396
CIccMpeXmlExtCLUT
Definition
IccMpeXml.h:193
CIccMpeXmlFactory::GetElementSigName
virtual bool GetElementSigName(std::string &elemName, icElemTypeSignature elemTypeSig)
Function: GetElementSigName(elemTypeSig) Get display name of elemTypeSig.
Definition
IccMpeXmlFactory.cpp:134
CIccMpeXmlFactory::CreateElement
virtual CIccMultiProcessElement * CreateElement(icElemTypeSignature elementSig)
Function: CreateElement(elemTypeSig) Create a element of type elemTypeSig.
Definition
IccMpeXmlFactory.cpp:75
CIccMpeXmlInvEmissionMatrix
Definition
IccMpeXml.h:357
CIccMpeXmlJabToXYZ
Definition
IccMpeXml.h:232
CIccMpeXmlMatrix
Definition
IccMpeXml.h:167
CIccMpeXmlReflectanceCLUT
Definition
IccMpeXml.h:383
CIccMpeXmlReflectanceObserver
Definition
IccMpeXml.h:409
CIccMpeXmlTintArray
Definition
IccMpeXml.h:126
CIccMpeXmlToneMap
Definition
IccMpeXml.h:152
CIccMpeXmlUnknown
Definition
IccMpeXml.h:88
CIccMpeXmlXYZToJab
Definition
IccMpeXml.h:245
CIccMultiProcessElement
Class: CIccMultiProcessElement.
Definition
IccTagMPE.h:146
icElemTypeSignature
icElemTypeSignature
Multi-Processing Element type signatures.
Definition
icProfileHeader.h:641
icSigEmissionMatrixElemType
@ icSigEmissionMatrixElemType
Definition
icProfileHeader.h:660
icSigBAcsElemType
@ icSigBAcsElemType
Definition
icProfileHeader.h:646
icSigEmissionCLUTElemType
@ icSigEmissionCLUTElemType
Definition
icProfileHeader.h:662
icSigReflectanceCLUTElemType
@ icSigReflectanceCLUTElemType
Definition
icProfileHeader.h:663
icSigCurveSetElemType
@ icSigCurveSetElemType
Definition
icProfileHeader.h:643
icSigCLutElemType
@ icSigCLutElemType
Definition
icProfileHeader.h:645
icSigToneMapElemType
@ icSigToneMapElemType
Definition
icProfileHeader.h:657
icSigReflectanceObserverElemType
@ icSigReflectanceObserverElemType
Definition
icProfileHeader.h:665
icSigExtCLutElemType
@ icSigExtCLutElemType
Definition
icProfileHeader.h:650
icSigTintArrayElemType
@ icSigTintArrayElemType
Definition
icProfileHeader.h:654
icSigXYZToJabElemType
@ icSigXYZToJabElemType
Definition
icProfileHeader.h:651
icSigJabToXYZElemType
@ icSigJabToXYZElemType
Definition
icProfileHeader.h:652
icSigMatrixElemType
@ icSigMatrixElemType
Definition
icProfileHeader.h:644
icSigEmissionObserverElemType
@ icSigEmissionObserverElemType
Definition
icProfileHeader.h:664
icSigInvEmissionMatrixElemType
@ icSigInvEmissionMatrixElemType
Definition
icProfileHeader.h:661
icSigEAcsElemType
@ icSigEAcsElemType
Definition
icProfileHeader.h:647
icSigCalculatorElemType
@ icSigCalculatorElemType
Definition
icProfileHeader.h:649
IccXML
IccLibXML
IccMpeXmlFactory.cpp
Generated on Sun Jun 2 2024 07:46:00 for Hoyt's FORK of DemoIccMAX by
1.11.0