ReactOS
0.4.16-dev-41-ge8c7597
mscms_priv.h
Go to the documentation of this file.
1
/*
2
* MSCMS - Color Management System for Wine
3
*
4
* Copyright 2004, 2005 Hans Leidekker
5
*
6
* This library is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU Lesser General Public
8
* License as published by the Free Software Foundation; either
9
* version 2.1 of the License, or (at your option) any later version.
10
*
11
* This library is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
* Lesser General Public License for more details.
15
*
16
* You should have received a copy of the GNU Lesser General Public
17
* License along with this library; if not, write to the Free Software
18
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19
*/
20
21
#ifdef HAVE_LCMS2
22
#include <lcms2.h>
23
24
/* A simple structure to tie together a pointer to an icc profile, an lcms
25
* color profile handle and a Windows file handle. If the profile is memory
26
* based the file handle field is set to INVALID_HANDLE_VALUE. The 'access'
27
* field records the access parameter supplied to an OpenColorProfile()
28
* call, i.e. PROFILE_READ or PROFILE_READWRITE.
29
*/
30
31
struct
profile
32
{
33
HANDLE
file
;
34
DWORD
access
;
35
char
*
data
;
36
DWORD
size
;
37
cmsHPROFILE cmsprofile;
38
};
39
40
struct
transform
41
{
42
cmsHTRANSFORM cmstransform;
43
};
44
45
extern
HPROFILE
create_profile(
struct
profile
* )
DECLSPEC_HIDDEN
;
46
extern
BOOL
close_profile(
HPROFILE
)
DECLSPEC_HIDDEN
;
47
48
extern
HTRANSFORM
create_transform(
struct
transform
* )
DECLSPEC_HIDDEN
;
49
extern
BOOL
close_transform(
HTRANSFORM
)
DECLSPEC_HIDDEN
;
50
51
struct
profile
*grab_profile(
HPROFILE
)
DECLSPEC_HIDDEN
;
52
struct
transform
*grab_transform(
HTRANSFORM
)
DECLSPEC_HIDDEN
;
53
54
void
release_profile(
struct
profile
* )
DECLSPEC_HIDDEN
;
55
void
release_transform(
struct
transform
* )
DECLSPEC_HIDDEN
;
56
57
extern
void
free_handle_tables(
void
)
DECLSPEC_HIDDEN
;
58
59
extern
BOOL
get_tag_data(
const
struct
profile
*,
TAGTYPE
,
DWORD
,
void
*,
DWORD
* )
DECLSPEC_HIDDEN
;
60
extern
BOOL
set_tag_data(
const
struct
profile
*,
TAGTYPE
,
DWORD
,
const
void
*,
DWORD
* )
DECLSPEC_HIDDEN
;
61
extern
void
get_profile_header(
const
struct
profile
*,
PROFILEHEADER
* )
DECLSPEC_HIDDEN
;
62
extern
void
set_profile_header(
const
struct
profile
*,
const
PROFILEHEADER
* )
DECLSPEC_HIDDEN
;
63
64
#endif
/* HAVE_LCMS2 */
65
66
extern
const
char
*
dbgstr_tag
(
DWORD
)
DECLSPEC_HIDDEN
;
DECLSPEC_HIDDEN
#define DECLSPEC_HIDDEN
Definition:
precomp.h:8
BOOL
unsigned int BOOL
Definition:
ntddk_ex.h:94
DWORD
unsigned long DWORD
Definition:
ntddk_ex.h:95
data
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition:
gl.h:1950
size
GLsizeiptr size
Definition:
glext.h:5919
transform
GLuint GLenum GLenum transform
Definition:
glext.h:9407
access
GLuint GLint GLboolean GLint GLenum access
Definition:
glext.h:7866
TAGTYPE
DWORD TAGTYPE
Definition:
icm.h:30
void
Definition:
nsiface.idl:2307
profile
#define profile
Definition:
kernel32.h:12
dbgstr_tag
const char * dbgstr_tag(DWORD) DECLSPEC_HIDDEN
Definition:
profile.c:58
file
Definition:
fci.c:127
tagPROFILEHEADER
Definition:
icm.h:194
dll
win32
mscms
mscms_priv.h
Generated on Wed Sep 18 2024 06:04:06 for ReactOS by
1.9.6