Share via


Método IRealTimeStylus::GetDesiredPacketDescription (rtscom.h)

Recupera a lista de propriedades que foram solicitadas para serem incluídas no fluxo de pacotes.

Sintaxe

HRESULT GetDesiredPacketDescription(
  [in, out] ULONG *pcProperties,
  [out]     GUID  **ppPropertyGuids
);

Parâmetros

[in, out] pcProperties

O tamanho, em bytes, do buffer ppPropertyGUIDS .

[out] ppPropertyGuids

Um ponteiro para uma lista de GUIDs que especificam quais propriedades, como X, Y e NormalPressure, estão presentes nos dados do pacote. Para obter uma lista de propriedades predefinidas, consulte Constantes PacketPropertyGuids.

Valor retornado

Para obter uma descrição dos valores retornados, consulte Classes e interfaces RealTimeStylus.

Comentários

Use esse método para obter a matriz de propriedades de pacote à qual o objeto IRealTimeStylus assinou chamando o Método IRealTimeStylus::SetDesiredPacketDescription. As propriedades do pacote são representadas por uma matriz de GUIDs (identificadores globalmente exclusivos). Para obter uma lista completa das propriedades para as quais você pode recuperar métricas, consulte as Constantes PacketPropertyGuids.

O padrão é uma matriz de GUIDs que contém os GUIDs de pressão X, Y e normal.

O método IRealTimeStylus::GetDesiredPacketDescription usa CoTaskMemAlloc para alocar espaço para os GUIDs. O chamador deve chamar CoTaskMemFree quando a matriz não for mais necessária.

Se chamado em um objeto IRealTimeStylus filho (configuração em cascata) e conectado, esse método retornará a descrição do pacote pai se conectado, caso contrário, esse método retornará o padrão (X, Y, pressão) ou quaisquer propriedades que foram definidas em uma chamada anterior para o Método IRealTimeStylus::SetDesiredPacketDescription.

A lista a seguir descreve como o objeto IRealTimeStylus ordena os GUIDs da propriedade de pacote.

  • Por padrão, o método método IRealTimeStylus::GetDesiredPacketDescription retorna GUID_X, GUID_Y e GUID_NORMAL_PRESSURE.
  • Os GUIDs X e Y sempre são retornados nas duas primeiras posições na matriz pelo método IRealTimeStylus::GetDesiredPacketDescription , se eles foram especificados em uma chamada anterior para o método IRealTimeStylus::SetDesiredPacketDescription .
  • Se GUID_PACKET_STATUS for especificado na chamada para o método IRealTimeStylus::SetDesiredPacketDescription , GUID_PACKET_STATUS sempre será retornado na última posição na matriz pelo método IRealTimeStylus::GetDesiredPacketDescription .
  • Se algum GUIDs for especificado mais de uma vez na chamada para o método IRealTimeStylus::SetDesiredPacketDescription , cada GUID ocorrerá apenas uma vez na matriz retornada pelo método IRealTimeStylus::GetDesiredPacketDescription .

Exemplos

O código de exemplo C++ a seguir obtém a lista de propriedades incluídas no fluxo de pacotes.

GUID guidDesiredPacketDescription[] = { GUID_PACKETPROPERTY_GUID_X, 
                                        GUID_PACKETPROPERTY_GUID_Y, 
                                        GUID_PACKETPROPERTY_GUID_NORMAL_PRESSURE,
                                        GUID_PACKETPROPERTY_GUID_TANGENT_PRESSURE };

// Number of properties in the array
ULONG ulProperties = sizeof(guidDesiredPacketDescription) / sizeof(GUID);

// Set the packet information we'd like to get
if (SUCCEEDED(g_pRealTimeStylus->SetDesiredPacketDescription(ulProperties, guidDesiredPacketDescription)))
{
    TRACE("Set the desired packet description successfully.\n");
}

GUID* pGuids = NULL;

// See if setting the properties was successful
if (SUCCEEDED(g_pRealTimeStylus->GetDesiredPacketDescription(&ulProperties, &pGuids)))
{
    TRACE("The RealTimeStylus supports %d properties.\n", ulProperties);

    // Display the values of the GUIDs in debug output
    for (int i = 0; i < ulProperties; i++)
    {
        TRACE("GUID #%d == %d\n", i, pGuids[i]);
    }
}

Requisitos

   
Cliente mínimo com suporte Windows XP Tablet PC Edition [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Nenhum compatível
Plataforma de Destino Windows
Cabeçalho rtscom.h
DLL RTSCom.dll

Confira também

IRealTimeStylus

Método IRealTimeStylus::SetDesiredPacketDescription

Classe RealTimeStylus