nvidia-texture-tools/src/nvimage/ImageIO.h

44 lines
1.2 KiB
C
Raw Normal View History

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
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