NvFlowContext


Data Structures

struct  NvFlowShaderLinearParams
 Parameters for shaders using the linear format (linear interpolation). More...
struct  NvFlowShaderPointParams
 Parameters for shaders using the point format (no linear interpolation). More...

Functions

bool NvFlowContextFlushRequestPop (NvFlowContext *context)
void NvFlowContextFlushRequestPush (NvFlowContext *context)
NvFlowContextAPI NvFlowContextGetContextType (NvFlowContext *context)
void NvFlowContextPop (NvFlowContext *context)
void NvFlowContextProcessFenceSignal (NvFlowContext *context)
void NvFlowContextProcessFenceWait (NvFlowContext *context)
void NvFlowContextPush (NvFlowContext *context)
NvFlowUint NvFlowDeferredRelease (float timeoutMS)
void NvFlowReleaseContext (NvFlowContext *context)
void NvFlowReleaseDepthStencilView (NvFlowDepthStencilView *view)
void NvFlowReleaseRenderTargetView (NvFlowRenderTargetView *view)
void NvFlowSetFreeFunc (void(*free)(void *ptr))
void NvFlowSetMallocFunc (void *(*malloc)(size_t size))

Function Documentation

bool NvFlowContextFlushRequestPop ( NvFlowContext *  context  ) 

Pop any pending requests for the Flow context to flush to queue, resets the request state

Parameters:
[in] context The Flow context to check for requests on.
Returns:
true if a flush is requested

void NvFlowContextFlushRequestPush ( NvFlowContext *  context  ) 

Push a request for the Flow context to request a flush to queue

Parameters:
[in] context The Flow context to make the request on.

NvFlowContextAPI NvFlowContextGetContextType ( NvFlowContext *  context  ) 

Get the API type of the current context

Parameters:
[in] context The Flow context to get the type of.
Returns:
context The Flow context to be released.

void NvFlowContextPop ( NvFlowContext *  context  ) 

Restores graphics/compute pipeline state pushed by NvFlowContextPush.

Parameters:
[in] context The Flow context to restore.

void NvFlowContextProcessFenceSignal ( NvFlowContext *  context  ) 

Process pending GPU fence signals, on deviceQueue associated with this context

Parameters:
[in] context The Flow context to submit fence signals on.

void NvFlowContextProcessFenceWait ( NvFlowContext *  context  ) 

Process pending GPU wait on fence, on deviceQueue associated with this context

Parameters:
[in] context The Flow context to submit fence waits on.

void NvFlowContextPush ( NvFlowContext *  context  ) 

Pushes graphics/compute pipeline state for later restoration by NvFlowContextPop.

Parameters:
[in] context The Flow context to push.

NvFlowUint NvFlowDeferredRelease ( float  timeoutMS  ) 

Should be called before DLL unload, to ensure complete cleanup.

Parameters:
[in] timeoutMS Wait timeout, in milliseconds
Returns:
The current number of active deferred release units.

void NvFlowReleaseContext ( NvFlowContext *  context  ) 

Releases a Flow context.

Parameters:
[in] context The Flow context to be released.

void NvFlowReleaseDepthStencilView ( NvFlowDepthStencilView *  view  ) 

Releases a Flow depth stencil view.

Parameters:
[in] view The Flow depth stencil view to be released.

void NvFlowReleaseRenderTargetView ( NvFlowRenderTargetView *  view  ) 

Releases a Flow render target view.

Parameters:
[in] view The Flow render target view to be released.

void NvFlowSetFreeFunc ( void(*)(void *ptr)  free  ) 

An optional callback to allow the application to control how Flow releases CPU memory.

Parameters:
[in] free The free function for Flow to use.

void NvFlowSetMallocFunc ( void *(*)(size_t size)  malloc  ) 

An optional callback to allow the application to control how Flow allocates CPU memory.

Parameters:
[in] malloc The allocation function for Flow to use.