e62cb87bae732e9968199a3ad153cc94004b7182vboxsync/** @file
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync * VBoxSeamless - Display notifications
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync */
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync/*
c58f1213e628a545081c70e26c6b67a841cff880vboxsync * Copyright (C) 2006-2010 Oracle Corporation
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync *
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync * available from http://www.virtualbox.org. This file is free software;
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync * you can redistribute it and/or modify it under the terms of the GNU
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync * General Public License (GPL) as published by the Free Software
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync */
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync#ifndef __VBOXSERVICEDISPLAY__H
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync#define __VBOXSERVICEDISPLAY__H
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync/* The display service prototypes. */
e62cb87bae732e9968199a3ad153cc94004b7182vboxsyncint VBoxDisplayInit (const VBOXSERVICEENV *pEnv, void **ppInstance, bool *pfStartThread);
e62cb87bae732e9968199a3ad153cc94004b7182vboxsyncunsigned __stdcall VBoxDisplayThread (void *pInstance);
e62cb87bae732e9968199a3ad153cc94004b7182vboxsyncvoid VBoxDisplayDestroy (const VBOXSERVICEENV *pEnv, void *pInstance);
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsyncDWORD VBoxGetDisplayConfigCount();
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsyncDWORD VBoxGetDisplayConfig(const DWORD NumDevices, DWORD *pDevPrimaryNum, DWORD *pNumDevices, DISPLAY_DEVICE *paDisplayDevices, DEVMODE *paDeviceModes);
3fa7a7e633f46a212052b510cdb8cee41f279a67vboxsync
e068057c82b010bc7cc663e8f57ac3ef1890a33cvboxsync#ifndef VBOX_WITH_WDDM
e62cb87bae732e9968199a3ad153cc94004b7182vboxsyncstatic bool isVBoxDisplayDriverActive (void);
485a153f0c2ddf3738d940d5158c72939f080cc8vboxsync#else
485a153f0c2ddf3738d940d5158c72939f080cc8vboxsync/* @misha: getVBoxDisplayDriverType is used instead.
485a153f0c2ddf3738d940d5158c72939f080cc8vboxsync * it seems bad to put static function declaration to header,
485a153f0c2ddf3738d940d5158c72939f080cc8vboxsync * so it is moved to VBoxDisplay.cpp */
485a153f0c2ddf3738d940d5158c72939f080cc8vboxsync#endif
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync
e62cb87bae732e9968199a3ad153cc94004b7182vboxsync#endif /* __VBOXSERVICEDISPLAY__H */