Fawkes API Fawkes Development Version
roidraw.h
1
2/***************************************************************************
3 * roidraw.h - Header of ROI draw filter
4 *
5 * Created: Thu Jul 14 15:59:22 2005
6 * Copyright 2005-2007 Tim Niemueller [www.niemueller.de]
7 *
8 ****************************************************************************/
9
10/* This program is free software; you can redistribute it and/or modify
11 * it under the terms of the GNU General Public License as published by
12 * the Free Software Foundation; either version 2 of the License, or
13 * (at your option) any later version. A runtime exception applies to
14 * this software (see LICENSE.GPL_WRE file mentioned below for details).
15 *
16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Library General Public License for more details.
20 *
21 * Read the full text in the LICENSE.GPL_WRE file in the doc directory.
22 */
23
24#ifndef _FIREVISION_FILTER_ROIDRAW_H_
25#define _FIREVISION_FILTER_ROIDRAW_H_
26
27#include <fvfilters/filter.h>
28
29#include <list>
30
31namespace firevision {
32
33class ROI;
34class Drawer;
35
36class FilterROIDraw : public Filter
37{
38public: // Typedefs
39 /** Defines the possible border styles to display a ROI */
40 typedef enum {
41 INVERTED, /**< Displays border with inverted Y-value */
42 DASHED_HINT /**< Displays border dashed black and color of hint*/
44
45public:
46 FilterROIDraw(const std::list<ROI> *rois = 0, border_style_t style = INVERTED);
47 virtual ~FilterROIDraw();
48
49 virtual void apply();
50
51 void set_rois(const std::list<ROI> *rois);
52 void set_style(border_style_t style);
53
54private:
55 void draw_roi(const ROI *roi);
56
57 const std::list<ROI> *rois_;
58 Drawer * drawer_;
59 border_style_t border_style_;
60};
61
62} // end namespace firevision
63
64#endif
Draw to an image.
Definition: drawer.h:32
ROI Drawing filter.
Definition: roidraw.h:37
void set_rois(const std::list< ROI > *rois)
Set ROIs.
Definition: roidraw.cpp:137
virtual void apply()
Apply the filter.
Definition: roidraw.cpp:119
virtual ~FilterROIDraw()
Destructor.
Definition: roidraw.cpp:49
void set_style(border_style_t style)
Sets the preferred style.
Definition: roidraw.cpp:146
FilterROIDraw(const std::list< ROI > *rois=0, border_style_t style=INVERTED)
Constructor.
Definition: roidraw.cpp:42
border_style_t
Defines the possible border styles to display a ROI.
Definition: roidraw.h:40
@ DASHED_HINT
Displays border dashed black and color of hint.
Definition: roidraw.h:42
@ INVERTED
Displays border with inverted Y-value.
Definition: roidraw.h:41
Filter interface.
Definition: filter.h:33
Region of interest.
Definition: roi.h:55