Antarmuka ID2D1Properties (d2d1_1.h)
Mewakili sekumpulan properti run-time yang dapat diikat dan dapat ditemukan yang memungkinkan aplikasi berbasis data untuk memodifikasi status efek Direct2D.
Warisan
Antarmuka ID2D1Properties mewarisi dari antarmuka IUnknown . ID2D1Properties juga memiliki jenis anggota berikut:
Metode
Antarmuka ID2D1Properties memiliki metode ini.
ID2D1Properties::GetPropertyCount Mendapatkan jumlah properti tingkat atas. |
ID2D1Properties::GetPropertyIndex Mendapatkan indeks yang sesuai dengan nama properti yang diberikan. |
ID2D1Properties::GetPropertyName Mendapatkan nama properti yang sesuai dengan indeks yang diberikan. Ini adalah kelebihan beban templat. Lihat Keterangan. |
ID2D1Properties::GetPropertyName Mendapatkan nama properti yang sesuai dengan indeks yang diberikan. |
ID2D1Properties::GetPropertyNameLength Mendapatkan jumlah karakter untuk nama properti yang diberikan. Ini adalah kelebihan beban templat. Lihat Keterangan. |
ID2D1Properties::GetPropertyNameLength Mendapatkan jumlah karakter untuk nama properti yang diberikan. |
ID2D1Properties::GetSubProperties Mendapatkan sub-properti properti yang disediakan menurut indeks. Ini adalah kelebihan beban templat. |
ID2D1Properties::GetSubProperties Mendapatkan sub-properti properti yang disediakan menurut indeks. |
ID2D1Properties::GetType Mendapatkan D2D1_PROPERTY_TYPE properti yang dipilih. Ini adalah kelebihan beban templat. Lihat Keterangan. |
ID2D1Properties::GetType Mendapatkan D2D1_PROPERTY_TYPE properti yang dipilih. |
ID2D1Properties::GetValue Mendapatkan nilai properti menurut indeks. Ini adalah kelebihan beban templat. Lihat Keterangan. (kelebihan beban 1/2) |
ID2D1Properties::GetValue Mendapatkan nilai properti yang ditentukan menurut indeks. Ini adalah kelebihan beban templat. Lihat Keterangan. |
ID2D1Properties::GetValue Mendapatkan nilai properti menurut indeks. Ini adalah kelebihan beban templat. Lihat Keterangan. (kelebihan beban 2/2) |
ID2D1Properties::GetValue Mendapatkan nilai properti yang ditentukan menurut indeks. (kelebihan beban 1/2) |
ID2D1Properties::GetValue Mendapatkan nilai properti yang ditentukan menurut indeks. (kelebihan beban 2/2) |
ID2D1Properties::GetValueByName Mendapatkan nilai properti berdasarkan nama. Ini adalah kelebihan beban templat. Lihat Keterangan. (kelebihan beban 2/2) |
ID2D1Properties::GetValueByName Mendapatkan nilai properti berdasarkan nama. (kelebihan beban 2/2) |
ID2D1Properties::GetValueByName Mendapatkan nilai properti berdasarkan nama. (kelebihan beban 1/2) |
ID2D1Properties::GetValueByName Mendapatkan nilai properti berdasarkan nama. Ini adalah kelebihan beban templat. Lihat Keterangan. (kelebihan beban 1/2) |
ID2D1Properties::GetValueSize Mendapatkan ukuran nilai properti dalam byte, menggunakan indeks properti. Ini adalah kelebihan beban templat. Lihat Keterangan. |
ID2D1Properties::GetValueSize Mendapatkan ukuran nilai properti dalam byte, menggunakan indeks properti. |
ID2D1Properties::SetValue Mengatur properti terkait menurut indeks. Ini adalah kelebihan beban templat. (kelebihan beban 2/2) |
ID2D1Properties::SetValue Mengatur properti terkait menurut indeks. Ini adalah kelebihan beban templat. (kelebihan beban 1/2) |
ID2D1Properties::SetValue Mengatur properti terkait menurut indeks. (kelebihan beban 1/2) |
ID2D1Properties::SetValue Mengatur properti terkait menurut indeks. (kelebihan beban 2/2) |
ID2D1Properties::SetValueByName Mengatur properti bernama ke nilai yang diberikan. (kelebihan beban 1/2) |
ID2D1Properties::SetValueByName Mengatur properti bernama ke nilai yang diberikan. Ini adalah kelebihan beban templat. Lihat Keterangan. |
ID2D1Properties::SetValueByName Mengatur properti bernama ke nilai yang diberikan. (kelebihan beban 2/2) |
Keterangan
Antarmuka ini mendukung akses melalui indeks atau nama properti. Selain properti tingkat atas, setiap properti dalam objek ID2D1Properties mungkin berisi objek ID2D1Properties , yang menyimpan metadata yang menjelaskan properti induk.
Ikhtisar
Antarmuka ID2D1Properties memaparkan serangkaian properti run-time yang dapat diikat dan dapat ditemukan yang memungkinkan aplikasi berbasis data seperti alat penulisan grafik efek atau sistem animasi untuk memodifikasi status efek Direct2D.Antarmuka mendukung akses melalui indeks atau nama properti. Selain properti tingkat atas, setiap properti dalam ID2D1Properties mungkin berisi antarmuka sub-ID2D1Properties , yang menyimpan metadata yang menjelaskan properti induknya. Sub-properti diakses dengan meminta sub-antarmuka ini menurut indeks properti, atau dengan menggunakan string nama properti yang dipisahkan oleh titik (.).
Antarmuka ini sengaja dirancang untuk menghindari dependensi berdasarkan run-time. Semua alokasi dilakukan oleh pemanggil jenis API dan VARIAN tidak digunakan. Antarmuka properti umumnya dirancang untuk tidak mengembalikan kegagalan di mana aplikasi dapat dengan mudah mengubah urutan panggilan mereka untuk menghindari kondisi tersebut. Misalnya, karena jumlah properti yang didukung oleh instans dikembalikan oleh metode GetPropertyCount , metode lain yang mengambil indeks properti tidak mengembalikan kegagalan, kecuali mereka juga menggunakan sistem properti efek plug-in.
Antarmuka ini terutama didasarkan pada model akses berbasis indeks, dan mendukung sub-properti berlapis dalam properti. Tidak seperti struktur direktori, properti itu sendiri memiliki nilai dan jenis dan mungkin secara opsional mendukung sub-properti (direktori bukan file). Ini biasanya metadata yang menjelaskan properti , tetapi, ini juga digunakan untuk menentukan array objek. Untuk menyederhanakan akses sub-properti dan untuk memungkinkan akses berbasis nama, dua metode pembantu – GetValueByName – ditentukan. Ini menggunakan notasi "putus-putus" untuk memungkinkan sub-properti ditentukan secara langsung, misalnya:
alphaMode = pEffect->GetValueByName<UINT32>(L"Inputs.0.AlphaMode");
Atau:
pEffect->SetValueByName<UINT32>(
L"Inputs.0.AlphaMode",
DXGI_ALPHA_MODE_PREMULTIPLIED);
Properti Efek Standar
Nama/indeks properti | Jenis properti | Deskripsi properti |
---|---|---|
CLSID / D2D1_PROPERTY_CLSID | D2D1_PROPERTY_TYPE_CLSID | CLSID efeknya. |
DisplayName / D2D1_PROPERTY_DISPLAYNAME | D2D1_PROPERTY_TYPE_STRING | Nama yang dapat ditampilkan dan dilokalkan untuk efek tersebut. |
Penulis/ D2D1_PROPERTY_AUTHOR | D2D1_PROPERTY_TYPE_STRING | Penulis efek. |
Kategori / D2D1_PROPERTY_CATEGORY | D2D1_PROPERTY_TYPE_STRING | Kategori efek. |
Deskripsi / D2D1_PROPERTY_DESCRIPTION | D2D1_PROPERTY_TYPE_STRING | Deskripsi efeknya. |
Input / D2D1_PROPERTY_INPUTS | D2D1_PROPERTY_TYPE_ARRAY
Catatan Elemen array ini berjenis D2D1_PROPERTY_TYPE_STRING.
|
Array nama untuk input efek. Setiap elemen array adalah string yang dilokalkan yang menentukan nama input. |
Sub-Properties standar
Berikut ini adalah sub-properti standar yang dapat digunakan untuk akses meta-data, dan mungkin tersedia di properti sistem dan kustom. Silakan lihat enumerasi D2D1_SUBPROPERTY dan D2D1_PROPERTY_TYPE untuk informasi lebih lanjut.Nama/indeks properti | Jenis properti | Deskripsi properti |
---|---|---|
DisplayName / D2D1_SUBPROPERTY_DISPLAYNAME | D2D1_PROPERTY_TYPE_STRING |
Nama yang dapat ditampilkan dan dilokalkan untuk properti induk.
Sub-properti ini ada di semua properti tingkat atas. |
IsReadOnly / D2D1_SUBPROPERTY_ISREADONLY | D2D1_PROPERTY_TYPE_BOOL |
Nilai yang menunjukkan apakah properti induk dapat ditulis.
Sub-properti ini ada di semua properti tingkat atas. |
Default / D2D1_SUBPROPERTY_DEFAULT | Sama seperti properti induk. |
Nilai default untuk properti .
Sub-properti ini secara opsional ada di semua properti. |
Min / D2D1_SUBPROPERTY_MIN | Sama seperti properti induk.
Catatan Hanya berlaku untuk properti jenis numerik.
|
Nilai minimum yang didukung properti induk diatur ke. |
Maks/ D2D1_SUBPROPERTY_MAX | Sama seperti properti induk.
Catatan Hanya berlaku untuk properti jenis numerik.
|
Nilai maksimum yang didukung properti induk diatur ke. |
Bidang / D2D1_SUBPROPERTY_FIELDS | Array / D2D1_PROPERTY_TYPE_ARRAY
Catatan Hanya berlaku ketika properti induk berjenis Enum.
|
Kumpulan nilai valid yang dapat diatur ke properti induk.
Setiap nilai dalam array ini adalah pasangan nama/indeks. Indeks dapat diatur ke induk dan namanya adalah nilai yang dilokalkan yang dirancang untuk dikonsumsi oleh UI. Lihat bagian berikut untuk detail selengkapnya. |
Sub-Properties Jenis Array
Lihat ID2D1Properties::GetType dan D2D1_PROPERTY_TYPE untuk informasi selengkapnya. Jika jenis properti D2D1_PROPERTY_TYPE_ARRAY, nilai properti akan dianggap sebagai UINT yang memiliki jumlah elemen array. Sub-properti berikutnya akan langsung memetakan indeks ke nilai properti yang diminta. Contohnya:Inputs: UINT32 – 2
Inputs.0 : <Type> – First input
Inputs.1 : <Type> – Second input
Contoh di atas menggunakan sub-properti berikut, yang akan muncul pada properti jenis ARRAY. Perhatikan bahwa properti bernomor bukan properti sistem, dan berada dalam rentang normal (0x0 – 0x80000000).
Nama properti | Indeks properti | Deskripsi properti |
---|---|---|
Property.0 | 0 | Elemen pertama dari array properti. |
... | ... | ... |
Property.N | N | ElemenN th dari array properti. |
Jenis setiap sub-elemen akan menjadi apa pun jenis arraynya. Dalam contoh di atas, ini adalah array string.
Sub-Properties Tipe Enum
Jika properti memiliki jenis D2D1_PROPERTY_TYPE_ENUM maka properti akan memiliki nilai enumerasi yang sesuai. Akan ada sub-array bidang yang akan sesuai dengan aturan umum untuk sub-properti array dan terdiri dari pasangan nama/nilai. Contohnya:PixelFormat: ENUM – The pixel format value
PixelFormat.Fields: UINT32 – The number of fields
PixelFormat.Fields.0:String – The name of the first enum
PixelFormat.Fields.0.Index: UINT32 – The value of the enumeration.
Contoh di atas menggunakan sub-properti berikut. Silakan lihat enumerasi D2D1_SUBPROPERTY dan D2D1_PROPERTY_TYPE untuk informasi lebih lanjut.
Nama properti | Indeks properti | Deskripsi properti |
---|---|---|
Property.Fields | D2D1_SUBPROPERTY_FIELDS | Properti jenis array yang memberikan informasi tentang setiap bidang dalam enumerasi. |
Property.Fields.N | N | Elemen array yang memberikan nama nilai enumerasi Nth. |
Property.Fields.N.Index | D2D1_SUBPROPERTY_INDEX | Indeks yang sesuai dengan nilai enumerasi Nth. |
Persyaratan
Klien minimum yang didukung | Pembaruan Windows 8 dan Platform untuk Windows 7 [aplikasi desktop | Aplikasi UWP] |
Server minimum yang didukung | Windows Server 2012 dan Pembaruan Platform untuk Windows Server 2008 R2 [aplikasi desktop | Aplikasi UWP] |
Target Platform | Windows |
Header | d2d1_1.h |