IDataObjectImpl

template< class T >
class IDataObjectImpl

Parameters

T Your class, derived from IDataObjectImpl.

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

#include <atlctl.h>

See Also IDataObject, FORMATETC, STGMEDIUM, and IAdviseSink in the Win32 SDK


IDataObjectImpl Class Members

Class Methods
FireDataChangeSends a change notification back to each advise sink.
IDataObject Methods
DAdviseEstablishes a connection between the data object and an advise sink. This enables the advise sink to receive notifications of changes in the object.
DUnadviseTerminates a connection previously established through DAdvise.
EnumDAdviseCreates an enumerator to iterate through the current advisory connections.
EnumFormatEtcCreates an enumerator to iterate through the FORMATETC structures supported by the data object. The ATL implementation returns E_NOTIMPL.
GetCanonicalFormatEtcRetrieves a logically equivalent FORMATETC structure to one that is more complex. The ATL implementation returns E_NOTIMPL.
GetDataTransfers data from the data object to the client. The data is described in a FORMATETC structure and is transferred through a STGMEDIUM structure.
GetDataHereSimilar to GetData, except the client must allocate the STGMEDIUM structure. The ATL implementation returns E_NOTIMPL.
QueryGetDataDetermines whether the data object supports a particular FORMATETC structure for transferring data. The ATL implementation returns E_NOTIMPL.
SetDataTransfers data from the client to the data object. The ATL implementation returns E_NOTIMPL.

IDataObjectImpl Overview


Methods


IDataObjectImpl::DAdvise

HRESULT DAdvise( FORMATETC* pformatetc, DWORD advf, IAdviseSink* pAdvSink, DWORD* pdwConnection );

See IDataObject::DAdvise in the Win32 SDK.

Remarks

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

To terminate the connection, call DUnadvise.

IDataObjectImpl Overview | Class Members

See Also FORMATETC and IAdviseSink in the Win32 SDK


IDataObjectImpl::DUnadvise

HRESULT DUnadvise( FORMATETC* pformatetc, DWORD advf, IAdviseSink* pAdvSink, DWORD* pdwConnection );

See IDataObject::DUnadvise in the Win32 SDK.

Remarks

Terminates a connection previously established through DAdvise.

IDataObjectImpl Overview | Class Members

See Also FORMATETC and IAdviseSink in the Win32 SDK


IDataObjectImpl::EnumDAdvise

HRESULT DAdvise( FORMATETC* pformatetc, DWORD advf, IAdviseSink* pAdvSink, DWORD* pdwConnection );

See IDataObject::EnumDAdvise in the Win32 SDK.

Remarks

Creates an enumerator to iterate through the current advisory connections.

IDataObjectImpl Overview | Class Members

See Also FORMATETC and IAdviseSink in the Win32 SDK


IDataObjectImpl::EnumFormatEtc

HRESULT EnumFormatEtc( DWORD dwDirection, IEnumFORMATETC** ppenumFormatEtc );

See IDataObject::EnumFormatEtc in the Win32 SDK.

Remarks

Returns E_NOTIMPL.

IDataObjectImpl Overview | Class Members

See Also IEnumFORMATETC in the Win32 SDK


IDataObjectImpl::FireDataChange

HRESULT FireDataChange( );

Return Value

A standard HRESULT value.

Remarks

Sends a change notification back to each advise sink that is currently being managed.

IDataObjectImpl Overview | Class Members


IDataObjectImpl::GetCanonicalFormatEtc

HRESULT GetCanonicalFormatEtc( FORMATETC* pformatetcIn, FORMATETC* pformatetcOut );

See IDataObject::GetCanonicalFormatEtc in the Win32 SDK.

Remarks

Returns E_NOTIMPL.

IDataObjectImpl Overview | Class Members

See Also FORMATETC in the Win32 SDK


IDataObjectImpl::GetData

HRESULT GetData( FORMATETC* pformatetcIn, STGMEDIUM* pmedium );

See IDataObject::GetData in the Win32 SDK.

Remarks

ATL's implementation of GetData requires the FORMATETC structure to specify a storage medium type of TYMED_MFPICT.

IDataObjectImpl Overview | Class Members

See Also IDataObjectImpl::GetDataHere, IDataObjectImpl::QueryGetData, IDataObjectImpl::SetData, FORMATETC, STGMEDIUM, and TYMED in the Win32 SDK


IDataObjectImpl::GetDataHere

HRESULT GetDataHere( FORMATETC* pformatetc, STGMEDIUM* pmedium );

See IDataObject::GetDataHere in the Win32 SDK.

Remarks

Returns E_NOTIMPL.

IDataObjectImpl Overview | Class Members

See Also IDataObjectImpl::GetData, IDataObjectImpl::QueryGetData, IDataObjectImpl::SetData, FORMATETC and STGMEDIUM in the Win32 SDK


IDataObjectImpl::QueryGetData

HRESULT QueryGetData( FORMATETC* pformatetc );

See IDataObject::QueryGetData in the Win32 SDK.

Remarks

Returns E_NOTIMPL.

IDataObjectImpl Overview | Class Members

See Also IDataObjectImpl::GetData, IDataObjectImpl::GetDataHere, IDataObjectImpl::SetData, FORMATETC in the Win32 SDK


IDataObjectImpl::SetData

HRESULT SetData( FORMATETC* pformatetc, STGMEDIUM* pmedium, BOOL fRelease );

See IDataObject::SetData in the Win32 SDK.

Remarks

Returns E_NOTIMPL.

IDataObjectImpl Overview | Class Members

See Also IDataObjectImpl::GetData, IDataObjectImpl::GetDataHere, IDataObjectImpl::QueryGetData, FORMATETC and STGMEDIUM in the Win32 SDK