Share via


EXTENSION_SNAPIN_DATACLASS

Adds a data member to the snap-in extension data class for an ISnapInItemImpl-derived class.

EXTENSION_SNAPIN_DATACLASS( 
   dataClass  
)

Parameters

  • dataClass
    [in] The data class of the snap-in extension.

Remarks

This class should also be entered into a snap-in extension data class map. Start your snap-in extension data class map with the BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP macro, add entries for each of your snap-in extension data types with the EXTENSION_SNAPIN_NODEINFO_ENTRY macro, and complete the map with the END_EXTENSION_SNAPIN_NODEINFO_MAP macro.

Example

class CMyExtSnapinExtData : 
   public CSnapInItemImpl<CMyExtSnapinExtData>,
   public CMySnapinBase
{
public:
   CMyExtSnapinExtData() {}
};

class CMyExtSnapin : 
   public CComObjectRoot,
   public CSnapInObjectRoot<1, CMyExtSnapin>,
   public IComponentDataImpl<CMyExtSnapin, CMyExtSnapin>
{
public:
   CMyExtSnapin() {}

   BEGIN_COM_MAP(CMyExtSnapin)
   END_COM_MAP()

   EXTENSION_SNAPIN_DATACLASS(CMyExtSnapinExtData)

   BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP(CMyExtSnapin)
      EXTENSION_SNAPIN_NODEINFO_ENTRY(CMyExtSnapinExtData)
   END_EXTENSION_SNAPIN_NODEINFO_MAP()
};

Requirements

Header: atlsnap.h

See Also

Reference

BEGIN_EXTENSION_SNAPIN_NODEINFO_MAP

EXTENSION_SNAPIN_NODEINFO_ENTRY

END_EXTENSION_SNAPIN_NODEINFO_MAP

Other Resources

Snap-In Object Macros

ATL Macros