Blender
V4.3
source
blender
imbuf
intern
cineon
cineonlib.h
Go to the documentation of this file.
1
/* SPDX-FileCopyrightText: 1999-2001 David Hodson <hodsond@acm.org>.
2
*
3
* SPDX-License-Identifier: GPL-2.0-or-later */
4
12
#pragma once
13
14
#include "
logImageCore.h
"
15
16
#ifdef __cplusplus
17
extern
"C"
{
18
#endif
19
20
#define CINEON_FILE_MAGIC 0x802A5FD7
21
#define CINEON_UNDEFINED_U8 0xFF
22
#define CINEON_UNDEFINED_U16 0xFFFF
23
#define CINEON_UNDEFINED_U32 0xFFFFFFFF
24
#define CINEON_UNDEFINED_R32 0x7F800000
25
#define CINEON_UNDEFINED_CHAR 0
26
27
typedef
struct
{
28
unsigned
int
magic_num
;
29
unsigned
int
offset
;
30
unsigned
int
gen_hdr_size
;
31
unsigned
int
ind_hdr_size
;
32
unsigned
int
user_data_size
;
33
unsigned
int
file_size
;
34
char
version[8];
35
char
file_name[100];
36
char
creation_date[12];
37
char
creation_time[12];
38
char
reserved[36];
39
}
CineonFileHeader
;
40
41
typedef
struct
{
42
uchar
descriptor1
;
43
uchar
descriptor2
;
44
uchar
bits_per_sample
;
45
uchar
filler
;
46
unsigned
int
pixels_per_line
;
47
unsigned
int
lines_per_image
;
48
unsigned
int
ref_low_data
;
49
float
ref_low_quantity
;
50
unsigned
int
ref_high_data
;
51
float
ref_high_quantity
;
52
}
CineonElementHeader
;
53
54
typedef
struct
{
55
uchar
orientation
;
56
uchar
elements_per_image
;
57
unsigned
short
filler
;
58
CineonElementHeader
element[8];
59
float
white_point_x
;
60
float
white_point_y
;
61
float
red_primary_x
;
62
float
red_primary_y
;
63
float
green_primary_x
;
64
float
green_primary_y
;
65
float
blue_primary_x
;
66
float
blue_primary_y
;
67
char
label
[200];
68
char
reserved[28];
69
uchar
interleave
;
70
uchar
packing
;
71
uchar
data_sign
;
72
uchar
sense
;
73
unsigned
int
line_padding
;
74
unsigned
int
element_padding
;
75
char
reserved2[20];
76
}
CineonImageHeader
;
77
78
typedef
struct
{
79
int
x_offset
;
80
int
y_offset
;
81
char
file_name[100];
82
char
creation_date[12];
83
char
creation_time[12];
84
char
input_device[64];
85
char
model_number[32];
86
char
input_serial_number[32];
87
float
x_input_samples_per_mm
;
88
float
y_input_samples_per_mm
;
89
float
input_device_gamma
;
90
char
reserved[40];
91
}
CineonOriginationHeader
;
92
93
typedef
struct
{
94
uchar
film_code
;
95
uchar
film_type
;
96
uchar
edge_code_perforation_offset
;
97
uchar
filler
;
98
unsigned
int
prefix
;
99
unsigned
int
count
;
100
char
format
[32];
101
unsigned
int
frame_position
;
102
float
frame_rate
;
103
char
attribute[32];
104
char
slate[200];
105
char
reserved[740];
106
}
CineonFilmHeader
;
107
108
typedef
struct
{
109
CineonFileHeader
fileHeader
;
110
CineonImageHeader
imageHeader
;
111
CineonOriginationHeader
originationHeader
;
112
CineonFilmHeader
filmHeader
;
113
}
CineonMainHeader
;
114
115
void
cineonSetVerbose
(
int
);
116
LogImageFile
*
cineonOpen
(
const
uchar
*byteStuff,
int
fromMemory,
size_t
bufferSize);
117
LogImageFile
*
cineonCreate
(
118
const
char
*filepath,
int
width,
int
height,
int
bitsPerSample,
const
char
*creator);
119
120
#ifdef __cplusplus
121
}
122
#endif
uchar
unsigned char uchar
Definition
BLI_sys_types.h:71
cineonCreate
LogImageFile * cineonCreate(const char *filepath, int width, int height, int bitsPerSample, const char *creator)
Definition
cineonlib.cc:354
cineonOpen
LogImageFile * cineonOpen(const uchar *byteStuff, int fromMemory, size_t bufferSize)
Definition
cineonlib.cc:125
cineonSetVerbose
void cineonSetVerbose(int)
Definition
cineonlib.cc:33
label
const char * label
Definition
deg_debug_stats_gnuplot.cc:32
logImageCore.h
format
format
Definition
logImageCore.h:39
CineonElementHeader
Definition
cineonlib.h:41
CineonElementHeader::ref_low_data
unsigned int ref_low_data
Definition
cineonlib.h:48
CineonElementHeader::filler
uchar filler
Definition
cineonlib.h:45
CineonElementHeader::descriptor1
uchar descriptor1
Definition
cineonlib.h:42
CineonElementHeader::descriptor2
uchar descriptor2
Definition
cineonlib.h:43
CineonElementHeader::ref_high_data
unsigned int ref_high_data
Definition
cineonlib.h:50
CineonElementHeader::pixels_per_line
unsigned int pixels_per_line
Definition
cineonlib.h:46
CineonElementHeader::ref_low_quantity
float ref_low_quantity
Definition
cineonlib.h:49
CineonElementHeader::lines_per_image
unsigned int lines_per_image
Definition
cineonlib.h:47
CineonElementHeader::bits_per_sample
uchar bits_per_sample
Definition
cineonlib.h:44
CineonElementHeader::ref_high_quantity
float ref_high_quantity
Definition
cineonlib.h:51
CineonFileHeader
Definition
cineonlib.h:27
CineonFileHeader::file_size
unsigned int file_size
Definition
cineonlib.h:33
CineonFileHeader::magic_num
unsigned int magic_num
Definition
cineonlib.h:28
CineonFileHeader::offset
unsigned int offset
Definition
cineonlib.h:29
CineonFileHeader::gen_hdr_size
unsigned int gen_hdr_size
Definition
cineonlib.h:30
CineonFileHeader::ind_hdr_size
unsigned int ind_hdr_size
Definition
cineonlib.h:31
CineonFileHeader::user_data_size
unsigned int user_data_size
Definition
cineonlib.h:32
CineonFilmHeader
Definition
cineonlib.h:93
CineonFilmHeader::filler
uchar filler
Definition
cineonlib.h:97
CineonFilmHeader::edge_code_perforation_offset
uchar edge_code_perforation_offset
Definition
cineonlib.h:96
CineonFilmHeader::prefix
unsigned int prefix
Definition
cineonlib.h:98
CineonFilmHeader::count
unsigned int count
Definition
cineonlib.h:99
CineonFilmHeader::film_code
uchar film_code
Definition
cineonlib.h:94
CineonFilmHeader::frame_rate
float frame_rate
Definition
cineonlib.h:102
CineonFilmHeader::film_type
uchar film_type
Definition
cineonlib.h:95
CineonFilmHeader::frame_position
unsigned int frame_position
Definition
cineonlib.h:101
CineonImageHeader
Definition
cineonlib.h:54
CineonImageHeader::elements_per_image
uchar elements_per_image
Definition
cineonlib.h:56
CineonImageHeader::packing
uchar packing
Definition
cineonlib.h:70
CineonImageHeader::filler
unsigned short filler
Definition
cineonlib.h:57
CineonImageHeader::line_padding
unsigned int line_padding
Definition
cineonlib.h:73
CineonImageHeader::blue_primary_x
float blue_primary_x
Definition
cineonlib.h:65
CineonImageHeader::white_point_x
float white_point_x
Definition
cineonlib.h:59
CineonImageHeader::orientation
uchar orientation
Definition
cineonlib.h:55
CineonImageHeader::interleave
uchar interleave
Definition
cineonlib.h:69
CineonImageHeader::sense
uchar sense
Definition
cineonlib.h:72
CineonImageHeader::red_primary_y
float red_primary_y
Definition
cineonlib.h:62
CineonImageHeader::blue_primary_y
float blue_primary_y
Definition
cineonlib.h:66
CineonImageHeader::data_sign
uchar data_sign
Definition
cineonlib.h:71
CineonImageHeader::green_primary_y
float green_primary_y
Definition
cineonlib.h:64
CineonImageHeader::red_primary_x
float red_primary_x
Definition
cineonlib.h:61
CineonImageHeader::green_primary_x
float green_primary_x
Definition
cineonlib.h:63
CineonImageHeader::element_padding
unsigned int element_padding
Definition
cineonlib.h:74
CineonImageHeader::white_point_y
float white_point_y
Definition
cineonlib.h:60
CineonMainHeader
Definition
cineonlib.h:108
CineonMainHeader::fileHeader
CineonFileHeader fileHeader
Definition
cineonlib.h:109
CineonMainHeader::originationHeader
CineonOriginationHeader originationHeader
Definition
cineonlib.h:111
CineonMainHeader::imageHeader
CineonImageHeader imageHeader
Definition
cineonlib.h:110
CineonMainHeader::filmHeader
CineonFilmHeader filmHeader
Definition
cineonlib.h:112
CineonOriginationHeader
Definition
cineonlib.h:78
CineonOriginationHeader::y_input_samples_per_mm
float y_input_samples_per_mm
Definition
cineonlib.h:88
CineonOriginationHeader::input_device_gamma
float input_device_gamma
Definition
cineonlib.h:89
CineonOriginationHeader::x_input_samples_per_mm
float x_input_samples_per_mm
Definition
cineonlib.h:87
CineonOriginationHeader::x_offset
int x_offset
Definition
cineonlib.h:79
CineonOriginationHeader::y_offset
int y_offset
Definition
cineonlib.h:80
LogImageFile
Definition
logImageCore.h:58
Generated on Thu Feb 6 2025 07:36:39 for Blender by
doxygen
1.11.0