1/*
2 *  Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
3 *
4 *  Use of this source code is governed by a BSD-style license
5 *  that can be found in the LICENSE file in the root of the source
6 *  tree. An additional intellectual property rights grant can be found
7 *  in the file PATENTS.  All contributing project authors may
8 *  be found in the AUTHORS file in the root of the source tree.
9 */
10
11#ifndef WEBRTC_VIDEO_ENGINE_MAIN_TEST_AUTOTEST_INTERFACE_VIE_AUTOTEST_LINUX_H_
12#define WEBRTC_VIDEO_ENGINE_MAIN_TEST_AUTOTEST_INTERFACE_VIE_AUTOTEST_LINUX_H_
13
14// Note(pbos): This MUST be included before the X11 headers
15#include "webrtc/video_engine/test/auto_test/interface/vie_autotest_window_manager_interface.h"
16
17#include <X11/Xlib.h>
18#include <X11/Xutil.h>
19
20// Forward declaration
21
22class ViEAutoTestWindowManager: public ViEAutoTestWindowManagerInterface
23{
24public:
25    ViEAutoTestWindowManager();
26    virtual ~ViEAutoTestWindowManager();
27    virtual void* GetWindow1();
28    virtual void* GetWindow2();
29    virtual int TerminateWindows();
30    virtual int CreateWindows(AutoTestRect window1Size,
31                              AutoTestRect window2Size, void* window1Title,
32                              void* window2Title);
33    virtual bool SetTopmostWindow();
34
35private:
36    int ViECreateWindow(Window *outWindow, Display **outDisplay, int xpos,
37                        int ypos, int width, int height, char* title);
38    int ViEDestroyWindow(Window *window, Display *display);
39
40    Window _hwnd1;
41    Window _hwnd2;
42    Display* _hdsp1;
43    Display* _hdsp2;
44};
45
46#endif  // WEBRTC_VIDEO_ENGINE_MAIN_TEST_AUTOTEST_INTERFACE_VIE_AUTOTEST_LINUX_H_
47