Blame server/shadow/Win/win_shadow.h

Packit Service fa4841
/**
Packit Service fa4841
 * FreeRDP: A Remote Desktop Protocol Implementation
Packit Service fa4841
 *
Packit Service fa4841
 * Copyright 2011-2014 Marc-Andre Moreau <marcandre.moreau@gmail.com>
Packit Service fa4841
 *
Packit Service fa4841
 * Licensed under the Apache License, Version 2.0 (the "License");
Packit Service fa4841
 * you may not use this file except in compliance with the License.
Packit Service fa4841
 * You may obtain a copy of the License at
Packit Service fa4841
 *
Packit Service fa4841
 *     http://www.apache.org/licenses/LICENSE-2.0
Packit Service fa4841
 *
Packit Service fa4841
 * Unless required by applicable law or agreed to in writing, software
Packit Service fa4841
 * distributed under the License is distributed on an "AS IS" BASIS,
Packit Service fa4841
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Packit Service fa4841
 * See the License for the specific language governing permissions and
Packit Service fa4841
 * limitations under the License.
Packit Service fa4841
 */
Packit Service fa4841
Packit Service fa4841
#ifndef FREERDP_SERVER_SHADOW_WIN_H
Packit Service fa4841
#define FREERDP_SERVER_SHADOW_WIN_H
Packit Service fa4841
Packit Service fa4841
#include <freerdp/assistance.h>
Packit Service fa4841
Packit Service fa4841
#include <freerdp/server/shadow.h>
Packit Service fa4841
Packit Service fa4841
typedef struct win_shadow_subsystem winShadowSubsystem;
Packit Service fa4841
Packit Service fa4841
#include <winpr/crt.h>
Packit Service fa4841
#include <winpr/synch.h>
Packit Service fa4841
#include <winpr/thread.h>
Packit Service fa4841
#include <winpr/stream.h>
Packit Service fa4841
#include <winpr/collections.h>
Packit Service fa4841
Packit Service fa4841
#include "win_rdp.h"
Packit Service fa4841
#include "win_wds.h"
Packit Service fa4841
#include "win_dxgi.h"
Packit Service fa4841
Packit Service fa4841
struct win_shadow_subsystem
Packit Service fa4841
{
Packit Service fa4841
	rdpShadowSubsystem base;
Packit Service fa4841
Packit Service fa4841
	int bpp;
Packit Service fa4841
	int width;
Packit Service fa4841
	int height;
Packit Service fa4841
Packit Service fa4841
#ifdef WITH_WDS_API
Packit Service fa4841
	HWND hWnd;
Packit Service fa4841
	shwContext* shw;
Packit Service fa4841
	HANDLE RdpUpdateEnterEvent;
Packit Service fa4841
	HANDLE RdpUpdateLeaveEvent;
Packit Service fa4841
	rdpAssistanceFile* pAssistanceFile;
Packit Service fa4841
	_IRDPSessionEvents* pSessionEvents;
Packit Service fa4841
	IRDPSRAPISharingSession* pSharingSession;
Packit Service fa4841
	IRDPSRAPIInvitation* pInvitation;
Packit Service fa4841
	IRDPSRAPIInvitationManager* pInvitationMgr;
Packit Service fa4841
	IRDPSRAPISessionProperties* pSessionProperties;
Packit Service fa4841
	IRDPSRAPIVirtualChannelManager* pVirtualChannelMgr;
Packit Service fa4841
	IRDPSRAPIApplicationFilter* pApplicationFilter;
Packit Service fa4841
	IRDPSRAPIAttendeeManager* pAttendeeMgr;
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
#ifdef WITH_DXGI_1_2
Packit Service fa4841
	UINT pendingFrames;
Packit Service fa4841
	BYTE* MetadataBuffer;
Packit Service fa4841
	UINT MetadataBufferSize;
Packit Service fa4841
	BOOL dxgiSurfaceMapped;
Packit Service fa4841
	BOOL dxgiFrameAcquired;
Packit Service fa4841
	ID3D11Device* dxgiDevice;
Packit Service fa4841
	IDXGISurface* dxgiSurface;
Packit Service fa4841
	ID3D11Texture2D* dxgiStage;
Packit Service fa4841
	IDXGIResource* dxgiResource;
Packit Service fa4841
	D3D_FEATURE_LEVEL featureLevel;
Packit Service fa4841
	ID3D11Texture2D* dxgiDesktopImage;
Packit Service fa4841
	DXGI_OUTDUPL_FRAME_INFO dxgiFrameInfo;
Packit Service fa4841
	ID3D11DeviceContext* dxgiDeviceContext;
Packit Service fa4841
	IDXGIOutputDuplication* dxgiOutputDuplication;
Packit Service fa4841
#endif
Packit Service fa4841
};
Packit Service fa4841
Packit Service fa4841
#ifdef __cplusplus
Packit Service fa4841
extern "C"
Packit Service fa4841
{
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
#ifdef __cplusplus
Packit Service fa4841
}
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
#endif /* FREERDP_SERVER_SHADOW_WIN_H */