58 lines
1.2 KiB
C
58 lines
1.2 KiB
C
|
//***************************************************************************
|
||
|
//
|
||
|
// methvar.h
|
||
|
//
|
||
|
// Module: Client side of WBEMS marshalling.
|
||
|
//
|
||
|
// Purpose: Defines the CMethodSetEnumVar object
|
||
|
//
|
||
|
// Copyright (c) 1998-1999 Microsoft Corporation
|
||
|
//
|
||
|
//***************************************************************************
|
||
|
|
||
|
|
||
|
#ifndef _METHVAR_H_
|
||
|
#define _METHVAR_H_
|
||
|
|
||
|
// This class implements the IEnumVARIANT interface
|
||
|
|
||
|
class CMethodSetEnumVar : public IEnumVARIANT
|
||
|
{
|
||
|
private:
|
||
|
long m_cRef;
|
||
|
CSWbemMethodSet *m_pMethodSet;
|
||
|
ULONG m_pos;
|
||
|
|
||
|
bool SeekCurrentPosition ();
|
||
|
|
||
|
public:
|
||
|
CMethodSetEnumVar (CSWbemMethodSet *pObject,
|
||
|
ULONG initialPos = 0);
|
||
|
~CMethodSetEnumVar (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
|