59 lines
1.5 KiB
C++
59 lines
1.5 KiB
C++
/*****************************************************************************
|
|
* HDevWindowStack.h
|
|
*****************************************************************************
|
|
*
|
|
* Project: HALCON/C++
|
|
* Description: Window management for exported HDevelop code
|
|
*
|
|
* (c) 2010-2020 by MVTec Software GmbH
|
|
* www.mvtec.com
|
|
*
|
|
*****************************************************************************
|
|
*
|
|
*
|
|
*****************************************************************************/
|
|
|
|
|
|
#ifndef HCPP_DEV_WINDOW_STACK_H
|
|
#define HCPP_DEV_WINDOW_STACK_H
|
|
|
|
|
|
#include "halconcpp/HTuple.h"
|
|
|
|
|
|
namespace HalconCpp
|
|
{
|
|
|
|
// The class HDevWindowStack can be used to emulate the behavior of HDevelop
|
|
// graphics windows for HALCON graphics windows. It is primarily intended for
|
|
// usage in C++ programs exported from HDevelop programs containing HDevelop
|
|
// window operators (e.g. dev_set_window, dev_open_window, dev_close_window...)
|
|
class LIntExport HDevWindowStack
|
|
{
|
|
|
|
public:
|
|
|
|
// Push handle for new window (dev_open_window)
|
|
static void Push(const HTuple &win_handle);
|
|
|
|
// Pop handle for closed window (dev_close_window)
|
|
static HTuple Pop();
|
|
|
|
// Get handle for active window
|
|
static HTuple GetActive();
|
|
|
|
// Set active window (dev_set_window)
|
|
static void SetActive(const HTuple &win_handle);
|
|
|
|
// Test if any open window is available
|
|
static bool IsOpen();
|
|
|
|
// Close all open windows
|
|
static void CloseAll();
|
|
|
|
};
|
|
|
|
}
|
|
|
|
#endif
|