11 #ifndef __IMG_Format__
12 #define __IMG_Format__
67 static int getNFormats();
82 static void findFormatReadable(
87 static void findFormatWritable(
94 static const IMG_Format *findFormatByName(
const char *format_name);
95 static const IMG_Format *findFormatByLabel(
const char *format_label);
101 IMG_File *allocValidFile()
const;
106 static bool runDSO(
const char* lib_path);
112 static const IMG_Format *metadataPrefix(
const char *key);
116 virtual const char *getFormatName()
const = 0;
119 virtual const char *getFormatLabel()
const;
123 virtual const char *getMetadataKey()
const;
128 virtual const char *getFormatDescription()
const;
137 virtual const char *getDefaultExtension()
const;
146 virtual int checkExtension(
const char *
filename)
const = 0;
149 virtual int checkMagic(
unsigned int)
const;
152 virtual int checkMagicSeekable(
UT_IStream &is)
const;
158 virtual int checkDevice(
const char *)
const;
176 virtual void getMaxResolution(
unsigned &
x,
177 unsigned &
y)
const = 0;
184 virtual int isReadRandomAccess()
const;
187 virtual int isWriteRandomAccess()
const;
192 virtual int isTopFirst()
const;
196 virtual int isLeftFirst()
const;
201 virtual bool isReadable()
const;
204 virtual bool isWritable()
const;
210 virtual bool isDataWindowSupported()
const;
214 virtual bool isDataWindowCropOnly()
const;
218 virtual bool isDataWindowStreakSupported()
const;
223 virtual bool isDeepRasterSupported()
const;
231 virtual bool isDataInterleaved()
const;
235 virtual bool canPlaneTypesDiffer()
const;
256 void defaultMetadata(
IMG_Stat &stat) const;
259 static
void setGlobalOption(const
char *
name, const
char *
value);
261 static
void getGlobalOption(const
char *name,
UT_String &value);
266 static
bool setFormatOptionDefault(const
char *format_name,
267 const
char *format_option,
268 const
char *defvalue);
271 static
bool getFormatOptionDefault(const
char *format_name,
272 const
char *format_option,
276 static
int matchExtension(const
char *
filename, const
char *ext);
280 static
int matchExtensions(const
char *filename, const
char *ext[]);
295 virtual
fpreal formatColorSpaceGamma() const;
300 virtual
bool formatStoresColorSpace() const;
309 fpreal src_color_space_gamma,
310 bool src_data_is_8bit,
311 bool *dest_data_is_8bit = NULL)
const
313 return adjustGammaForFormat(&src_color_space,
314 src_color_space_gamma, src_data_is_8bit,
318 fpreal src_color_space_gamma,
319 bool src_data_is_8bit,
320 bool *dest_data_is_8bit)
const;
324 static void installBasics();
332 virtual IMG_File *createFile()
const = 0;
333 virtual int isFormatOk(
const IMG_Stat &stat)
const;
334 void removeFormatFromList();
339 static void findFormat(
351 static void loadGlobalOptions();
352 static bool loadOldFBOptions();
353 static bool emptyFormats();
354 static void adjustPriorities();
GT_API const UT_StringHolder filename
#define SYS_DEPRECATED(__V__)
IMG_ImageType
Type of image we want to create or have opened.
#define SYS_VISIBILITY_EXPORT
GLsizei const GLfloat * value
std::unique_ptr< T, Deleter > UT_UniquePtr
A smart pointer for unique ownership of dynamically allocated objects.
GLuint GLint GLboolean GLint GLenum access
GLint GLint GLsizei GLint GLenum format
#define UT_NON_COPYABLE(CLASS)
Define deleted copy constructor and assignment operator inside a class.
GLuint const GLchar * name
Contains the details of a specific image file, used by IMG_File. This class contains all the high-lev...