34 lines
605 B
C
34 lines
605 B
C
|
#pragma once
|
||
|
#include <memory>
|
||
|
#include <string>
|
||
|
#include <vector>
|
||
|
|
||
|
class IImage
|
||
|
{
|
||
|
public:
|
||
|
virtual ~IImage(){}
|
||
|
|
||
|
virtual unsigned char* data() = 0;
|
||
|
virtual int width() = 0;
|
||
|
virtual int height() = 0;
|
||
|
virtual int type() = 0;
|
||
|
virtual int stride() = 0;
|
||
|
virtual int datasize() = 0;
|
||
|
};
|
||
|
|
||
|
typedef std::shared_ptr<IImage> IImagePtr;
|
||
|
|
||
|
class IImagePair
|
||
|
{
|
||
|
public:
|
||
|
IImagePair(IImagePtr imagef, IImagePtr imageb)
|
||
|
{
|
||
|
this->imagef = imagef;
|
||
|
this->imageb = imageb;
|
||
|
}
|
||
|
|
||
|
IImagePtr imagef;
|
||
|
IImagePtr imageb;
|
||
|
};
|
||
|
|
||
|
typedef std::shared_ptr<IImagePair> IImagePairPtr;
|