14 #ifndef OSG_GRAPHICSCOSTESTIMATOR
15 #define OSG_GRAPHICSCOSTESTIMATOR
17 #include <osg/Referenced>
18 #include <osg/ref_ptr>
37 void set(
double cost0,
double dcost_di,
unsigned int min_input)
63 CostPair estimateCompileCost(
const osg::Geometry* geometry)
const;
64 CostPair estimateDrawCost(
const osg::Geometry* geometry)
const;
83 CostPair estimateCompileCost(
const osg::Texture* texture)
const;
84 CostPair estimateDrawCost(
const osg::Texture* texture)
const;
98 CostPair estimateCompileCost(
const osg::Program* program)
const;
99 CostPair estimateDrawCost(
const osg::Program* program)
const;
127 CostPair estimateCompileCost(
const osg::Node* node)
const;
128 CostPair estimateDrawCost(
const osg::Node* node)
const;
ClampedLinearCostFunction1D _arrayDrawCost
osg::ref_ptr< ProgramCostEstimator > _programEstimator
ClampedLinearCostFunction1D _arrayCompileCost
ClampedLinearCostFunction1D _drawCost
ClampedLinearCostFunction1D _shaderCompileCost
double _displayListCompileFactor
ClampedLinearCostFunction1D _drawCost
osg::ref_ptr< TextureCostEstimator > _textureEstimator
osg::ref_ptr< GeometryCostEstimator > _geometryEstimator
CostPair estimateCompileCost(const osg::Texture *texture) const
void set(double cost0, double dcost_di, unsigned int min_input)
ClampedLinearCostFunction1D(double cost0=0.0, double dcost_di=0.0, unsigned int min_input=0)
CostPair estimateDrawCost(const osg::Texture *texture) const
CostPair estimateCompileCost(const osg::Program *program) const
CostPair estimateDrawCost(const osg::Program *program) const
ClampedLinearCostFunction1D _linkCost
double operator()(unsigned int input) const
CostPair estimateDrawCost(const osg::Geometry *geometry) const
ClampedLinearCostFunction1D _primtiveSetCompileCost
std::pair< double, double > CostPair
CostPair estimateCompileCost(const osg::Geometry *geometry) const
double _displayListCompileConstant
ClampedLinearCostFunction1D _compileCost
ClampedLinearCostFunction1D _primtiveSetDrawCost