Package com.ms.com.directX Previous
Previous
Microsoft Packages
Microsoft Packages
Index
Index
Next
Next

Class d3dExecuteBuffer

Applications use the methods of the d3dExecuteBuffer class to set up and control a Direct3D execute buffer.

public class d3dExecuteBuffer implements Id3dExecuteBuffer
{
  public void InternalSetObject(IUnknown lpdd);
  public IUnknown InternalGetObject();
  public void Initialize(d3dDevice dev, d3dExecuteBufferDesc desc, int[] buf);
  public void Lock(d3dExecuteBufferDesc desc, int[] buf);
  public void Unlock();
  public void FlushExBuffer(d3dExecuteBufferDesc desc, int[] buffer);
  public void SetExecuteData(d3dExecuteData data);
  public void GetExecuteData(d3dExecuteData data);
  public int GetOffset();
  public void Validate(int[] offset, Id3dValidateCallback fn, IUnknown args, int res);
}

The methods can be organized into the following groups:
Execute data GetExecuteData
SetExecuteData
Lock and unlock FlushExBuffer
Lock
Unlock
Miscellaneous GetOffset
Initialize
Validate

GetExecuteData

public void GetExecuteData(d3dExecuteData data);

Retrieves the execute data state of the d3dExecuteBuffer object. The execute data is used to describe the contents of the object.

Return Value:

No return value.

ParameterDescription
data The d3dExecuteData object that receives the current execute data state of the d3dExecuteBuffer object.

Remarks:

This call fails if the d3dExecuteBuffer object is locked.

See Also: SetExecuteData


FlushExBuffer

public void FlushExBuffer(d3dExecuteBufferDesc desc, int[] buffer);

Flushes command data from an the execute buffer back into system or video memory.

Return Value:

No return value.

ParameterDescription
desc The d3dExecuteBufferDesc object.
buf Array variable that contains the command data. This command data should have been previously retrieved using the Lock method.


Initialize

public void Initialize(d3dDevice dev, d3dExecuteBufferDesc desc, int[] buf);

Initializes the d3dExecuteBuffer object.

Return Value:

No return value.

ParameterDescription
dev The device representing the Direct3D object.
desc The d3dExecuteBufferDesc object that describes the d3dExecuteBuffer object to be created. The call fails if a buffer of at least the specified size cannot be created.
buf Array variable that contains the initial data for the execute buffer. The length of the array assigned to this variable must be set in the dwBufferSize field before calling the method.


Lock

public void Lock(d3dExecuteBufferDesc desc, int[] buf);

Obtains the command data from the execute buffer.

Return Value:

No return value.

ParameterDescription
desc The d3dExecuteBufferDesc object.
buf Array variable that receives the command data.

Remarks:

This method can obtain data from either system or video memory as specified by the dwCaps field of desc. The length of the array assigned to buf must be set in the dwBufferSize field before making the call. If the application changes the command data in buf, it must flush those changes back into system or video memory by using the FlushExBuffer method.

The application may use the Lock method to request that Direct3D move the data between system or video memory.

This method fails if the d3dExecuteBuffer object is locked—that is, if another thread is accessing the buffer, or if a Execute method that was issued on this buffer has not yet completed.

See Also: FlushExBuffer, Unlock


SetExecuteData

public void SetExecuteData(d3dExecuteData data);

Sets the execute data state of the d3dExecuteBuffer object. The execute data is used to describe the contents of the object.

Return Value:

No return value.

ParameterDescription
data A d3dExecuteData object that describes the execute buffer layout.

Remarks:

This call fails if the d3dExecuteBuffer object is locked.

See Also: GetExecuteData


Unlock

public void Unlock();

Releases access to the commands in the execute buffer. This must be done prior to calling the Execute method for the buffer.

Return Value:

No return value.

See Also: Lock


Validate

public void Validate(int[] offset, Id3dValidateCallback fn, IUnknown args, int res);

Not currently implemented.


GetOffset

public int GetOffset();

Not currently implemented.



Top© 1996 Microsoft Corporation. All rights reserved.