14#ifndef OSG_GRAPHICSCOSTESTIMATOR
15#define OSG_GRAPHICSCOSTESTIMATOR
37 void set(
double cost0,
double dcost_di,
unsigned int min_input)
The core osg library provides the basic scene graph classes such as Nodes, State and Drawables,...
Definition AlphaFunc:19
std::pair< double, double > CostPair
Pair of double representing CPU and GPU times in seconds as first and second elements in std::pair.
Definition GraphicsCostEstimator:54
Definition GraphicsCostEstimator:31
void set(double cost0, double dcost_di, unsigned int min_input)
Definition GraphicsCostEstimator:37
double operator()(unsigned int input) const
Definition GraphicsCostEstimator:44
double _cost0
Definition GraphicsCostEstimator:48
unsigned int _min_input
Definition GraphicsCostEstimator:50
double _dcost_di
Definition GraphicsCostEstimator:49
ClampedLinearCostFunction1D(double cost0=0.0, double dcost_di=0.0, unsigned int min_input=0)
Definition GraphicsCostEstimator:32
double _displayListCompileConstant
Definition GraphicsCostEstimator:73
CostPair estimateCompileCost(const osg::Geometry *geometry) const
ClampedLinearCostFunction1D _primtiveSetCompileCost
Definition GraphicsCostEstimator:68
double _displayListCompileFactor
Definition GraphicsCostEstimator:74
CostPair estimateDrawCost(const osg::Geometry *geometry) const
void calibrate(osg::RenderInfo &renderInfo)
ClampedLinearCostFunction1D _arrayDrawCost
Definition GraphicsCostEstimator:70
ClampedLinearCostFunction1D _primtiveSetDrawCost
Definition GraphicsCostEstimator:71
ClampedLinearCostFunction1D _arrayCompileCost
Definition GraphicsCostEstimator:67
CostPair estimateDrawCost(const osg::Texture *texture) const
CostPair estimateCompileCost(const osg::Texture *texture) const
ClampedLinearCostFunction1D _compileCost
Definition GraphicsCostEstimator:87
void calibrate(osg::RenderInfo &renderInfo)
ClampedLinearCostFunction1D _drawCost
Definition GraphicsCostEstimator:88
ClampedLinearCostFunction1D _shaderCompileCost
Definition GraphicsCostEstimator:102
ClampedLinearCostFunction1D _drawCost
Definition GraphicsCostEstimator:104
ClampedLinearCostFunction1D _linkCost
Definition GraphicsCostEstimator:103
void calibrate(osg::RenderInfo &renderInfo)
CostPair estimateDrawCost(const osg::Program *program) const
CostPair estimateCompileCost(const osg::Program *program) const
CostPair estimateDrawCost(const osg::Node *node) const
CostPair estimateDrawCost(const osg::Texture *texture) const
Definition GraphicsCostEstimator:122
CostPair estimateDrawCost(const osg::Program *program) const
Definition GraphicsCostEstimator:125
osg::ref_ptr< GeometryCostEstimator > _geometryEstimator
Definition GraphicsCostEstimator:134
CostPair estimateCompileCost(const osg::Geometry *geometry) const
Definition GraphicsCostEstimator:118
CostPair estimateCompileCost(const osg::Program *program) const
Definition GraphicsCostEstimator:124
void calibrate(osg::RenderInfo &renderInfo)
calibrate the costs of various compile and draw operations
osg::ref_ptr< TextureCostEstimator > _textureEstimator
Definition GraphicsCostEstimator:135
osg::ref_ptr< ProgramCostEstimator > _programEstimator
Definition GraphicsCostEstimator:136
CostPair estimateDrawCost(const osg::Geometry *geometry) const
Definition GraphicsCostEstimator:119
virtual ~GraphicsCostEstimator()
CostPair estimateCompileCost(const osg::Texture *texture) const
Definition GraphicsCostEstimator:121
void setDefaults()
set defaults for computing the costs.
CostPair estimateCompileCost(const osg::Node *node) const
Base class for all internal nodes in the scene graph.
Definition Node:72
osg::Program is an application-level abstraction of an OpenGL glProgram.
Definition Program:52
Smart pointer for handling referenced counted objects.
Definition ref_ptr:32
Base class for providing reference counted objects.
Definition Referenced:44
Texture pure virtual base class that encapsulates OpenGL texture functionality common to the various ...
Definition Texture:422
#define OSG_EXPORT
Definition Export:39