24 #include <fvutils/writers/writer.h>
26 #include <core/exception.h>
27 #include <core/exceptions/system.h>
33 namespace firevision {
77 Writer::Writer(
const char *extension)
84 this->extension = strdup(extension);
106 Writer::set_filename(
const char *filename)
108 free(this->filename);
110 if ( 0 != strstr(filename,
".") ) {
111 this->filename = strdup(filename);
113 free(this->basename);
114 this->basename = strdup(filename);
117 if (0 == extension) {
121 if (asprintf(&(this->filename),
"%s.%s", basename, extension) == -1) {
132 Writer::set_dimensions(
unsigned int width,
unsigned int height)
135 this->height = height;
143 Writer::set_buffer(colorspace_t cspace,
unsigned char *buffer)
145 this->cspace = cspace;
146 this->buffer = buffer;
153 Writer::set_extension(
const char *extension)
155 free(this->extension);
156 this->extension = strdup(extension);
159 free(this->filename);
160 this->filename = (
char *) malloc( strlen(basename) + strlen(extension) + 1 );
161 strcpy(filename, basename);
162 strcat(this->filename,
".");
163 strcat(filename, extension);