RixRiCtl Class Reference

RixRiCtl Class Referenceabstract

#include <RixRiCtl.h>

Inheritance diagram for RixRiCtl:
RixInterface

Public Member Functions

virtual int PRManBegin (int argc, char *argv[])=0
 
virtual int PRManGo ()=0
 
virtual int PRManEnd ()=0
 
virtual Ri * GetRiCtx ()=0
 
virtual void Flush (RtString marker, RtBoolean synchronous, RtToken flushmode)=0
 Flush the renderer to the given stream marker. More...
 
virtual RtInt GetProgress ()=0
 
virtual void ProcessCallbacks ()=0
 Process outstanding callback requests (display, exception)
 
virtual void Option (RtString name, RtPointer value)=0
 Configure Ric.
 
- Public Member Functions inherited from RixInterface
virtual int GetVersion () const
 

Additional Inherited Members

- Protected Member Functions inherited from RixInterface
 RixInterface (int version)
 Interfaces should not be constructed by users.
 
virtual ~RixInterface ()
 Interfaces should not be deleted by users.
 
- Protected Attributes inherited from RixInterface
int m_version
 Version number of this interface.
 

Detailed Description

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.

Ri *ri = riInterface->GetRi();
if(ri)
ri->SphereV(1, -1, 1, 360, 0, NULL, NULL);

Member Function Documentation

virtual void RixRiCtl::Flush ( RtString  marker,
RtBoolean  synchronous,
RtToken  flushmode 
)
pure virtual

Flush the renderer to the given stream marker.

Ric (Ri Control) methods --------------------------------—— These should be used ether to control an external rendering session. Or to signal direct rendering abort.

virtual RtInt RixRiCtl::GetProgress ( )
pure virtual

Return the percentage done of the current render. If there is no current render underway, this returns 100 (done).

virtual Ri* RixRiCtl::GetRiCtx ( )
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.

virtual int RixRiCtl::PRManBegin ( int  argc,
char *  argv[] 
)
pure virtual

PRMan methods ---------------------------------------------— These entrypoints are useful to initiate a direct-linked prman session and intialized it with prman-standard commandline arguments. It is an error to invoke these methods in any other execution context.


The documentation for this class was generated from the following file: