ホーム › System.WindowsSync › ISyncKnowledge2
ISyncKnowledge2
COMメソッド 14
vtbl = vtable インデックス(0始まり)。HSP等からCOMメソッドをインデックス指定で呼ぶ際に使用します。0〜2 は IUnknown。
vtbl 27 HRESULT GetIdParameters(ID_PARAMETERS* pIdParameters)
| pIdParameters | ID_PARAMETERS* | inout | このナレッジで使用される ID 形式パラメータ (ID_PARAMETERS) を受け取るポインタである。 |
vtbl 28 HRESULT ProjectOntoColumnSet(BYTE** ppColumns, DWORD count, ISyncKnowledge2** ppiKnowledgeOut)
| ppColumns | BYTE** | in | 射影対象とする列(変更単位)の識別子の配列へのポインタである。 |
| count | DWORD | in | ppColumns 配列に含まれる識別子の個数を指定する。 |
| ppiKnowledgeOut | ISyncKnowledge2** | out | 指定した列セットへ射影されたナレッジ (ISyncKnowledge2) を受け取る出力ポインタである。 |
vtbl 29 HRESULT SerializeWithOptions(SYNC_SERIALIZATION_VERSION targetFormatVersion, DWORD dwFlags, BYTE* pbBuffer, DWORD* pdwSerializedSize)
| targetFormatVersion | SYNC_SERIALIZATION_VERSION | in | シリアル化の出力対象とするシリアル化形式バージョン (SYNC_SERIALIZATION_VERSION) を指定する。 |
| dwFlags | DWORD | in | シリアル化の動作を制御するフラグを指定する。 |
| pbBuffer | BYTE* | inout | シリアル化された結果のバイト列を受け取るバッファへのポインタである。NULL を渡すと必要なサイズのみを取得できる。 |
| pdwSerializedSize | DWORD* | inout | 入力時はバッファのバイト数を指定し、出力時は実際に必要なバイト数を受け取るポインタである。 |
vtbl 30 HRESULT GetLowestUncontainedId(ISyncKnowledge2* piSyncKnowledge, BYTE* pbItemId, DWORD* pcbItemIdSize)
| piSyncKnowledge | ISyncKnowledge2* | in | 比較対象とするナレッジ (ISyncKnowledge2) へのポインタである。 |
| pbItemId | BYTE* | inout | このナレッジに含まれない最小のアイテム識別子を受け取るバッファへのポインタである。 |
| pcbItemIdSize | DWORD* | inout | 入力時は pbItemId バッファのバイト数を指定し、出力時は実際のバイト数を受け取るポインタである。 |
vtbl 31 HRESULT GetInspector(GUID* riid, void** ppiInspector)
| riid | GUID* | in | 取得するナレッジ インスペクタ インターフェイスの IID へのポインタである。 |
| ppiInspector | void** | inout | 要求した IID のインターフェイス ポインタを受け取る出力ポインタである。 |
vtbl 32 HRESULT GetMinimumSupportedVersion(SYNC_SERIALIZATION_VERSION* pVersion)
| pVersion | SYNC_SERIALIZATION_VERSION* | inout | このナレッジがサポートする最小のシリアル化形式バージョンを受け取るポインタである。 |
vtbl 33 HRESULT GetStatistics(SYNC_STATISTICS which, DWORD* pValue)
| which | SYNC_STATISTICS | in | 取得する統計項目の種類 (SYNC_STATISTICS) を指定する。 |
| pValue | DWORD* | inout | 指定した統計項目の値を受け取るポインタである。 |
vtbl 34 HRESULT ContainsKnowledgeForItem(ISyncKnowledge* pKnowledge, BYTE* pbItemId)
| pKnowledge | ISyncKnowledge* | in | 包含されているかどうかを判定する対象のナレッジへのポインタである。 |
| pbItemId | BYTE* | in | 判定の対象とするアイテムの識別子を指すバッファへのポインタである。 |
vtbl 35 HRESULT ContainsKnowledgeForChangeUnit(ISyncKnowledge* pKnowledge, BYTE* pbItemId, BYTE* pbChangeUnitId)
| pKnowledge | ISyncKnowledge* | in | 包含されているかどうかを判定する対象のナレッジへのポインタである。 |
| pbItemId | BYTE* | in | 判定の対象とするアイテムの識別子を指すバッファへのポインタである。 |
| pbChangeUnitId | BYTE* | in | 判定の対象とする変更単位の識別子を指すバッファへのポインタである。 |
vtbl 36 HRESULT ProjectOntoKnowledgeWithPrerequisite(ISyncKnowledge* pPrerequisiteKnowledge, ISyncKnowledge* pTemplateKnowledge, ISyncKnowledge** ppProjectedKnowledge)
| pPrerequisiteKnowledge | ISyncKnowledge* | in | 射影に用いる前提条件 (prerequisite) ナレッジへのポインタである。 |
| pTemplateKnowledge | ISyncKnowledge* | in | 射影の範囲を定めるテンプレート ナレッジへのポインタである。 |
| ppProjectedKnowledge | ISyncKnowledge** | out | 前提条件付きで射影されたナレッジを受け取る出力ポインタである。 |
vtbl 37 HRESULT Complement(ISyncKnowledge* pSyncKnowledge, ISyncKnowledge** ppComplementedKnowledge)
| pSyncKnowledge | ISyncKnowledge* | in | 補集合を求める基準となるナレッジへのポインタである。 |
| ppComplementedKnowledge | ISyncKnowledge** | out | このナレッジに対する補集合のナレッジを受け取る出力ポインタである。 |
vtbl 38 HRESULT IntersectsWithKnowledge(ISyncKnowledge* pSyncKnowledge)
| pSyncKnowledge | ISyncKnowledge* | in | このナレッジと積集合(共通部分)を持つかどうかを判定する対象のナレッジへのポインタである。 |
| ppKnowledgeCookie | IUnknown** | out | このナレッジの状態を表すナレッジ クッキー オブジェクトを受け取る出力ポインタである。 |
vtbl 40 HRESULT CompareToKnowledgeCookie(IUnknown* pKnowledgeCookie, KNOWLEDGE_COOKIE_COMPARISON_RESULT* pResult)
| pKnowledgeCookie | IUnknown* | in | 比較対象とするナレッジ クッキー オブジェクトへのポインタである。 |
| pResult | KNOWLEDGE_COOKIE_COMPARISON_RESULT* | inout | 比較結果 (KNOWLEDGE_COOKIE_COMPARISON_RESULT) を受け取るポインタである。 |
HSP用 COM定義
#usecom / #comfunc によるHSPのCOM呼び出し定義。数字は vtbl インデックス(0始まり)。クラスIDが無い場合 #usecom の末尾は "{}"、ある場合は "{CLSID}"。
出力引数:
#define global IID_ISyncKnowledge2 "{ED0ADDC0-3B4B-46A1-9A45-45661D2114C8}" #usecom global ISyncKnowledge2 IID_ISyncKnowledge2 "{}" #comfunc global ISyncKnowledge2_GetIdParameters 27 var #comfunc global ISyncKnowledge2_ProjectOntoColumnSet 28 var,int,sptr #comfunc global ISyncKnowledge2_SerializeWithOptions 29 int,int,var,var #comfunc global ISyncKnowledge2_GetLowestUncontainedId 30 sptr,var,var #comfunc global ISyncKnowledge2_GetInspector 31 var,sptr #comfunc global ISyncKnowledge2_GetMinimumSupportedVersion 32 var #comfunc global ISyncKnowledge2_GetStatistics 33 int,var #comfunc global ISyncKnowledge2_ContainsKnowledgeForItem 34 sptr,var #comfunc global ISyncKnowledge2_ContainsKnowledgeForChangeUnit 35 sptr,var,var #comfunc global ISyncKnowledge2_ProjectOntoKnowledgeWithPrerequisite 36 sptr,sptr,sptr #comfunc global ISyncKnowledge2_Complement 37 sptr,sptr #comfunc global ISyncKnowledge2_IntersectsWithKnowledge 38 sptr #comfunc global ISyncKnowledge2_GetKnowledgeCookie 39 sptr #comfunc global ISyncKnowledge2_CompareToKnowledgeCookie 40 sptr,var ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数は var(変数直渡し)。varptr 方式にも切替可。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。#define global IID_ISyncKnowledge2 "{ED0ADDC0-3B4B-46A1-9A45-45661D2114C8}" #usecom global ISyncKnowledge2 IID_ISyncKnowledge2 "{}" #comfunc global ISyncKnowledge2_GetIdParameters 27 sptr #comfunc global ISyncKnowledge2_ProjectOntoColumnSet 28 sptr,int,sptr #comfunc global ISyncKnowledge2_SerializeWithOptions 29 int,int,sptr,sptr #comfunc global ISyncKnowledge2_GetLowestUncontainedId 30 sptr,sptr,sptr #comfunc global ISyncKnowledge2_GetInspector 31 sptr,sptr #comfunc global ISyncKnowledge2_GetMinimumSupportedVersion 32 sptr #comfunc global ISyncKnowledge2_GetStatistics 33 int,sptr #comfunc global ISyncKnowledge2_ContainsKnowledgeForItem 34 sptr,sptr #comfunc global ISyncKnowledge2_ContainsKnowledgeForChangeUnit 35 sptr,sptr,sptr #comfunc global ISyncKnowledge2_ProjectOntoKnowledgeWithPrerequisite 36 sptr,sptr,sptr #comfunc global ISyncKnowledge2_Complement 37 sptr,sptr #comfunc global ISyncKnowledge2_IntersectsWithKnowledge 38 sptr #comfunc global ISyncKnowledge2_GetKnowledgeCookie 39 sptr #comfunc global ISyncKnowledge2_CompareToKnowledgeCookie 40 sptr,sptr ; ※数字は vtbl インデックス(0始まり)。0/1/2 は IUnknown(QueryInterface/AddRef/Release)。 ; ※このインターフェースは直接 CoCreateInstance するクラスIDが無いため "{}"(他メソッド/アクティベーションで取得)。 ; ※出力/バッファ引数はポインタ方式(token=sptr / 呼び出しは varptr(変数))。 ; ※ハンドル/void*等の不透明ポインタは IronHSP では intptr 指定が可能。