code_twain/sane/scanned_img.h

52 lines
1.0 KiB
C
Raw Normal View History

2022-06-15 03:04:40 +00:00
#pragma once
#include "s2t_api.h"
class refer : public IRef
{
volatile long ref_;
protected:
refer();
virtual ~refer();
// IRef
public:
COM_API_OVERRIDE(long, add_ref(void));
COM_API_OVERRIDE(long, release(void));
};
class scanned_img : public IScanImg, virtual public refer
{
SANE_Parameters head_;
unsigned char* data_;
unsigned int bytes_;
std::string file_header(SANE_ImageType type, float resolution);
public:
scanned_img(SANE_Parameters head, unsigned char* data);
protected:
~scanned_img();
// IRef
public:
COM_API_OVERRIDE(long, add_ref(void));
COM_API_OVERRIDE(long, release(void));
// IScanImg
public:
COM_API_OVERRIDE(int, width(void));
COM_API_OVERRIDE(int, line_bytes(void));
COM_API_OVERRIDE(int, height(void));
COM_API_OVERRIDE(int, depth(void));
COM_API_OVERRIDE(int, channel(void));
COM_API_OVERRIDE(SANE_Frame, type(void));
COM_API_OVERRIDE(unsigned int, bytes(void));
COM_API_OVERRIDE(unsigned char*, bits(void));
COM_API_OVERRIDE(void, copy_header(SANE_Parameters* head));
};