Share via


IAccessorImpl Class

Provides an implementation of the IAccessor interface.

template <
   class T, 
   class BindType = ATLBINDINGS, 
   class BindingVector = CAtlMap < 
      HACCESSOR hAccessor, 
      BindType* pBindingsStructure 
   > 
>
class ATL_NO_VTABLE IAccessorImpl : public IAccessorImplBase<BindType>

Parameters

  • T
    Your rowset or command object class.

  • BindType
    Storage unit for binding information. The default is the ATLBINDINGS structure (see atldb.h).

  • BindingVector
    Storage unit for column information. The default is CAtlMap where the key element is an HACCESSOR value and the value element is a pointer to a BindType structure.

Members

Methods

IAccessorImpl

The constructor.

Interface Methods

AddRefAccessor

Adds a reference count to an existing accessor.

CreateAccessor

Creates an accessor from a set of bindings.

GetBindings

Returns the bindings in an accessor.

ReleaseAccessor

Releases an accessor.

Remarks

This is mandatory on rowsets and commands. OLE DB requires providers to implement an HACCESSOR, which is a tag to an array of DBBINDING structures. HACCESSORs provided by IAccessorImpl are addresses of the BindType structures. By default, BindType is defined as an ATLBINDINGS in IAccessorImpl's template definition. BindType provides a mechanism used by IAccessorImpl to track the number of elements in its DBBINDING array as well as a reference count and accessor flags.

Requirements

Header: atldb.h

See Also

Concepts

OLE DB Provider Templates (C++)

OLE DB Provider Template Architecture