![]() |
RenderMan
26.0
|
Access to Ri context. More...
#include <RixRiCtl.h>
Inherits RixInterface.
Public Types | |
enum | Type { k_Float, k_Integer, k_StringV, k_Color, k_Normal, k_Vector, k_Point, k_HPoint, k_MPoint, k_Matrix } |
Public Member Functions | |
virtual Ri * | GetRiCtx ()=0 |
Ri methods Return a pointer to Ri generator, or NULL of there is an error. More... | |
virtual void | Flush (RtString marker, RtBoolean synchronous, RtUString flushmode)=0 |
Ric (Ri Control) methods These should be used ether to control an external rendering session. More... | |
virtual int | GetProgress ()=0 |
Return the percentage done of the current render. More... | |
virtual int | SetWantsProgress (int wantsProgress)=0 |
Set whether the renderer should return progress messages Returns the previous value. More... | |
virtual void | ProcessCallbacks ()=0 |
Process outstanding callback requests (display, exception) More... | |
virtual void | Option (RtString name, RtPointer value)=0 |
Configure Ric. More... | |
virtual void | SetRifEditMode (RixRifEditMode m)=0 |
Set Rif behavior. More... | |
virtual void | RifInit (int argc, const char *argv[])=0 |
Configure Rifs. Would only work in main thread. More... | |
virtual void | InvalidateTexture (RtUString const name)=0 |
virtual int | GetVersion () const |
Get the version number of this interface. More... | |
PRMan methods | |
RenderMan startup and shutdown. Initiate a direct-linked prman session and intialize it with prman-standard command-line arguments. It is an error to invoke these methods in any other execution context. In order to support iterative rendering the renderer startup and shutdown is split into two phases:
The system-level functions are intended to be called once at application start/end. These can be nested, however secondary calls will simply increment a reference counter. The per-render functions are intended to be called once at render start/end and cannot be nested. PRManSystemBegin and PRManRenderBegin should be used instead of PRManBegin in DCCs that include both Hydra rendering and traditional rendering. PRManBegin is a convenience wrapper for PRManSystemBegin and PRManRenderEnd, likewise PRManEnd is a convenience wrapper for PRManRenderEnd and PRManSystemEnd. | |
virtual int | PRManBegin (int argc, char *argv[])=0 |
Initiate prman render session. More... | |
virtual int | PRManGo ()=0 |
RIB Render Invocation. More... | |
virtual int | PRManEnd ()=0 |
Terminate prman render session. More... | |
virtual int | PRManSystemBegin (int argc, const char *argv[])=0 |
Initialize RenderMan. More... | |
virtual int | PRManRenderBegin (int argc, const char *argv[])=0 |
Render-level initialization of RenderMan, called once per-render. More... | |
virtual int | PRManSystemEnd ()=0 |
System-level shutdown of RenderMan, called at prman termination. More... | |
virtual int | PRManRenderEnd ()=0 |
Render-level shut-down of RenderMan, called on render termination. More... | |
Protected Member Functions | |
RixRiCtl () | |
virtual | ~RixRiCtl () |
Protected Attributes | |
int | m_version |
Version number of this interface. More... | |
Access to Ri context.
The RixRiCtl interface provides access to the current thread's Ri context and is intended for use by procedural primitives as well as by applications that need to control a separate rendering or rerendering process using the Ric/Ri combination via libprman.so services. Standalone applications should prefer the RixRIB interface coupled with librix. When used in a procedural primitive context the usual Ri state constraints apply (i.e. don't call ri->Begin, ri->End, ri->WorldBegin, etc). When used to control separate rendering process the additional (Ric) interface methods may be used to syncronize state between applications.
|
inherited |
|
inlineprotected |
|
inlineprotectedvirtual |
|
pure virtual |
Ric (Ri Control) methods These should be used ether to control an external rendering session.
Or to signal direct rendering abort. Flush the renderer to the given stream marker.
|
pure virtual |
Return the percentage done of the current render.
If there is no current render underway, this returns 100 (done).
|
pure virtual |
Ri methods Return a pointer to Ri generator, or NULL of there is an error.
In direct-rendering situations these calls communicate directly with the renderer (albeit through the Rif layer). In external-render mode, these calls produce RIB which is written to stdin of the child prman process.
|
inlinevirtualinherited |
Get the version number of this interface.
Different interfaces might have different version numbers in a given release.
References RixInterface::m_version.
|
pure virtual |
|
pure virtual |
Configure Ric.
|
pure virtual |
Initiate prman render session.
This is a wrapper for PRManSystemBegin and PRManRenderBegin for use with single process renders (e.g. command line RIB renders). For DCC rendering see PRManSystemBegin and PRManRenderBegin.
argc | Command-line argc |
argv | Command-line argv |
|
pure virtual |
Terminate prman render session.
This is a wrapper for PRManSystemEnd and PRManRenderEnd for use with single process renders (command line RIB renders). For DCC rendering see PRManSystemBegin and PRManRenderBegin.
|
pure virtual |
RIB Render Invocation.
For use with single process renders, e.g. command line RIB renders. For DCC rendering see RixRileyManager or RixSGManager.
|
pure virtual |
Render-level initialization of RenderMan, called once per-render.
argc | Command-line argc |
argv | Command-line argv |
|
pure virtual |
Render-level shut-down of RenderMan, called on render termination.
|
pure virtual |
Initialize RenderMan.
System-level initialization of RenderMan, called once per render invocation. That invocation could be for a stand-alone render, a DCC render, or an hdPrman render.
argc | Command-line argc |
argv | Command-line argv |
|
pure virtual |
System-level shutdown of RenderMan, called at prman termination.
That termination could be after a stand-alone render, a DCC shutdown, or the end of an hdPrman render. For this reason the PRMan object is ref-counted and only torn down when there are no other references to the PRMan object in this process.
|
pure virtual |
Process outstanding callback requests (display, exception)
|
pure virtual |
Configure Rifs. Would only work in main thread.
|
pure virtual |
Set Rif behavior.
|
pure virtual |
Set whether the renderer should return progress messages Returns the previous value.
|
protectedinherited |
Version number of this interface.
Referenced by RixInterface::GetVersion().