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.
60 lines
2.4 KiB
60 lines
2.4 KiB
//---------------------------------------------------------------------------
|
|
// RowsetSource.h : CVDRowsetSource header file
|
|
//
|
|
// Copyright (c) 1996 Microsoft Corporation, All Rights Reserved
|
|
// Developed by Sheridan Software Systems, Inc.
|
|
//---------------------------------------------------------------------------
|
|
|
|
|
|
#ifndef __CVDROWSETSOURCE__
|
|
#define __CVDROWSETSOURCE__
|
|
|
|
class CVDNotifyDBEventsConnPtCont;
|
|
|
|
class CVDRowsetSource : public CVDNotifier
|
|
{
|
|
protected:
|
|
// Construction/Destruction
|
|
CVDRowsetSource();
|
|
virtual ~CVDRowsetSource();
|
|
|
|
// Initialization
|
|
HRESULT Initialize(IRowset * pRowset);
|
|
|
|
public:
|
|
BOOL IsRowsetValid(){return (m_pRowset && !m_bool.fRowsetReleased);}
|
|
|
|
void SetRowsetReleasedFlag(){m_bool.fRowsetReleased = TRUE;}
|
|
|
|
IRowset * GetRowset() const {return m_pRowset;}
|
|
IAccessor * GetAccessor() const {return m_pAccessor;}
|
|
IRowsetLocate * GetRowsetLocate() const {return m_pRowsetLocate;}
|
|
IRowsetScroll * GetRowsetScroll() const {return m_pRowsetScroll;}
|
|
IRowsetChange * GetRowsetChange() const {return m_pRowsetChange;}
|
|
IRowsetUpdate * GetRowsetUpdate() const {return m_pRowsetUpdate;}
|
|
IRowsetFind * GetRowsetFind() const {return m_pRowsetFind;}
|
|
IRowsetInfo * GetRowsetInfo() const {return m_pRowsetInfo;}
|
|
IRowsetIdentity * GetRowsetIdentity() const {return m_pRowsetIdentity;}
|
|
|
|
protected:
|
|
// Data members
|
|
|
|
struct
|
|
{
|
|
WORD fInitialized : 1; // is rowset source initialized?
|
|
WORD fRowsetReleased : 1; // have we received a rowset release notification
|
|
} m_bool;
|
|
|
|
IRowset * m_pRowset; // [mandatory] interface IRowset
|
|
IAccessor * m_pAccessor; // [mandatory] interface IAccessor
|
|
IRowsetLocate * m_pRowsetLocate; // [mandatory] interface IRowsetLocate
|
|
IRowsetScroll * m_pRowsetScroll; // [optional] interface IRowsetScroll
|
|
IRowsetChange * m_pRowsetChange; // [optional] interface IRowsetChange
|
|
IRowsetUpdate * m_pRowsetUpdate; // [optional] interface IRowsetUpdate
|
|
IRowsetFind * m_pRowsetFind; // [optional] interface IRowsetFind
|
|
IRowsetInfo * m_pRowsetInfo; // [optional] interface IRowsetInfo
|
|
IRowsetIdentity * m_pRowsetIdentity;// [optional] interface IRowsetIdentity
|
|
};
|
|
|
|
|
|
#endif //__CVDROWSETSOURCE__
|