Panda3D

Classes | Public Types | Public Member Functions | List of all members
SceneGraphAnalyzer Class Reference

A handy class that can scrub over a scene graph and collect interesting statistics on it. More...

`#include "sceneGraphAnalyzer.h"`

## Public Types
enum | LodMode { LM_lowest , LM_highest , LM_all , LM_none }

## Public Member Functions
void | add_node (PandaNode *node)
| Adds a new node to the set of data for analysis. More...
void | clear ()
| Resets all of the data in the analyzer in preparation for a new run. More...
LodMode | get_lod_mode (LodMode lod_mode) const
| Returns the mode in which LODNodes are analyzed. More...
int | get_num_colors () const
int | get_num_geom_nodes () const
int | get_num_geom_vertex_datas () const
int | get_num_geom_vertex_formats () const
int | get_num_geoms () const
int | get_num_individual_tris () const
int | get_num_instances () const
int | get_num_lines () const
int | get_num_lod_nodes () const
int | get_num_long_normals () const
int | get_num_nodes () const
int | get_num_nodes_with_attribs () const
int | get_num_normals () const
int | get_num_patches () const
int | get_num_points () const
int | get_num_short_normals () const
int | get_num_texcoords () const
int | get_num_transforms () const
int | get_num_triangles_in_fans () const
int | get_num_triangles_in_strips () const
int | get_num_trifans () const
int | get_num_tris () const
int | get_num_tristrips () const
int | get_num_vertices () const
int | get_num_vertices_in_patches () const
size_t | get_texture_bytes () const
PN_stdfloat | get_total_normal_length () const
size_t | get_vertex_data_size () const
void | set_lod_mode (LodMode lod_mode)
| Specifies the mode in which LODNodes are analyzed. More...
void | write (std::ostream &out, int indent_level=0) const
| Describes all the data collected. More...

## Detailed Description

A handy class that can scrub over a scene graph and collect interesting statistics on it.

Definition at line 37 of file sceneGraphAnalyzer.h.

## Member Function Documentation

## ◆ add_node()

void SceneGraphAnalyzer::add_node | ( | PandaNode * | node | ) |

Adds a new node to the set of data for analysis.

Normally, this would only be called once, and passed the top of the scene graph, but it's possible to repeatedly pass in subgraphs to get an analysis of all the graphs together.

Definition at line 105 of file sceneGraphAnalyzer.cxx.

## ◆ clear()

void SceneGraphAnalyzer::clear | ( |  | ) |

Resets all of the data in the analyzer in preparation for a new run.

Definition at line 54 of file sceneGraphAnalyzer.cxx.

## ◆ get_lod_mode()

SceneGraphAnalyzer::LodMode SceneGraphAnalyzer::get_lod_mode | ( | LodMode | lod_mode | ) | const
| inline

Returns the mode in which LODNodes are analyzed.

Definition at line 25 of file sceneGraphAnalyzer.I.

## ◆ set_lod_mode()

void SceneGraphAnalyzer::set_lod_mode | ( | LodMode | lod_mode | ) |
| inline

Specifies the mode in which LODNodes are analyzed.

Definition at line 17 of file sceneGraphAnalyzer.I.

## ◆ write()

void SceneGraphAnalyzer::write | ( | std::ostream & | out,
|  | int | indent_level = `0`
| ) |  | const

Describes all the data collected.

Definition at line 113 of file sceneGraphAnalyzer.cxx.

References indent().

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

- panda/src/pgraphnodes/sceneGraphAnalyzer.h
- panda/src/pgraphnodes/sceneGraphAnalyzer.cxx
- panda/src/pgraphnodes/sceneGraphAnalyzer.I