12 // This header file is representative of any single frame file format.
14 class FileTIFF
: public FileList
17 FileTIFF(Asset
*asset
, File
*file
);
20 static void get_parameters(BC_WindowBase
*parent_window
,
22 BC_WindowBase
* &format_window
,
25 static int check_sig(Asset
*asset
);
26 static char* compression_to_str(int value
);
27 static char* cmodel_to_str(int value
);
28 int can_copy_from(Edit
*edit
, int64_t position
);
29 int colormodel_supported(int colormodel
);
30 int get_best_colormodel(Asset
*asset
, int driver
);
31 int read_frame_header(char *path
);
32 int read_frame(VFrame
*output
, VFrame
*input
);
33 int write_frame(VFrame
*frame
, VFrame
*data
, FrameWriterUnit
*unit
);
34 FrameWriterUnit
* new_writer_unit(FrameWriter
*writer
);
39 // values stored in Asset::tiff_cmodel
48 // values stored in Asset::tiff_compression
60 // For each write frame call, since multiple write_frames are running concurrently.
61 class FileTIFFUnit
: public FrameWriterUnit
64 FileTIFFUnit(FileTIFF
*file
, FrameWriter
*writer
);
76 class TIFFConfigVideo
: public BC_Window
79 TIFFConfigVideo(BC_WindowBase
*parent_window
, Asset
*asset
);
85 static char* alpha_to_codec(int use_alpha
);
86 static int codec_to_alpha(char *codec
);
87 BC_WindowBase
*parent_window
;
92 class TIFFColorspace
: public BC_PopupMenu
95 TIFFColorspace(TIFFConfigVideo
*gui
, int x
, int y
, int w
);
96 void create_objects();
101 class TIFFColorspaceItem
: public BC_MenuItem
104 TIFFColorspaceItem(TIFFConfigVideo
*gui
, int value
);
106 TIFFConfigVideo
*gui
;
113 class TIFFCompression
: public BC_PopupMenu
116 TIFFCompression(TIFFConfigVideo
*gui
, int x
, int y
, int w
);
117 void create_objects();
119 TIFFConfigVideo
*gui
;
122 class TIFFCompressionItem
: public BC_MenuItem
125 TIFFCompressionItem(TIFFConfigVideo
*gui
, int value
);
127 TIFFConfigVideo
*gui
;