34 #include <visp3/core/vpConfig.h>
36 #if (defined(VISP_HAVE_GDI) || defined(VISP_HAVE_D3D9))
38 #ifndef vpDisplayWin32_hh
39 #define vpDisplayWin32_hh
43 #include <visp3/core/vpDisplay.h>
44 #include <visp3/core/vpImage.h>
48 #include <visp3/core/vpImagePoint.h>
49 #include <visp3/core/vpRect.h>
50 #include <visp3/gui/vpWin32Renderer.h>
51 #include <visp3/gui/vpWin32Window.h>
54 #ifndef DOXYGEN_SHOULD_SKIP_THIS
112 friend void vpCreateWindow(threadParam *param);
123 void clearDisplay(const
vpColor &color =
vpColor::white) vp_override;
124 void closeDisplay() vp_override;
126 void displayImage(const
vpImage<
unsigned char> &I) vp_override;
128 void displayImageROI(const
vpImage<
unsigned char> &I, const
vpImagePoint &iP,
unsigned int width,
129 unsigned int height) vp_override;
130 void displayImageROI(const
vpImage<
vpRGBa> &I, const
vpImagePoint &iP,
unsigned int width,
unsigned int height) vp_override;
132 void flushDisplay() vp_override;
133 void flushDisplayROI(const
vpImagePoint &iP,
unsigned int width,
unsigned int height) vp_override;
136 unsigned int getScreenHeight() vp_override;
137 void getScreenSize(
unsigned int &width,
unsigned int &height) vp_override;
138 unsigned int getScreenWidth() vp_override;
140 void init(
vpImage<
unsigned char> &I,
int winx = -1,
int winy = -1, const std::
string &title = "") vp_override;
141 void init(
vpImage<
vpRGBa> &I,
int winx = -1,
int winy = -1, const std::
string &title = "") vp_override;
142 void init(
unsigned int width,
unsigned int height,
int winx = -1,
int winy = -1, const std::
string &title = "") vp_override;
144 void setFont(const std::
string &fontname) vp_override;
145 void setDownScalingFactor(
unsigned int scale)
151 void setTitle(
const std::string &windowtitle) vp_override;
156 unsigned int w = 4,
unsigned int h = 2,
unsigned int thickness = 1) vp_override;
158 void displayCircle(const
vpImagePoint ¢er,
unsigned int radius, const
vpColor &color,
bool fill = false,
159 unsigned int thickness = 1) vp_override;
161 void displayCross(const
vpImagePoint &ip,
unsigned int size, const
vpColor &color,
unsigned int thickness = 1) vp_override;
164 unsigned int thickness = 1) vp_override;
168 void displayPoint(const
vpImagePoint &ip, const
vpColor &color,
unsigned int thickness = 1) vp_override;
170 void displayRectangle(const
vpImagePoint &topLeft,
unsigned int width,
unsigned int height, const
vpColor &color,
171 bool fill = false,
unsigned int thickness = 1) vp_override;
173 bool fill = false,
unsigned int thickness = 1) vp_override;
174 void displayRectangle(const
vpRect &rectangle, const
vpColor &color,
bool fill = false,
unsigned int thickness = 1) vp_override;
178 bool getClick(
bool blocking = true) vp_override;
179 bool getClick(
vpImagePoint &ip,
bool blocking = true) vp_override;
183 bool getKeyboardEvent(
bool blocking = true) vp_override;
184 bool getKeyboardEvent(std::
string &key,
bool blocking) vp_override;
185 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.