23#include "mini_image_producer.h"
25#include <fvutils/ipc/shm_image.h>
26#include <fvutils/scalers/scaler.h>
27#include <utils/logging/logger.h>
28#include <utils/system/console_colors.h>
30using namespace firevision;
51 this->scaler = scaler;
54 logger->
log_debug(
"MiniImageProducer",
"Opening original image shmem segment for id %s", orig_id);
58 logger->
log_error(
"MiniImageProducer",
"Could not open original image");
66 "Opening mini image shmem segment for id %s"
78 logger->
log_error(
"MiniImageProducer",
"Could not open mini image");
101 return ((orig_shmem != NULL) && (mini_shmem != NULL) && (scaler != NULL));
108 if (orig_shmem == NULL) {
109 logger->
log_warn(
"MiniImageProducer",
"Original shmem image not opened");
112 if (mini_shmem == NULL) {
113 logger->
log_warn(
"MiniImageProducer",
"Mini shmem image not opened");
void produce()
Produce mini image.
bool isValid()
Check if all data is valid.
~MiniImageProducer()
Destructor.
MiniImageProducer(const char *orig_id, const char *mini_id, firevision::Scaler *scaler, fawkes::Logger *logger)
Constructor.
virtual void log_warn(const char *component, const char *format,...)=0
Log warning message.
virtual void log_debug(const char *component, const char *format,...)
Log debug message.
virtual void log_error(const char *component, const char *format,...)
Log error message.
bool is_valid() const
Check validity of shared memory segment.
virtual void set_scaled_dimensions(unsigned int width, unsigned int height)=0
Set dimenins of scaled image buffer.
virtual unsigned int needed_scaled_height()=0
Minimum needed height of scaled image depending on factor and original image height.
virtual void scale()=0
Scale image.
virtual unsigned int needed_scaled_width()=0
Minimum needed width of scaled image depending on factor and original image width.
virtual void set_scaled_buffer(unsigned char *buffer)=0
Set scaled image buffer.
virtual void set_original_dimensions(unsigned int width, unsigned int height)=0
Set original image dimensions.
virtual void set_original_buffer(unsigned char *buffer)=0
Set original image buffer.
virtual void set_scale_factor(float factor)=0
Set scale factor.
Shared memory image buffer.
unsigned int height() const
Get image height.
unsigned int width() const
Get image width.
unsigned char * buffer() const
Get image buffer.