fvraw.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef __FIREVISION_FVUTILS_WRITERS_FVRAW_H_
00025 #define __FIREVISION_FVUTILS_WRITERS_FVRAW_H_
00026
00027 #include <fvutils/writers/writer.h>
00028
00029 class FvRawWriter : public Writer {
00030
00031 public:
00032 FvRawWriter();
00033 FvRawWriter(const char *filename,
00034 unsigned int width, unsigned int height);
00035 FvRawWriter(const char *filename,
00036 unsigned int width, unsigned int height,
00037 colorspace_t colorspace, unsigned char *buffer);
00038 virtual ~FvRawWriter();
00039
00040 virtual void set_dimensions(unsigned int width, unsigned int height);
00041 virtual void set_buffer(colorspace_t cspace, unsigned char *buffer);
00042 virtual void write();
00043 virtual unsigned char * get_write_buffer();
00044
00045 static const unsigned int FILE_IDENTIFIER;
00046
00047
00048 typedef struct {
00049 unsigned int file_id;
00050 colorspace_t colorspace;
00051 unsigned int width;
00052 unsigned int height;
00053 } FvRawHeader;
00054
00055 private:
00056 FvRawHeader header;
00057 unsigned char *buffer;
00058
00059 };
00060
00061
00062
00063 #endif