Share via


IVsAsyncEnumCallback.OnDataAvailable(UInt32, Int32, UInt32, UInt32) Method

Definition

Event fired when data is available without blocking.

public:
 int OnDataAvailable(System::UInt32 cElementsAvailable, int fIsComplete, System::UInt32 ulProgressCurrent, System::UInt32 ulProgressMax);
public:
 int OnDataAvailable(unsigned int cElementsAvailable, int fIsComplete, unsigned int ulProgressCurrent, unsigned int ulProgressMax);
int OnDataAvailable(unsigned int cElementsAvailable, int fIsComplete, unsigned int ulProgressCurrent, unsigned int ulProgressMax);
public int OnDataAvailable (uint cElementsAvailable, int fIsComplete, uint ulProgressCurrent, uint ulProgressMax);
abstract member OnDataAvailable : uint32 * int * uint32 * uint32 -> int
Public Function OnDataAvailable (cElementsAvailable As UInteger, fIsComplete As Integer, ulProgressCurrent As UInteger, ulProgressMax As UInteger) As Integer

Parameters

cElementsAvailable
UInt32

[in] Number of elements available to the consumer.

fIsComplete
Int32

[in] A Boolean parameter indicating completion (true) of the event.

ulProgressCurrent
UInt32

[in] Progress counter of elements served.

ulProgressMax
UInt32

[in] Maximum number of elements available.

Returns

If the method succeeds, it returns S_OK. If it fails, it returns an error code.

Remarks

The enumerator's behavior remains inherently synchronous, but as data is available without blocking OnDataAvailable() events are fired.

cElementsAvailable is always a delta. Pure progress information may be conveyed by the enumerator by passing 0 for cElementsAvailable and revised values for ulProgressCurrent and ulProgressMax.

COM Signature

From vsshell.idl:

HRESULT IVsAsyncEnumCallback::OnDataAvailable(  
   [in] ULONG cElementsAvailable,   
   [in] BOOL fIsComplete,   
   [in] ULONG ulProgressCurrent,   
   [in] ULONG ulProgressMax  
);  

Applies to