Source code of Windows XP (NT5)
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
//+-------------------------------------------------------------------
//
// File: dataobj.hxx
//
// Contents: CDataObject declaration
//
// History: 24-Nov-92 DeanE Created
//
//---------------------------------------------------------------------
#ifndef __DATAOBJ_HXX__
#define __DATAOBJ_HXX__
//+-------------------------------------------------------------------
// Class: CDataObject
//
// Synopsis: Test class CDataObject
//
// Methods: QueryInterface IUnknown
// AddRef IUnknown
// Release IUnknown
// GetData IDataObject
// GetDataHere IDataObject
// QueryGetData IDataObject
// GetCanonicalFormatEtc IDataObject
// SetData IDataObject
// EnumFormatEtc IDataObject
// DAdvise IDataObject
// DUnadvise IDataObject
// EnumDAdvise IDataObject
//
// History: 24-Nov-92 DeanE Created
//--------------------------------------------------------------------
class FAR CDataObject : public IDataObject { public: // Constructor/Destructor
CDataObject(CTestEmbed *pteObject); ~CDataObject();
// IUnknown - Everyone inherits from this
STDMETHODIMP QueryInterface(REFIID iid, void FAR * FAR *ppv); STDMETHODIMP_(ULONG) AddRef (void); STDMETHODIMP_(ULONG) Release (void);
// IDataObject
STDMETHODIMP GetData (LPFORMATETC pformatetcIn, LPSTGMEDIUM pmedium); STDMETHODIMP GetDataHere (LPFORMATETC pformatetc, LPSTGMEDIUM pmedium); STDMETHODIMP QueryGetData (LPFORMATETC pformatetc); STDMETHODIMP GetCanonicalFormatEtc( LPFORMATETC pformatetc, LPFORMATETC pformatetcOut); STDMETHODIMP SetData (LPFORMATETC pformatetc, STGMEDIUM FAR *pmedium, BOOL fRelease); STDMETHODIMP EnumFormatEtc (DWORD dwDirection, LPENUMFORMATETC FAR *ppenmFormatEtc); STDMETHODIMP DAdvise (FORMATETC FAR *pFormatetc, DWORD advf, LPADVISESINK pAdvSink, DWORD FAR *pdwConnection); STDMETHODIMP DUnadvise (DWORD dwConnection); STDMETHODIMP EnumDAdvise (LPENUMSTATDATA FAR *ppenmAdvise);
private: ULONG _cRef; // Reference count
IDataAdviseHolder FAR *_pDAHolder; // Advise Holder
CTestEmbed *_pteObject; // Object we're associated with
};
#endif // __DATAOBJ_HXX__
|