Panda3D
Public Member Functions | Static Public Member Functions | List of all members
Pipeline Class Reference

This class manages a staged pipeline of data, for instance the render pipeline, so that each stage of the pipeline can simultaneously access different copies of the same data. More...

#include "pipeline.h"

Inheritance diagram for Pipeline:
Namable MemoryBase

Public Member Functions

 Pipeline (const std::string &name, int num_stages)
 
void cycle ()
 Flows all the pipeline data down to the next stage. More...
 
int get_num_stages () const
 Returns the number of stages required for the pipeline. More...
 
void set_min_stages (int min_stages)
 Ensures that at least the indicated number of stages are in the pipeline. More...
 
void set_num_stages (int num_stages)
 Specifies the number of stages required for the pipeline. More...
 
- Public Member Functions inherited from Namable
 Namable (const std::string &initial_name="")
 
void clear_name ()
 Resets the Namable's name to empty. More...
 
const std::string & get_name () const
 
bool has_name () const
 Returns true if the Namable has a nonempty name set, false if the name is empty. More...
 
void output (std::ostream &out) const
 Outputs the Namable. More...
 
void set_name (const std::string &name)
 

Static Public Member Functions

static Pipelineget_render_pipeline ()
 Returns a pointer to the global render pipeline. More...
 
- Static Public Member Functions inherited from Namable
static TypeHandle get_class_type ()
 
static void init_type ()
 

Additional Inherited Members

- Public Attributes inherited from Namable
 get_name
 
 set_name
 

Detailed Description

This class manages a staged pipeline of data, for instance the render pipeline, so that each stage of the pipeline can simultaneously access different copies of the same data.

It actually maintains a collection of PipelineCycler objects, and manages the turning of all of them at once.

There is one default Pipeline object, the render pipeline. Other specialty pipelines may be created as needed.

Definition at line 38 of file pipeline.h.

Member Function Documentation

◆ cycle()

void Pipeline::cycle ( )

Flows all the pipeline data down to the next stage.

Definition at line 87 of file pipeline.cxx.

◆ get_num_stages()

int Pipeline::get_num_stages ( ) const
inline

Returns the number of stages required for the pipeline.

Definition at line 37 of file pipeline.I.

Referenced by set_min_stages().

◆ get_render_pipeline()

Pipeline * Pipeline::get_render_pipeline ( )
inlinestatic

Returns a pointer to the global render pipeline.

Definition at line 18 of file pipeline.I.

Referenced by GraphicsEngine::GraphicsEngine().

◆ set_min_stages()

void Pipeline::set_min_stages ( int  min_stages)
inline

Ensures that at least the indicated number of stages are in the pipeline.

Definition at line 29 of file pipeline.I.

References get_num_stages(), and set_num_stages().

◆ set_num_stages()

void Pipeline::set_num_stages ( int  num_stages)

Specifies the number of stages required for the pipeline.

Definition at line 283 of file pipeline.cxx.

Referenced by set_min_stages().


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