added resizer
This commit is contained in:
41
lib/danbooru_image_resizer/Resize.h
Normal file
41
lib/danbooru_image_resizer/Resize.h
Normal file
@@ -0,0 +1,41 @@
|
||||
#ifndef RESIZE_H
|
||||
#define RESIZE_H
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
class JPEGCompressor;
|
||||
|
||||
class Resizer
|
||||
{
|
||||
public:
|
||||
Resizer(JPEGCompressor *Compressor);
|
||||
~Resizer();
|
||||
|
||||
// BPP is 3 or 4, indicating RGB or RGBA.
|
||||
void SetSource(int Width, int Height, int BPP);
|
||||
bool SetDest(int Width, int Height, int Quality);
|
||||
|
||||
/*
|
||||
* Resize part of an image.
|
||||
*
|
||||
* [FirstRow,LastRow) is a range indicating which elements in src[] are available.
|
||||
* On return, any rows in [0,DiscardRow) are no longer needed and can be deleted.
|
||||
*/
|
||||
bool Run(const uint8_t *const *src, int FirstRow, int LastRow, int &DiscardRow);
|
||||
const char *GetError() const;
|
||||
|
||||
private:
|
||||
JPEGCompressor *m_Compressor;
|
||||
uint8_t *m_OutBuf;
|
||||
|
||||
int m_SourceWidth;
|
||||
int m_SourceHeight;
|
||||
int m_SourceBPP;
|
||||
|
||||
int m_DestWidth;
|
||||
int m_DestHeight;
|
||||
|
||||
float m_CurrentY;
|
||||
};
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user