Blender
V2.93
source
blender
imbuf
intern
cineon
cineonlib.h
Go to the documentation of this file.
1
/*
2
* This program is free software; you can redistribute it and/or
3
* modify it under the terms of the GNU General Public License
4
* as published by the Free Software Foundation; either version 2
5
* of the License, or (at your option) any later version.
6
*
7
* This program is distributed in the hope that it will be useful,
8
* but WITHOUT ANY WARRANTY; without even the implied warranty of
9
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10
* GNU General Public License for more details.
11
*
12
* You should have received a copy of the GNU General Public License
13
* along with this program; if not, write to the Free Software Foundation,
14
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15
*
16
* Copyright 1999,2000,2001 David Hodson <hodsond@acm.org>
17
*/
18
26
#pragma once
27
28
#include "
logImageCore.h
"
29
30
#ifdef __cplusplus
31
extern
"C"
{
32
#endif
33
34
#define CINEON_FILE_MAGIC 0x802A5FD7
35
#define CINEON_UNDEFINED_U8 0xFF
36
#define CINEON_UNDEFINED_U16 0xFFFF
37
#define CINEON_UNDEFINED_U32 0xFFFFFFFF
38
#define CINEON_UNDEFINED_R32 0x7F800000
39
#define CINEON_UNDEFINED_CHAR 0
40
41
typedef
struct
{
42
unsigned
int
magic_num
;
43
unsigned
int
offset
;
44
unsigned
int
gen_hdr_size
;
45
unsigned
int
ind_hdr_size
;
46
unsigned
int
user_data_size
;
47
unsigned
int
file_size
;
48
char
version[8];
49
char
file_name[100];
50
char
creation_date[12];
51
char
creation_time[12];
52
char
reserved[36];
53
}
CineonFileHeader
;
54
55
typedef
struct
{
56
unsigned
char
descriptor1
;
57
unsigned
char
descriptor2
;
58
unsigned
char
bits_per_sample
;
59
unsigned
char
filler
;
60
unsigned
int
pixels_per_line
;
61
unsigned
int
lines_per_image
;
62
unsigned
int
ref_low_data
;
63
float
ref_low_quantity
;
64
unsigned
int
ref_high_data
;
65
float
ref_high_quantity
;
66
}
CineonElementHeader
;
67
68
typedef
struct
{
69
unsigned
char
orientation
;
70
unsigned
char
elements_per_image
;
71
unsigned
short
filler
;
72
CineonElementHeader
element
[8];
73
float
white_point_x
;
74
float
white_point_y
;
75
float
red_primary_x
;
76
float
red_primary_y
;
77
float
green_primary_x
;
78
float
green_primary_y
;
79
float
blue_primary_x
;
80
float
blue_primary_y
;
81
char
label
[200];
82
char
reserved[28];
83
unsigned
char
interleave
;
84
unsigned
char
packing
;
85
unsigned
char
data_sign
;
86
unsigned
char
sense
;
87
unsigned
int
line_padding
;
88
unsigned
int
element_padding
;
89
char
reserved2[20];
90
}
CineonImageHeader
;
91
92
typedef
struct
{
93
int
x_offset
;
94
int
y_offset
;
95
char
file_name[100];
96
char
creation_date[12];
97
char
creation_time[12];
98
char
input_device[64];
99
char
model_number[32];
100
char
input_serial_number[32];
101
float
x_input_samples_per_mm
;
102
float
y_input_samples_per_mm
;
103
float
input_device_gamma
;
104
char
reserved[40];
105
}
CineonOriginationHeader
;
106
107
typedef
struct
{
108
unsigned
char
film_code
;
109
unsigned
char
film_type
;
110
unsigned
char
edge_code_perforation_offset
;
111
unsigned
char
filler
;
112
unsigned
int
prefix
;
113
unsigned
int
count
;
114
char
format
[32];
115
unsigned
int
frame_position
;
116
float
frame_rate
;
117
char
attribute[32];
118
char
slate[200];
119
char
reserved[740];
120
}
CineonFilmHeader
;
121
122
typedef
struct
{
123
CineonFileHeader
fileHeader
;
124
CineonImageHeader
imageHeader
;
125
CineonOriginationHeader
originationHeader
;
126
CineonFilmHeader
filmHeader
;
127
}
CineonMainHeader
;
128
129
void
cineonSetVerbose
(
int
);
130
LogImageFile
*
cineonOpen
(
const
unsigned
char
*byteStuff,
int
fromMemory,
size_t
bufferSize);
131
LogImageFile
*
cineonCreate
(
132
const
char
*filename,
int
width
,
int
height
,
int
bitsPerSample,
const
char
*creator);
133
134
#ifdef __cplusplus
135
}
136
#endif
width
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum const void *lists _GL_VOID_RET _GL_VOID const GLdouble *equation _GL_VOID_RET _GL_VOID GLdouble GLdouble blue _GL_VOID_RET _GL_VOID GLfloat GLfloat blue _GL_VOID_RET _GL_VOID GLint GLint blue _GL_VOID_RET _GL_VOID GLshort GLshort blue _GL_VOID_RET _GL_VOID GLubyte GLubyte blue _GL_VOID_RET _GL_VOID GLuint GLuint blue _GL_VOID_RET _GL_VOID GLushort GLushort blue _GL_VOID_RET _GL_VOID GLbyte GLbyte GLbyte alpha _GL_VOID_RET _GL_VOID GLdouble GLdouble GLdouble alpha _GL_VOID_RET _GL_VOID GLfloat GLfloat GLfloat alpha _GL_VOID_RET _GL_VOID GLint GLint GLint alpha _GL_VOID_RET _GL_VOID GLshort GLshort GLshort alpha _GL_VOID_RET _GL_VOID GLubyte GLubyte GLubyte alpha _GL_VOID_RET _GL_VOID GLuint GLuint GLuint alpha _GL_VOID_RET _GL_VOID GLushort GLushort GLushort alpha _GL_VOID_RET _GL_VOID GLenum mode _GL_VOID_RET _GL_VOID GLint GLsizei width
Definition:
GPU_legacy_stubs.h:206
height
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei height
Definition:
GPU_legacy_stubs.h:160
element
ATTR_WARN_UNUSED_RESULT const void * element
Definition:
bmesh_operator_api_inline.h:158
cineonOpen
LogImageFile * cineonOpen(const unsigned char *byteStuff, int fromMemory, size_t bufferSize)
Definition:
cineonlib.c:140
cineonCreate
LogImageFile * cineonCreate(const char *filename, int width, int height, int bitsPerSample, const char *creator)
Definition:
cineonlib.c:367
cineonSetVerbose
void cineonSetVerbose(int)
Definition:
cineonlib.c:46
label
const char * label
Definition:
deg_debug_stats_gnuplot.cc:47
logImageCore.h
format
format
Definition:
logImageCore.h:47
CineonElementHeader
Definition:
cineonlib.h:55
CineonElementHeader::ref_low_data
unsigned int ref_low_data
Definition:
cineonlib.h:62
CineonElementHeader::descriptor2
unsigned char descriptor2
Definition:
cineonlib.h:57
CineonElementHeader::ref_high_data
unsigned int ref_high_data
Definition:
cineonlib.h:64
CineonElementHeader::pixels_per_line
unsigned int pixels_per_line
Definition:
cineonlib.h:60
CineonElementHeader::ref_low_quantity
float ref_low_quantity
Definition:
cineonlib.h:63
CineonElementHeader::lines_per_image
unsigned int lines_per_image
Definition:
cineonlib.h:61
CineonElementHeader::bits_per_sample
unsigned char bits_per_sample
Definition:
cineonlib.h:58
CineonElementHeader::descriptor1
unsigned char descriptor1
Definition:
cineonlib.h:56
CineonElementHeader::filler
unsigned char filler
Definition:
cineonlib.h:59
CineonElementHeader::ref_high_quantity
float ref_high_quantity
Definition:
cineonlib.h:65
CineonFileHeader
Definition:
cineonlib.h:41
CineonFileHeader::file_size
unsigned int file_size
Definition:
cineonlib.h:47
CineonFileHeader::magic_num
unsigned int magic_num
Definition:
cineonlib.h:42
CineonFileHeader::offset
unsigned int offset
Definition:
cineonlib.h:43
CineonFileHeader::gen_hdr_size
unsigned int gen_hdr_size
Definition:
cineonlib.h:44
CineonFileHeader::ind_hdr_size
unsigned int ind_hdr_size
Definition:
cineonlib.h:45
CineonFileHeader::user_data_size
unsigned int user_data_size
Definition:
cineonlib.h:46
CineonFilmHeader
Definition:
cineonlib.h:107
CineonFilmHeader::filler
unsigned char filler
Definition:
cineonlib.h:111
CineonFilmHeader::prefix
unsigned int prefix
Definition:
cineonlib.h:112
CineonFilmHeader::count
unsigned int count
Definition:
cineonlib.h:113
CineonFilmHeader::film_code
unsigned char film_code
Definition:
cineonlib.h:108
CineonFilmHeader::edge_code_perforation_offset
unsigned char edge_code_perforation_offset
Definition:
cineonlib.h:110
CineonFilmHeader::frame_rate
float frame_rate
Definition:
cineonlib.h:116
CineonFilmHeader::film_type
unsigned char film_type
Definition:
cineonlib.h:109
CineonFilmHeader::frame_position
unsigned int frame_position
Definition:
cineonlib.h:115
CineonImageHeader
Definition:
cineonlib.h:68
CineonImageHeader::packing
unsigned char packing
Definition:
cineonlib.h:84
CineonImageHeader::sense
unsigned char sense
Definition:
cineonlib.h:86
CineonImageHeader::filler
unsigned short filler
Definition:
cineonlib.h:71
CineonImageHeader::line_padding
unsigned int line_padding
Definition:
cineonlib.h:87
CineonImageHeader::blue_primary_x
float blue_primary_x
Definition:
cineonlib.h:79
CineonImageHeader::elements_per_image
unsigned char elements_per_image
Definition:
cineonlib.h:70
CineonImageHeader::white_point_x
float white_point_x
Definition:
cineonlib.h:73
CineonImageHeader::red_primary_y
float red_primary_y
Definition:
cineonlib.h:76
CineonImageHeader::blue_primary_y
float blue_primary_y
Definition:
cineonlib.h:80
CineonImageHeader::data_sign
unsigned char data_sign
Definition:
cineonlib.h:85
CineonImageHeader::interleave
unsigned char interleave
Definition:
cineonlib.h:83
CineonImageHeader::green_primary_y
float green_primary_y
Definition:
cineonlib.h:78
CineonImageHeader::red_primary_x
float red_primary_x
Definition:
cineonlib.h:75
CineonImageHeader::green_primary_x
float green_primary_x
Definition:
cineonlib.h:77
CineonImageHeader::orientation
unsigned char orientation
Definition:
cineonlib.h:69
CineonImageHeader::element_padding
unsigned int element_padding
Definition:
cineonlib.h:88
CineonImageHeader::white_point_y
float white_point_y
Definition:
cineonlib.h:74
CineonMainHeader
Definition:
cineonlib.h:122
CineonMainHeader::fileHeader
CineonFileHeader fileHeader
Definition:
cineonlib.h:123
CineonMainHeader::originationHeader
CineonOriginationHeader originationHeader
Definition:
cineonlib.h:125
CineonMainHeader::imageHeader
CineonImageHeader imageHeader
Definition:
cineonlib.h:124
CineonMainHeader::filmHeader
CineonFilmHeader filmHeader
Definition:
cineonlib.h:126
CineonOriginationHeader
Definition:
cineonlib.h:92
CineonOriginationHeader::y_input_samples_per_mm
float y_input_samples_per_mm
Definition:
cineonlib.h:102
CineonOriginationHeader::input_device_gamma
float input_device_gamma
Definition:
cineonlib.h:103
CineonOriginationHeader::x_input_samples_per_mm
float x_input_samples_per_mm
Definition:
cineonlib.h:101
CineonOriginationHeader::x_offset
int x_offset
Definition:
cineonlib.h:93
CineonOriginationHeader::y_offset
int y_offset
Definition:
cineonlib.h:94
LogImageFile
Definition:
logImageCore.h:66
Generated on Tue Jan 31 2023 14:37:24 for Blender by
doxygen
1.9.1