~ubuntu-branches/ubuntu/trusty/blender/trusty

« back to all changes in this revision

Viewing changes to source/blender/imbuf/intern/filetype.c

  • Committer: Package Import Robot
  • Author(s): Jeremy Bicha
  • Date: 2013-03-06 12:08:47 UTC
  • mfrom: (1.5.1) (14.1.8 experimental)
  • Revision ID: package-import@ubuntu.com-20130306120847-frjfaryb2zrotwcg
Tags: 2.66a-1ubuntu1
* Resynchronize with Debian (LP: #1076930, #1089256, #1052743, #999024,
  #1122888, #1147084)
* debian/control:
  - Lower build-depends on libavcodec-dev since we're not
    doing the libav9 transition in Ubuntu yet

Show diffs side-by-side

added added

removed removed

Lines of Context:
30
30
#include "IMB_imbuf_types.h"
31
31
#include "IMB_filetype.h"
32
32
 
 
33
#include "IMB_colormanagement.h"
 
34
 
33
35
#ifdef WITH_OPENEXR
34
36
#include "openexr/openexr_api.h"
35
37
#endif
44
46
 
45
47
#include "imbuf.h"
46
48
 
47
 
static int imb_ftype_default(ImFileType *type, ImBuf *ibuf) { return (ibuf->ftype & type->filetype); }
48
 
#if defined(__APPLE__) && defined(IMBUF_COCOA)
49
 
static int imb_ftype_cocoa(ImFileType *type, ImBuf *ibuf) { return (ibuf->ftype & TIF); }
50
 
#endif
51
 
static int imb_ftype_iris(ImFileType *type, ImBuf *ibuf) { (void)type; return (ibuf->ftype == IMAGIC); }
 
49
static int imb_ftype_default(ImFileType *type, ImBuf *ibuf)
 
50
{
 
51
        return (ibuf->ftype & type->filetype);
 
52
}
 
53
static int imb_ftype_iris(ImFileType *type, ImBuf *ibuf)
 
54
{
 
55
        (void)type;
 
56
        return (ibuf->ftype == IMAGIC);
 
57
}
52
58
#ifdef WITH_QUICKTIME
53
 
static int imb_ftype_quicktime(ImFileType *type, ImBuf *ibuf) { return 0; } // XXX
 
59
static int imb_ftype_quicktime(ImFileType *type, ImBuf *ibuf)
 
60
{
 
61
        return 0; /* XXX */
 
62
}
54
63
#endif
55
64
 
56
65
#ifdef WITH_QUICKTIME
58
67
void quicktime_exit(void);
59
68
#endif
60
69
 
61
 
ImFileType IMB_FILE_TYPES[]= {
62
 
        {NULL, NULL, imb_is_a_jpeg, imb_ftype_default, imb_load_jpeg, imb_savejpeg, NULL, 0, JPG},
63
 
        {NULL, NULL, imb_is_a_png, imb_ftype_default, imb_loadpng, imb_savepng, NULL, 0, PNG},
64
 
        {NULL, NULL, imb_is_a_bmp, imb_ftype_default, imb_bmp_decode, imb_savebmp, NULL, 0, BMP},
65
 
        {NULL, NULL, imb_is_a_targa, imb_ftype_default, imb_loadtarga, imb_savetarga, NULL, 0, TGA},
66
 
        {NULL, NULL, imb_is_a_iris, imb_ftype_iris, imb_loadiris, imb_saveiris, NULL, 0, IMAGIC},
 
70
ImFileType IMB_FILE_TYPES[] = {
 
71
        {NULL, NULL, imb_is_a_jpeg, imb_ftype_default, imb_load_jpeg, imb_savejpeg, NULL, 0, JPG, COLOR_ROLE_DEFAULT_BYTE},
 
72
        {NULL, NULL, imb_is_a_png, imb_ftype_default, imb_loadpng, imb_savepng, NULL, 0, PNG, COLOR_ROLE_DEFAULT_BYTE},
 
73
        {NULL, NULL, imb_is_a_bmp, imb_ftype_default, imb_bmp_decode, imb_savebmp, NULL, 0, BMP, COLOR_ROLE_DEFAULT_BYTE},
 
74
        {NULL, NULL, imb_is_a_targa, imb_ftype_default, imb_loadtarga, imb_savetarga, NULL, 0, TGA, COLOR_ROLE_DEFAULT_BYTE},
 
75
        {NULL, NULL, imb_is_a_iris, imb_ftype_iris, imb_loadiris, imb_saveiris, NULL, 0, IMAGIC, COLOR_ROLE_DEFAULT_BYTE},
67
76
#ifdef WITH_CINEON
68
 
        {NULL, NULL, imb_is_dpx, imb_ftype_default, imb_loaddpx, imb_save_dpx, NULL, IM_FTYPE_FLOAT, DPX},
69
 
        {NULL, NULL, imb_is_cineon, imb_ftype_default, imb_loadcineon, imb_savecineon, NULL, IM_FTYPE_FLOAT, CINEON},
 
77
        {NULL, NULL, imb_is_dpx, imb_ftype_default, imb_load_dpx, imb_save_dpx, NULL, IM_FTYPE_FLOAT, DPX, COLOR_ROLE_DEFAULT_FLOAT},
 
78
        {NULL, NULL, imb_is_cineon, imb_ftype_default, imb_load_cineon, imb_save_cineon, NULL, IM_FTYPE_FLOAT, CINEON, COLOR_ROLE_DEFAULT_FLOAT},
70
79
#endif
71
80
#ifdef WITH_TIFF
72
 
        {imb_inittiff, NULL, imb_is_a_tiff, imb_ftype_default, imb_loadtiff, imb_savetiff, imb_loadtiletiff, 0, TIF},
73
 
#elif defined(__APPLE__) && defined(IMBUF_COCOA)
74
 
        {NULL, NULL, imb_is_a_cocoa, imb_ftype_cocoa, imb_imb_cocoaLoadImage, imb_savecocoa, NULL, 0, TIF},
 
81
        {imb_inittiff, NULL, imb_is_a_tiff, imb_ftype_default, imb_loadtiff, imb_savetiff, imb_loadtiletiff, 0, TIF, COLOR_ROLE_DEFAULT_BYTE},
75
82
#endif
76
83
#ifdef WITH_HDR
77
 
        {NULL, NULL, imb_is_a_hdr, imb_ftype_default, imb_loadhdr, imb_savehdr, NULL, IM_FTYPE_FLOAT, RADHDR},
 
84
        {NULL, NULL, imb_is_a_hdr, imb_ftype_default, imb_loadhdr, imb_savehdr, NULL, IM_FTYPE_FLOAT, RADHDR, COLOR_ROLE_DEFAULT_FLOAT},
78
85
#endif
79
86
#ifdef WITH_OPENEXR
80
 
        {imb_initopenexr, NULL, imb_is_a_openexr, imb_ftype_default, imb_load_openexr, imb_save_openexr, NULL, IM_FTYPE_FLOAT, OPENEXR},
 
87
        {imb_initopenexr, NULL, imb_is_a_openexr, imb_ftype_default, imb_load_openexr, imb_save_openexr, NULL, IM_FTYPE_FLOAT, OPENEXR, COLOR_ROLE_DEFAULT_FLOAT},
81
88
#endif
82
89
#ifdef WITH_OPENJPEG
83
 
        {NULL, NULL, imb_is_a_jp2, imb_ftype_default, imb_jp2_decode, imb_savejp2, NULL, IM_FTYPE_FLOAT, JP2},
 
90
        {NULL, NULL, imb_is_a_jp2, imb_ftype_default, imb_jp2_decode, imb_savejp2, NULL, IM_FTYPE_FLOAT, JP2, COLOR_ROLE_DEFAULT_BYTE},
84
91
#endif
85
92
#ifdef WITH_DDS
86
 
        {NULL, NULL, imb_is_a_dds, imb_ftype_default, imb_load_dds, NULL, NULL, 0, DDS},
 
93
        {NULL, NULL, imb_is_a_dds, imb_ftype_default, imb_load_dds, NULL, NULL, 0, DDS, COLOR_ROLE_DEFAULT_BYTE},
87
94
#endif
88
95
#ifdef WITH_QUICKTIME
89
 
        {quicktime_init, quicktime_exit, imb_is_a_quicktime, imb_ftype_quicktime, imb_quicktime_decode, NULL, NULL, 0, QUICKTIME},
90
 
#endif  
91
 
        {NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0}};
 
96
        {quicktime_init, quicktime_exit, imb_is_a_quicktime, imb_ftype_quicktime, imb_quicktime_decode, NULL, NULL, 0, QUICKTIME, COLOR_ROLE_DEFAULT_BYTE},
 
97
#endif
 
98
        {NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0}
 
99
};
92
100
        
93
101
void imb_filetypes_init(void)
94
102
{
95
103
        ImFileType *type;
96
104
 
97
 
        for (type=IMB_FILE_TYPES; type->is_a; type++)
 
105
        for (type = IMB_FILE_TYPES; type->is_a; type++)
98
106
                if (type->init)
99
107
                        type->init();
100
108
}
103
111
{
104
112
        ImFileType *type;
105
113
 
106
 
        for (type=IMB_FILE_TYPES; type->is_a; type++)
 
114
        for (type = IMB_FILE_TYPES; type->is_a; type++)
107
115
                if (type->exit)
108
116
                        type->exit();
109
117
}