Cortex  10.0.0-a4
Public Member Functions | Static Public Attributes | List of all members
IECore::Renderer::Procedural Class Referenceabstract

#include <Renderer.h>

+ Inheritance diagram for IECore::Renderer::Procedural:

Public Member Functions

 IE_CORE_DECLAREMEMBERPTR (Procedural)
 
virtual Imath::Box3f bound () const =0
 
virtual void render (Renderer *renderer) const =0
 
virtual MurmurHash hash () const =0
 
- Public Member Functions inherited from IECore::RefCounted
 IE_CORE_DECLAREMEMBERPTR (RefCounted)
 
void addRef () const
 Add a reference to the current object.
 
void removeRef () const
 Remove a reference from the current object.
 
RefCount refCount () const
 Returns the current reference count.
 

Static Public Attributes

static const Imath::Box3f noBound
 

Additional Inherited Members

- Public Types inherited from IECore::RefCounted
typedef size_t RefCount
 

Detailed Description

The Procedural class defines an interface via which the Renderer can ask for geometry to be generated in a deferred fashion, at a time which is convenient to it.

Member Function Documentation

virtual Imath::Box3f IECore::Renderer::Procedural::bound ( ) const
pure virtual

Returns a bounding box guaranteed to completely contain the geometry generated by the render() method.

Implemented in IECore::Renderer::ExternalProcedural.

virtual MurmurHash IECore::Renderer::Procedural::hash ( ) const
pure virtual

Implement this to return a hash for procedural level instancing. Procedurals with the same hash will be reused by renderers that support this feature. If computing a sensible hash is difficult or impossible, return IECore::MurmurHash() from this function and this feature will be disabled.

Implemented in IECore::Renderer::ExternalProcedural.

virtual void IECore::Renderer::Procedural::render ( Renderer renderer) const
pure virtual

Called when the renderer is ready to receive the procedural geometry. Any relevant methods of renderer may be called, but the geometry generated must be contained within the box returned by bound().

Implemented in IECore::Renderer::ExternalProcedural.

Member Data Documentation

const Imath::Box3f IECore::Renderer::Procedural::noBound
static

Sentinel value which may be returned by bound() implementations if a bound is not available, or computing one would be prohibitively expensive. Renderers should expand such procedurals unconditionally.


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