97 lines
1.8 KiB
C
97 lines
1.8 KiB
C
|
//
|
||
|
// cookie.h : Declaration of Cookie and related classes.
|
||
|
// Cory West
|
||
|
//
|
||
|
|
||
|
#ifndef __COOKIE_H_INCLUDED__
|
||
|
#define __COOKIE_H_INCLUDED__
|
||
|
|
||
|
//
|
||
|
// Instance handle of the DLL (initialized during
|
||
|
// Component::Initialize).
|
||
|
//
|
||
|
|
||
|
extern HINSTANCE g_hInstanceSave;
|
||
|
|
||
|
#include "nodetype.h"
|
||
|
#include "cache.h"
|
||
|
#include "stdcooki.h"
|
||
|
|
||
|
|
||
|
|
||
|
class Cookie:
|
||
|
|
||
|
public CCookie,
|
||
|
public CStoresMachineName,
|
||
|
public CBaseCookieBlock
|
||
|
|
||
|
{
|
||
|
|
||
|
public:
|
||
|
|
||
|
Cookie( SchmMgmtObjectType objecttype,
|
||
|
LPCTSTR lpcszMachineName = NULL )
|
||
|
: CStoresMachineName( lpcszMachineName ),
|
||
|
m_objecttype( objecttype ),
|
||
|
hResultId( 0 )
|
||
|
{ ; }
|
||
|
|
||
|
~Cookie() { ; }
|
||
|
|
||
|
//
|
||
|
// Returns < 0, 0 or > 0.
|
||
|
//
|
||
|
|
||
|
virtual HRESULT CompareSimilarCookies( CCookie* pOtherCookie,
|
||
|
int* pnResult );
|
||
|
|
||
|
//
|
||
|
// CBaseCookieBlock.
|
||
|
//
|
||
|
|
||
|
virtual CCookie* QueryBaseCookie(int i);
|
||
|
virtual int QueryNumCookies();
|
||
|
|
||
|
SchmMgmtObjectType m_objecttype;
|
||
|
Cookie *pParentCookie;
|
||
|
|
||
|
//
|
||
|
// If this is a result item, here's the handle to it.
|
||
|
//
|
||
|
|
||
|
HRESULTITEM hResultId;
|
||
|
inline void SetResultHandle( HRESULTITEM hri ) {
|
||
|
hResultId = hri;
|
||
|
};
|
||
|
|
||
|
//
|
||
|
// The name of the schema object that this
|
||
|
// cookie refers to. We have to refer to the
|
||
|
// cache object by name so that if the cache
|
||
|
// reloads, we won't be left holding a dangling
|
||
|
// pointer.
|
||
|
//
|
||
|
|
||
|
CString strSchemaObject;
|
||
|
|
||
|
//
|
||
|
// If this is an attribute of a class
|
||
|
// (pParentCookie->m_objecttype == SCHMMGMT_CLASS),
|
||
|
// these variables give us display info.
|
||
|
//
|
||
|
|
||
|
VARIANT_BOOL Mandatory;
|
||
|
BOOL System;
|
||
|
|
||
|
//
|
||
|
// If this is an attribute of a class, this is the
|
||
|
// name of the class that the attribute is a member
|
||
|
// of.
|
||
|
//
|
||
|
|
||
|
CString strSrcSchemaObject;
|
||
|
|
||
|
};
|
||
|
|
||
|
#endif
|