opencv/modules/highgui/src/grfmt_imageio.hpp

68 lines
1.0 KiB
C++

/*
* grfmt_imageio.h
*
*
* Created by Morgan Conbere on 5/17/07.
*
*/
#ifndef _GRFMT_IMAGEIO_H_
#define _GRFMT_IMAGEIO_H_
#ifdef HAVE_IMAGEIO
#include "grfmt_base.hpp"
#include <TargetConditionals.h>
#if TARGET_OS_IPHONE || TARGET_IPHONE_SIMULATOR
#include <MobileCoreServices/MobileCoreServices.h>
#include <ImageIO/ImageIO.h>
#else
#include <ApplicationServices/ApplicationServices.h>
#endif
namespace cv
{
class ImageIODecoder : public BaseImageDecoder
{
public:
ImageIODecoder();
~ImageIODecoder();
bool readData( Mat& img );
bool readHeader();
void close();
size_t signatureLength() const;
bool checkSignature( const string& signature ) const;
ImageDecoder newDecoder() const;
protected:
CGImageRef imageRef;
};
class ImageIOEncoder : public BaseImageEncoder
{
public:
ImageIOEncoder();
~ImageIOEncoder();
bool write( const Mat& img, const vector<int>& params );
ImageEncoder newEncoder() const;
};
}
#endif/*HAVE_IMAGEIO*/
#endif/*_GRFMT_IMAGEIO_H_*/