Share via


IDataObjectImpl Class

This class provides methods for supporting Uniform Data Transfer and managing connections.

Important

This class and its members cannot be used in applications that execute in the Windows Runtime.

template< class T> 
class IDataObjectImpl

Parameters

  • T
    Your class, derived from IDataObjectImpl.

Members

Public Methods

Name

Description

IDataObjectImpl::DAdvise

Establishes a connection between the data object and an advise sink. This enables the advise sink to receive notifications of changes in the object.

IDataObjectImpl::DUnadvise

Terminates a connection previously established through DAdvise.

IDataObjectImpl::EnumDAdvise

Creates an enumerator to iterate through the current advisory connections.

IDataObjectImpl::EnumFormatEtc

Creates an enumerator to iterate through the FORMATETC structures supported by the data object. The ATL implementation returns E_NOTIMPL.

IDataObjectImpl::FireDataChange

Sends a change notification back to each advise sink.

IDataObjectImpl::GetCanonicalFormatEtc

Retrieves a logically equivalent FORMATETC structure to one that is more complex. The ATL implementation returns E_NOTIMPL.

IDataObjectImpl::GetData

Transfers data from the data object to the client. The data is described in a FORMATETC structure and is transferred through a STGMEDIUM structure.

IDataObjectImpl::GetDataHere

Similar to GetData, except the client must allocate the STGMEDIUM structure. The ATL implementation returns E_NOTIMPL.

IDataObjectImpl::QueryGetData

Determines whether the data object supports a particular FORMATETC structure for transferring data. The ATL implementation returns E_NOTIMPL.

IDataObjectImpl::SetData

Transfers data from the client to the data object. The ATL implementation returns E_NOTIMPL.

Remarks

The IDataObject interface provides methods to support Uniform Data Transfer. IDataObject uses the standard format structures FORMATETC and STGMEDIUM to retrieve and store data.

IDataObject also manages connections to advise sinks to handle data change notifications. In order for the client to receive data change notifications from the data object, the client must implement the IAdviseSink interface on an object called an advise sink. When the client then calls IDataObject::DAdvise, a connection is established between the data object and the advise sink.

Class IDataObjectImpl provides a default implementation of IDataObject and implements IUnknown by sending information to the dump device in debug builds.

Related Articles   ATL Tutorial, Creating an ATL Project

Inheritance Hierarchy

IDataObject

IDataObjectImpl

Requirements

Header: atlctl.h

See Also

Other Resources

ATL Class Overview