コネクション ポイントに関するマクロ
これらのマクロによって、コネクション ポイントのマップとエントリが定義されます。
マクロ | 説明 |
---|---|
BEGIN_CONNECTION_POINT_MAP | コネクション ポイント マップ エントリの先頭をマークします。 |
CONNECTION_POINT_ENTRY | マップにコネクション ポイントを入力します。 |
CONNECTION_POINT_ENTRY_P | (Visual Studio 2017) CONNECTION_POINT_ENTRY に似てますが、iid へのポインターを受け取ります。 |
END_CONNECTION_POINT_MAP | コネクション ポイント マップ エントリの末尾をマークします。 |
要件
ヘッダー: atlcom.h
BEGIN_CONNECTION_POINT_MAP
コネクション ポイント マップ エントリの先頭をマークします。
BEGIN_CONNECTION_POINT_MAP(x)
パラメーター
x
[in] コネクション ポイントを含むクラスの名前。
解説
BEGIN_CONNECTION_POINT_MAP マクロでコネクション ポイント マップを開始し、CONNECTION_POINT_ENTRY マクロでコネクション ポイントごとにエントリを追加し、END_CONNECTION_POINT_MAP マクロでマップを完了します。
ATL のコネクション ポイントの詳細については、コネクション ポイントに関するページを参照してください。
例
BEGIN_CONNECTION_POINT_MAP(CPolyCtl)
CONNECTION_POINT_ENTRY(__uuidof(_IPolyCtlEvents))
END_CONNECTION_POINT_MAP()
CONNECTION_POINT_ENTRY と CONNECTION_POINT_ENTRY_P
アクセスできるよう、指定のインターフェイスのコネクション ポイントをコネクション ポイント マップに入力します。
CONNECTION_POINT_ENTRY(iid)
CONNECTION_POINT_ENTRY_P(piid) // (Visual Studio 2017)
パラメーター
iid
[in] コネクション ポイント マップに追加されているインターフェイスの GUID。
piid
[in] 追加されているインターフェイスの GUID へのポインター。
解説
マップのコネクション ポイント エントリが IConnectionPointContainerImpl によって使用されています。 コネクション ポイント マップが含まれるクラスは IConnectionPointContainerImpl
から継承する必要があります。
BEGIN_CONNECTION_POINT_MAP マクロでコネクション ポイント マップを開始し、CONNECTION_POINT_ENTRY マクロでコネクション ポイントごとにエントリを追加し、END_CONNECTION_POINT_MAP マクロでマップを完了します。
ATL のコネクション ポイントの詳細については、コネクション ポイントに関するページを参照してください。
例
class ATL_NO_VTABLE CConnect2 :
public CComObjectRootEx<CComSingleThreadModel>,
public CComCoClass<CConnect2, &CLSID_Connect2>,
public IConnectionPointContainerImpl<CConnect2>,
public IPropertyNotifySinkCP<CConnect2>
{
public:
BEGIN_CONNECTION_POINT_MAP(CConnect2)
CONNECTION_POINT_ENTRY(IID_IPropertyNotifySink)
END_CONNECTION_POINT_MAP()
// Remainder of class declaration omitted.
END_CONNECTION_POINT_MAP
コネクション ポイント マップ エントリの末尾をマークします。
END_CONNECTION_POINT_MAP()
解説
BEGIN_CONNECTION_POINT_MAP マクロでコネクション ポイント マップを開始し、CONNECTION_POINT_ENTRY マクロでコネクション ポイントごとにエントリを追加し、END_CONNECTION_POINT_MAP マクロでマップを完了します。
ATL のコネクション ポイントの詳細については、コネクション ポイントに関するページを参照してください。
例
BEGIN_CONNECTION_POINT_MAP(CMyComponent)
CONNECTION_POINT_ENTRY(__uuidof(_IMyComponentEvents))
END_CONNECTION_POINT_MAP()