51 lines
1.6 KiB
C++
51 lines
1.6 KiB
C++
//--------------------------------------------------------------------
|
|
// Microsoft OLE DB Sample Provider
|
|
// (C) Copyright 1991 - 1999 Microsoft Corporation. All Rights Reserved.
|
|
//
|
|
// @doc
|
|
//
|
|
// @module ACCESSOR.H | CImpIAccessor object implementing the IAccessor interface.
|
|
//
|
|
//
|
|
#ifndef _ACCESSOR_H_
|
|
#define _ACCESSOR_H_
|
|
|
|
|
|
//----------------------------------------------------------------------------
|
|
// @class CImpIAccessor | Contained IAccessor class
|
|
//
|
|
class CImpIAccessor : public IAccessor //@base public | IAccessor
|
|
{
|
|
// Immediate user objects are friends
|
|
friend class CImpIAccessor;
|
|
friend class CRowset;
|
|
friend class CCommand;
|
|
|
|
private: //@access private
|
|
DEFINE_DEFAULT_IUNKNOWN_MEMBER_DATA(CBaseObj)
|
|
|
|
//@cmember array of accessor ptrs
|
|
LPEXTBUFFER m_pextbufferAccessor;
|
|
|
|
public: //@access public
|
|
DEFINE_DEFAULT_IUNKNOWN_CTOR_DTOR(CBaseObj, CImpIAccessor);
|
|
|
|
//@cmember Initialization Routine
|
|
STDMETHODIMP FInit(BOOL fUnderRowset);
|
|
|
|
DEFINE_DEFAULT_IUNKNOWN_ADDREF_RELEASE
|
|
|
|
//@cmember Increment Reference count on accessor
|
|
STDMETHODIMP AddRefAccessor(HACCESSOR hAccessor, DBREFCOUNT* pcRefCounts);
|
|
//@cmember CreateAccessor Method
|
|
STDMETHODIMP CreateAccessor(DBACCESSORFLAGS, DBCOUNTITEM, const DBBINDING rgBindings[], DBLENGTH, HACCESSOR*, DBBINDSTATUS rgStatus[]);
|
|
//@cmember GetBindings Method
|
|
STDMETHODIMP GetBindings(HACCESSOR, DBACCESSORFLAGS*, DBCOUNTITEM*, DBBINDING**);
|
|
//@cmember ReleaseAccessor Method
|
|
STDMETHODIMP ReleaseAccessor(HACCESSOR, DBREFCOUNT*);
|
|
//@cmember CopyAccessors Method
|
|
STDMETHODIMP CopyAccessors(LPEXTBUFFER pextbufferAccessor);
|
|
};
|
|
|
|
|
|
#endif _ACCESSOR_H_ |