Freigeben über


IRealTimeStylus::GetDesiredPacketDescription-Methode (rtscom.h)

Ruft die Liste der Eigenschaften ab, die angefordert wurden, um in den Paketstream eingeschlossen zu werden.

Syntax

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

Parameter

[in, out] pcProperties

Die Größe des ppPropertyGUIDS-Puffers in Bytes.

[out] ppPropertyGuids

Ein Zeiger auf eine Liste von GUIDs, die angibt, welche Eigenschaften wie X, Y und NormalPressure in den Paketdaten vorhanden sind. Eine Liste der vordefinierten Eigenschaften finden Sie unter PacketPropertyGuids-Konstanten.

Rückgabewert

Eine Beschreibung der Rückgabewerte finden Sie unter RealTimeStylus-Klassen und -Schnittstellen.

Hinweise

Verwenden Sie diese Methode, um das Array von Paketeigenschaften abzurufen, das das IRealTimeStylus-Objekt abonniert hat, indem Sie die IRealTimeStylus::SetDesiredPacketDescription-Methode aufrufen. Die Paketeigenschaften werden durch ein Array von global eindeutigen Bezeichnern (GUIDs) dargestellt. Eine vollständige Liste der Eigenschaften, für die Sie Metriken abrufen können, finden Sie unter PacketPropertyGuids-Konstanten.

Der Standardwert ist ein Array von GUIDs, das die X-, Y- und Normaldruck-GUIDs enthält.

Die IRealTimeStylus::GetDesiredPacketDescription-Methode verwendet CoTaskMemAlloc , um Speicherplatz für die GUIDs zuzuweisen. Der Aufrufer sollte CoTaskMemFree aufrufen, wenn das Array nicht mehr benötigt wird.

Wenn diese Methode für ein untergeordnetes IRealTimeStylus-Objekt (kaskadierende Konfiguration) aufgerufen und verbunden ist, gibt diese Methode die Paketbeschreibung des übergeordneten Objekts zurück, wenn sie verbunden ist. Andernfalls gibt diese Methode den Standardwert (X, Y, Druck) oder die eigenschaften zurück, die in einem früheren Aufruf der IRealTimeStylus::SetDesiredPacketDescription-Methode festgelegt wurden.

In der folgenden Liste wird beschrieben, wie das IRealTimeStylus-Objekt die Paketeigenschaften-GUIDs anordnet.

  • Standardmäßig gibt die IRealTimeStylus::GetDesiredPacketDescription-Methode GUID_X, GUID_Y und GUID_NORMAL_PRESSURE zurück.
  • Die X- und Y-GUIDs werden immer an den ersten beiden Positionen im Array von der IRealTimeStylus::GetDesiredPacketDescription-Methode zurückgegeben, unabhängig davon, ob sie in einem vorherigen Aufruf der IRealTimeStylus::SetDesiredPacketDescription-Methode angegeben wurden.
  • Wenn GUID_PACKET_STATUS im Aufruf der IRealTimeStylus::SetDesiredPacketDescription Method-Methode angegeben wird, wird GUID_PACKET_STATUS von der IRealTimeStylus::GetDesiredPacketDescription-Methode immer an der letzten Position im Array zurückgegeben.
  • Wenn guiDs mehr als einmal im Aufruf der IRealTimeStylus::SetDesiredPacketDescription-Methode angegeben werden, tritt jede GUID nur einmal im Array auf, das von der IRealTimeStylus::GetDesiredPacketDescription-Methode zurückgegeben wird.

Beispiele

Der folgende C++-Beispielcode ruft die Liste der Eigenschaften ab, die im Paketstream enthalten sind.

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]);
    }
}

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP Tablet PC Edition [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Nicht unterstützt
Zielplattform Windows
Kopfzeile rtscom.h
DLL RTSCom.dll

Weitere Informationen

IRealTimeStylus

IRealTimeStylus::SetDesiredPacketDescription-Methode

RealTimeStylus-Klasse