typedef struct
{
// bitmap identity
WORD_t ident;
// complete image size including header
DWORD_t img_size;
// reserved space
WORD_t rsvd_a;
// reserved space
WORD_t rsvd_b;
// begin of data. offset position
DWORD_t data_off;
// img header size
DWORD_t hdr_size;
// image width
sDWORD_t img_width;
// image height
sDWORD_t img_height;
// number of color planes
WORD_t num_clr_planes;
// bits per pixel
WORD_t bpp;
// compression type
DWORD_t comp_type;
// the size of img data info block
DWORD_t bdata_size;
// horizontal resolution in pixel per meter
sDWORD_t hor_res;
// vertical resolution in pixel per meter
sDWORD_t ver_res;
// number of colors in color table
DWORD_t num_col;
// number of important colors used
DWORD_t num_import_col;
} bmphdr_t;
std::ifstream file("out.txt", std::ios::in | std::ios::binary);
io::bmphdr_t header;
if(file.fail()) return 0;
// move to begin
file.seekg(std::ios::beg);
// read header
file.read((char*)&header, sizeof(header));
// close file
file.close();