windows-nt/Source/XPSP1/NT/admin/wmi/wbem/scripting/contvar.h
2020-09-26 16:20:57 +08:00

57 lines
1.1 KiB
C++

//***************************************************************************
//
// contvar.h
//
// Module: Client side of WBEMS marshalling.
//
// Purpose: Defines the CContextEnumVar object
//
// Copyright (c) 1998-1999 Microsoft Corporation
//
//***************************************************************************
#ifndef _CONTVAR_H_
#define _CONTVAR_H_
// This class implements the IEnumVARIANT interface
class CContextEnumVar : public IEnumVARIANT
{
private:
long m_cRef;
CSWbemNamedValueSet *m_pContext;
ULONG m_pos;
bool SeekCurrentPosition ();
public:
CContextEnumVar (CSWbemNamedValueSet *pContext, ULONG initialPos = 0);
~CContextEnumVar (void);
// Non-delegating object IUnknown
STDMETHODIMP QueryInterface(REFIID, LPVOID*);
STDMETHODIMP_(ULONG) AddRef(void);
STDMETHODIMP_(ULONG) Release(void);
// IEnumVARIANT
STDMETHODIMP Next(
unsigned long celt,
VARIANT FAR* rgvar,
unsigned long FAR* pceltFetched
);
STDMETHODIMP Skip(
unsigned long celt
);
STDMETHODIMP Reset();
STDMETHODIMP Clone(
IEnumVARIANT **ppenum
);
};
#endif