Blame channels/rdpei/client/rdpei_main.h

Packit Service fa4841
/**
Packit Service fa4841
 * FreeRDP: A Remote Desktop Protocol Implementation
Packit Service fa4841
 * Input Virtual Channel Extension
Packit Service fa4841
 *
Packit Service fa4841
 * Copyright 2013 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_CHANNEL_RDPEI_CLIENT_MAIN_H
Packit Service fa4841
#define FREERDP_CHANNEL_RDPEI_CLIENT_MAIN_H
Packit Service fa4841
Packit Service fa4841
#ifdef HAVE_CONFIG_H
Packit Service fa4841
#include "config.h"
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
#include <freerdp/dvc.h>
Packit Service fa4841
#include <freerdp/types.h>
Packit Service fa4841
#include <freerdp/addin.h>
Packit Service fa4841
#include <freerdp/channels/log.h>
Packit Service fa4841
Packit Service fa4841
#include <freerdp/channels/rdpei.h>
Packit Service fa4841
#include <freerdp/client/rdpei.h>
Packit Service fa4841
Packit Service fa4841
#define TAG CHANNELS_TAG("rdpei.client")
Packit Service fa4841
Packit Service bb5c11
#define RDPINPUT_CONTACT_STATE_INITIAL			0x0000
Packit Service bb5c11
#define RDPINPUT_CONTACT_STATE_ENGAGED			0x0001
Packit Service bb5c11
#define RDPINPUT_CONTACT_STATE_HOVERING			0x0002
Packit Service bb5c11
#define RDPINPUT_CONTACT_STATE_OUT_OF_RANGE		0x0003
Packit Service fa4841
Packit Service fa4841
/**
Packit Service fa4841
 * Touch Contact State Transitions
Packit Service fa4841
 *
Packit Service fa4841
 * ENGAGED -> UPDATE | INRANGE | INCONTACT -> ENGAGED
Packit Service fa4841
 * ENGAGED -> UP | INRANGE -> HOVERING
Packit Service fa4841
 * ENGAGED -> UP -> OUT_OF_RANGE
Packit Service fa4841
 * ENGAGED -> UP | CANCELED -> OUT_OF_RANGE
Packit Service fa4841
 *
Packit Service fa4841
 * HOVERING -> UPDATE | INRANGE -> HOVERING
Packit Service fa4841
 * HOVERING -> DOWN | INRANGE | INCONTACT -> ENGAGED
Packit Service fa4841
 * HOVERING -> UPDATE -> OUT_OF_RANGE
Packit Service fa4841
 * HOVERING -> UPDATE | CANCELED -> OUT_OF_RANGE
Packit Service fa4841
 *
Packit Service fa4841
 * OUT_OF_RANGE -> DOWN | INRANGE | INCONTACT -> ENGAGED
Packit Service fa4841
 * OUT_OF_RANGE -> UPDATE | INRANGE -> HOVERING
Packit Service fa4841
 *
Packit Service fa4841
 * When a contact is in the "hovering" or "engaged" state, it is referred to as being "active".
Packit Service fa4841
 * "Hovering" contacts are in range of the digitizer, while "engaged" contacts are in range of
Packit Service fa4841
 * the digitizer and in contact with the digitizer surface. MS-RDPEI remotes only active contacts
Packit Service fa4841
 * and contacts that are transitioning to the "out of range" state; see section 2.2.3.3.1.1 for
Packit Service fa4841
 * an enumeration of valid state flags combinations.
Packit Service fa4841
 *
Packit Service fa4841
 * When transitioning from the "engaged" state to the "hovering" state, or from the "engaged"
Packit Service fa4841
 * state to the "out of range" state, the contact position cannot change; it is only allowed
Packit Service fa4841
 * to change after the transition has taken place.
Packit Service fa4841
 *
Packit Service fa4841
 */
Packit Service fa4841
Packit Service fa4841
struct _RDPINPUT_CONTACT_POINT
Packit Service fa4841
{
Packit Service fa4841
	int lastX;
Packit Service fa4841
	int lastY;
Packit Service fa4841
	BOOL dirty;
Packit Service fa4841
	BOOL active;
Packit Service fa4841
	UINT32 state;
Packit Service fa4841
	UINT32 flags;
Packit Service fa4841
	UINT32 contactId;
Packit Service fa4841
	int externalId;
Packit Service fa4841
	RDPINPUT_CONTACT_DATA data;
Packit Service fa4841
};
Packit Service fa4841
typedef struct _RDPINPUT_CONTACT_POINT RDPINPUT_CONTACT_POINT;
Packit Service fa4841
Packit Service fa4841
#ifdef WITH_DEBUG_DVC
Packit Service fa4841
#define DEBUG_DVC(...) WLog_DBG(TAG, __VA_ARGS__)
Packit Service fa4841
#else
Packit Service bb5c11
#define DEBUG_DVC(...) do { } while (0)
Packit Service fa4841
#endif
Packit Service fa4841
Packit Service fa4841
#endif /* FREERDP_CHANNEL_RDPEI_CLIENT_MAIN_H */
Packit Service bb5c11