35 #ifndef VP_DISPLAY_WIN32_H
36 #define VP_DISPLAY_WIN32_H
38 #include <visp3/core/vpConfig.h>
39 #include <visp3/core/vpDisplay.h>
41 #if (defined(VISP_HAVE_GDI) || defined(VISP_HAVE_D3D9))
45 #include <visp3/core/vpImage.h>
49 #include <visp3/core/vpImagePoint.h>
50 #include <visp3/core/vpRect.h>
51 #include <visp3/gui/vpWin32Renderer.h>
52 #include <visp3/gui/vpWin32Window.h>
57 #ifndef DOXYGEN_SHOULD_SKIP_THIS
115 friend void vpCreateWindow(threadParam *param);
126 void clearDisplay(const
vpColor &color =
vpColor::white) VP_OVERRIDE;
127 void closeDisplay() VP_OVERRIDE;
129 void displayImage(const
vpImage<
unsigned char> &I) VP_OVERRIDE;
131 void displayImageROI(const
vpImage<
unsigned char> &I, const
vpImagePoint &iP,
unsigned int width,
132 unsigned int height) VP_OVERRIDE;
133 void displayImageROI(const
vpImage<
vpRGBa> &I, const
vpImagePoint &iP,
unsigned int width,
unsigned int height) VP_OVERRIDE;
135 void flushDisplay() VP_OVERRIDE;
136 void flushDisplayROI(const
vpImagePoint &iP,
unsigned int width,
unsigned int height) VP_OVERRIDE;
139 unsigned int getScreenHeight() VP_OVERRIDE;
140 void getScreenSize(
unsigned int &width,
unsigned int &height) VP_OVERRIDE;
141 unsigned int getScreenWidth() VP_OVERRIDE;
143 void init(
vpImage<
unsigned char> &I,
int winx = -1,
int winy = -1, const std::
string &title = "") VP_OVERRIDE;
144 void init(
vpImage<
vpRGBa> &I,
int winx = -1,
int winy = -1, const std::
string &title = "") VP_OVERRIDE;
145 void init(
unsigned int width,
unsigned int height,
int winx = -1,
int winy = -1, const std::
string &title = "") VP_OVERRIDE;
147 void setFont(const std::
string &fontname) VP_OVERRIDE;
148 void setDownScalingFactor(
unsigned int scale)
154 void setTitle(
const std::string &windowtitle) VP_OVERRIDE;
159 unsigned int w = 4,
unsigned int h = 2,
unsigned int thickness = 1) VP_OVERRIDE;
161 void displayCircle(const
vpImagePoint ¢er,
unsigned int radius, const
vpColor &color,
bool fill = false,
162 unsigned int thickness = 1) VP_OVERRIDE;
164 void displayCross(const
vpImagePoint &ip,
unsigned int size, const
vpColor &color,
unsigned int thickness = 1) VP_OVERRIDE;
167 unsigned int thickness = 1) VP_OVERRIDE;
171 void displayPoint(const
vpImagePoint &ip, const
vpColor &color,
unsigned int thickness = 1) VP_OVERRIDE;
173 void displayRectangle(const
vpImagePoint &topLeft,
unsigned int width,
unsigned int height, const
vpColor &color,
174 bool fill = false,
unsigned int thickness = 1) VP_OVERRIDE;
176 bool fill = false,
unsigned int thickness = 1) VP_OVERRIDE;
177 void displayRectangle(const
vpRect &rectangle, const
vpColor &color,
bool fill = false,
unsigned int thickness = 1) VP_OVERRIDE;
181 bool getClick(
bool blocking = true) VP_OVERRIDE;
182 bool getClick(
vpImagePoint &ip,
bool blocking = true) VP_OVERRIDE;
186 bool getKeyboardEvent(
bool blocking = true) VP_OVERRIDE;
187 bool getKeyboardEvent(std::
string &key,
bool blocking) VP_OVERRIDE;
188 bool getPointerMotionEvent(
vpImagePoint &ip) VP_OVERRIDE;
Class to define RGB colors available for display functionalities.
static const vpColor white
Base abstract class for Windows 32 displays. Implements the window creation in a separate thread and ...
DWORD threadId
Id of the window's thread.
vpWin32Window window
The window.
void setDownScalingFactor(vpScaleType scaleType)
HANDLE hThread
Handle of the window's thread.
bool iStatus
Initialization status.
static const int MAX_INIT_DELAY
Maximum delay for window initialization.
Class that defines generic functionalities for display.
static void setTitle(const vpImage< unsigned char > &I, const std::string &windowtitle)
static void displayArrow(const vpImage< unsigned char > &I, const vpImagePoint &ip1, const vpImagePoint &ip2, const vpColor &color=vpColor::white, unsigned int w=4, unsigned int h=2, unsigned int thickness=1)
void setScale(vpScaleType scaleType, unsigned int width, unsigned int height)
static void setWindowPosition(const vpImage< unsigned char > &I, int winx, int winy)
Class that defines a 2D point in an image. This class is useful for image processing and stores only ...
Defines a rectangle in the plane.