2007-04-17 08:49:19 +00:00
|
|
|
// This code is in the public domain -- castanyo@yahoo.es
|
|
|
|
|
2010-05-27 23:18:39 +00:00
|
|
|
#pragma once
|
2007-04-17 08:49:19 +00:00
|
|
|
#ifndef NV_IMAGE_IMAGEIO_H
|
|
|
|
#define NV_IMAGE_IMAGEIO_H
|
|
|
|
|
2010-05-27 23:18:39 +00:00
|
|
|
#include "nvimage.h"
|
2007-04-17 08:49:19 +00:00
|
|
|
|
2010-05-27 23:18:39 +00:00
|
|
|
#include "nvcore/StrLib.h"
|
|
|
|
#include "nvcore/HashMap.h"
|
2009-02-03 09:23:58 +00:00
|
|
|
|
2009-02-03 09:06:21 +00:00
|
|
|
|
2007-04-17 08:49:19 +00:00
|
|
|
namespace nv
|
|
|
|
{
|
2010-05-27 23:18:39 +00:00
|
|
|
class Image;
|
|
|
|
class FloatImage;
|
|
|
|
class Stream;
|
|
|
|
|
|
|
|
namespace ImageIO
|
|
|
|
{
|
|
|
|
struct ImageMetaData
|
|
|
|
{
|
|
|
|
HashMap<String, String> tagMap;
|
|
|
|
};
|
|
|
|
|
|
|
|
NVIMAGE_API Image * load(const char * fileName);
|
|
|
|
NVIMAGE_API Image * load(const char * fileName, Stream & s);
|
|
|
|
|
|
|
|
NVIMAGE_API FloatImage * loadFloat(const char * fileName);
|
|
|
|
NVIMAGE_API FloatImage * loadFloat(const char * fileName, Stream & s);
|
|
|
|
|
|
|
|
NVIMAGE_API bool save(const char * fileName, const Image * img, const ImageMetaData * tags=NULL);
|
|
|
|
NVIMAGE_API bool save(const char * fileName, Stream & s, const Image * img, const ImageMetaData * tags=NULL);
|
|
|
|
|
|
|
|
NVIMAGE_API bool saveFloat(const char * fileName, const FloatImage * fimage, uint baseComponent, uint componentCount);
|
|
|
|
NVIMAGE_API bool saveFloat(const char * fileName, Stream & s, const FloatImage * fimage, uint baseComponent, uint componentCount);
|
|
|
|
|
|
|
|
} // ImageIO namespace
|
|
|
|
|
2007-04-17 08:49:19 +00:00
|
|
|
} // nv namespace
|
|
|
|
|
|
|
|
|
|
|
|
#endif // NV_IMAGE_IMAGEIO_H
|