Panda3D
|
This is an abstract class that presents the interface for drawing a basic strip-chart, showing the relative value over an interval of time for several different collectors, differentiated by bands of color. More...
#include "pStatStripChart.h"
Classes | |
class | ColorData |
Public Types | |
enum | GuideBarStyle { GBS_normal, GBS_target, GBS_user } |
enum | GuideBarUnits { GBU_hz = 0x0001, GBU_ms = 0x0002, GBU_named = 0x0004, GBU_show_units = 0x0008 } |
Public Member Functions | |
PStatStripChart (PStatMonitor *monitor, PStatView &view, int thread_index, int collector_index, int xsize, int ysize) | |
int | add_user_guide_bar (float height) |
Creates a new user guide bar and returns its index number. | |
int | find_user_guide_bar (float from_height, float to_height) const |
Returns the index number of the first user guide bar found whose height is within the indicated range, or -1 if no user guide bars fall within the range. | |
bool | first_data () const |
Returns true if the chart has seen its first data appear on it, false if it is still a virgin chart. | |
bool | get_average_mode () const |
Returns the current state of the average_mode flag. | |
int | get_collector_index () const |
Returns the particular collector whose data this strip chart reflects. | |
int | get_collector_under_pixel (int xpoint, int ypoint) |
Return the collector index associated with the particular band of color at the indicated pixel location, or -1 if no band of color was at the pixel. | |
const GuideBar & | get_guide_bar (int n) const |
Returns the nth horizontal guide bar. | |
const string & | get_guide_bar_unit_name () const |
Returns the name of the units to be used for the guide bars if the units type is set to GBU_named | GBU_show_units. | |
int | get_guide_bar_units () const |
Returns the units that are displayed for the guide bar labels. | |
float | get_horizontal_scale () const |
Returns the amount of total time the width of the horizontal axis represents. | |
int | get_label_collector (int n) const |
Returns the collector index associated with the nth label. | |
RGBColorf | get_label_color (int n) const |
Returns the color associated with the nth label. | |
string | get_label_name (int n) const |
Returns the text associated with the nth label. | |
PStatMonitor * | get_monitor () const |
Returns the monitor associated with this chart. | |
int | get_num_guide_bars () const |
Returns the number of horizontal guide bars that should be drawn, based on the indicated target frame rate. | |
int | get_num_labels () const |
Returns the number of labels to be drawn for this chart. | |
int | get_num_user_guide_bars () const |
Returns the current number of user-defined guide bars. | |
bool | get_scroll_mode () const |
Returns the current state of the scroll_mode flag. | |
float | get_target_frame_rate () const |
Returns the indicated target frame rate in Hz. | |
string | get_title_text () |
Returns the text suitable for the title label on the top line. | |
GuideBar | get_user_guide_bar (int n) const |
Returns the nth user-defined guide bar. | |
float | get_vertical_scale () const |
Returns total value the height of the vertical axis represents. | |
PStatView & | get_view () const |
Returns the View this chart represents. | |
int | get_xsize () const |
Returns the width of the chart in pixels. | |
int | get_ysize () const |
Returns the height of the chart in pixels. | |
int | height_to_pixel (float value) const |
Converts a value (i.e. | |
bool | is_title_unknown () const |
Returns true if get_title_text() has never yet returned an answer, false if it has. | |
void | move_user_guide_bar (int n, float height) |
Adjusts the height of the nth user-defined guide bar. | |
void | new_data (int frame_number) |
Indicates that new data has become available. | |
float | pixel_to_height (int y) const |
Converts a vertical pixel offset to a value (a "height" in the strip chart). | |
float | pixel_to_timestamp (int x) const |
Converts a horizontal pixel offset to a timestamp. | |
void | remove_user_guide_bar (int n) |
Removes the user guide bar with the indicated index number. | |
void | set_auto_vertical_scale () |
Sets the vertical scale to make all the data visible. | |
void | set_average_mode (bool average_mode) |
Changes the average_mode flag. | |
void | set_collector_index (int collector_index) |
Changes the collector represented by this strip chart. | |
void | set_default_vertical_scale () |
Sets the vertical scale according to the suggested scale of the base collector, if any, or to center the target frame rate bar otherwise. | |
void | set_guide_bar_unit_name (const string &unit_name) |
Sets the name of the units to be used for the guide bars if the units type is set to GBU_named | GBU_show_units. | |
void | set_guide_bar_units (int unit_mask) |
Sets the units that are displayed for the guide bar labels. | |
void | set_horizontal_scale (float time_width) |
Changes the amount of time the width of the horizontal axis represents. | |
void | set_scroll_mode (bool scroll_mode) |
Changes the scroll_mode flag. | |
void | set_target_frame_rate (float frame_rate) |
Sets the target frame rate of the application in Hz. | |
void | set_vertical_scale (float value_height) |
Changes the value the height of the vertical axis represents. | |
int | timestamp_to_pixel (float time) const |
Converts a timestamp to a horizontal pixel offset. | |
void | update () |
Updates the chart with the latest data. | |
Static Public Member Functions | |
static string | format_number (float value) |
Returns a string representing the value nicely formatted for its range. | |
static string | format_number (float value, int guide_bar_units, const string &unit_name=string()) |
Returns a string representing the value nicely formatted for its range, including the units as indicated. | |
Protected Types | |
typedef pmap< int, FrameData > | Data |
typedef pvector< ColorData > | FrameData |
typedef pvector< GuideBar > | GuideBars |
typedef vector_int | Labels |
Protected Member Functions | |
virtual void | begin_draw (int from_x, int to_x) |
Should be overridden by the user class. | |
void | changed_size (int xsize, int ysize) |
To be called by the user class when the widget size has changed. | |
virtual void | clear_region () |
Should be overridden by the user class to wipe out the entire strip chart region. | |
void | compute_average_pixel_data (PStatStripChart::FrameData &result, int &then_i, int &now_i, float now) |
Fills the indicated FrameData structure with the color data for the indicated pixel, averaged over the past pstats_average_time seconds. | |
virtual void | copy_region (int start_x, int end_x, int dest_x) |
Should be overridden by the user class to copy a region of the chart from one part of the chart to another. | |
virtual void | draw_cursor (int x) |
This is similar to draw_slice(), except that it should draw the black vertical stripe that represents the current position when not in scrolling mode. | |
virtual void | draw_empty (int x, int w) |
This is similar to draw_slice(), except it should draw a vertical line of the background color to represent a portion of the chart that has no data. | |
virtual void | draw_slice (int x, int w, const FrameData &fdata) |
Should be overridden by the user class to draw a single vertical slice in the strip chart at the indicated pixel, with the data for the indicated frame. | |
virtual void | end_draw (int from_x, int to_x) |
Should be overridden by the user class. | |
void | force_redraw () |
To be called by the user class when the whole thing needs to be redrawn for some reason. | |
void | force_reset () |
To be called by the user class to cause the chart to reset to empty and start filling again. | |
float | get_average_net_value () const |
Computes the average value of the chart's collector over the past pstats_average_time number of seconds. | |
const FrameData & | get_frame_data (int frame_number) |
Returns the cached FrameData associated with the given frame number. | |
float | get_net_value (int frame_number) const |
Returns the net value of the chart's collector for the indicated frame number. | |
virtual void | idle () |
Should be overridden by the user class to perform any other updates might be necessary after the color bars have been redrawn. | |
bool | is_label_used (int collector_index) const |
Returns true if the indicated collector appears anywhere on the chart at the current time, false otherwise. | |
GuideBar | make_guide_bar (float value, GuideBarStyle style=GBS_normal) const |
Makes a guide bar for the indicated elapsed time or level units. | |
virtual void | normal_guide_bars () |
Calls update_guide_bars with parameters suitable to this kind of graph. | |
PT (PStatMonitor) _monitor | |
void | update_guide_bars (int num_bars, float scale) |
Resets the list of guide bars. | |
virtual void | update_labels () |
Resets the list of labels. | |
Static Protected Member Functions | |
static void | accumulate_frame_data (FrameData &fdata, const FrameData &additional, float weight) |
Adds the data from additional into the data from fdata, after applying the scale weight. | |
static void | scale_frame_data (FrameData &fdata, float factor) |
Applies the indicated scale to all collector values in data. | |
Protected Attributes | |
int | _guide_bar_units |
GuideBars | _guide_bars |
bool | _guide_bars_changed |
Labels | _labels |
bool | _labels_changed |
float | _target_frame_rate |
int | _thread_index |
string | _unit_name |
int | _xsize |
int | _ysize |
This is an abstract class that presents the interface for drawing a basic strip-chart, showing the relative value over an interval of time for several different collectors, differentiated by bands of color.
This class just manages all the strip-chart logic; the actual nuts and bolts of drawing pixels is left to a user-derived class.
Definition at line 42 of file pStatStripChart.h.
void PStatStripChart::accumulate_frame_data | ( | FrameData & | fdata, |
const FrameData & | additional, | ||
float | weight | ||
) | [static, protected] |
Adds the data from additional into the data from fdata, after applying the scale weight.
Definition at line 325 of file pStatStripChart.cxx.
Referenced by compute_average_pixel_data().
int PStatGraph::add_user_guide_bar | ( | float | height | ) | [inherited] |
Creates a new user guide bar and returns its index number.
Definition at line 148 of file pStatGraph.cxx.
Referenced by GtkStatsStripChart::handle_motion().
void PStatStripChart::begin_draw | ( | int | from_x, |
int | to_x | ||
) | [protected, virtual] |
Should be overridden by the user class.
This hook will be called before drawing any color bars in the strip chart; it gives the pixel range that's about to be redrawn.
Definition at line 719 of file pStatStripChart.cxx.
void PStatStripChart::changed_size | ( | int | xsize, |
int | ysize | ||
) | [protected] |
To be called by the user class when the widget size has changed.
This updates the chart's internal data and causes it to issue redraw commands to reflect the new size.
Definition at line 635 of file pStatStripChart.cxx.
Referenced by WinStatsStripChart::changed_graph_size(), and GtkStatsStripChart::changed_graph_size().
void PStatStripChart::clear_region | ( | ) | [protected, virtual] |
Should be overridden by the user class to wipe out the entire strip chart region.
Reimplemented in GtkStatsStripChart, and WinStatsStripChart.
Definition at line 696 of file pStatStripChart.cxx.
Referenced by force_reset().
void PStatStripChart::compute_average_pixel_data | ( | PStatStripChart::FrameData & | result, |
int & | then_i, | ||
int & | now_i, | ||
float | now | ||
) | [protected] |
Fills the indicated FrameData structure with the color data for the indicated pixel, averaged over the past pstats_average_time seconds.
now is the timestamp for which we are computing the data; then_i and now_i are the frame numbers that bound (now - pstats_average_time) and now. At function initialization time, these should be at or below the actual values; they will be incremented as needed by this function. This allows the function to be called repeatedly for successive pixels.
Definition at line 493 of file pStatStripChart.cxx.
References accumulate_frame_data(), PStatFrameData::get_end(), PStatThreadData::get_frame(), get_frame_data(), PStatThreadData::get_latest_frame_number(), PStatThreadData::get_oldest_time(), PStatFrameData::get_start(), PStatView::get_thread_data(), PStatThreadData::is_empty(), and scale_frame_data().
Referenced by get_collector_under_pixel().
void PStatStripChart::copy_region | ( | int | start_x, |
int | end_x, | ||
int | dest_x | ||
) | [protected, virtual] |
Should be overridden by the user class to copy a region of the chart from one part of the chart to another.
This is used to implement scrolling.
Reimplemented in GtkStatsStripChart, and WinStatsStripChart.
Definition at line 707 of file pStatStripChart.cxx.
void PStatStripChart::draw_cursor | ( | int | x | ) | [protected, virtual] |
This is similar to draw_slice(), except that it should draw the black vertical stripe that represents the current position when not in scrolling mode.
Reimplemented in GtkStatsStripChart, and WinStatsStripChart.
Definition at line 753 of file pStatStripChart.cxx.
void PStatStripChart::draw_empty | ( | int | x, |
int | w | ||
) | [protected, virtual] |
This is similar to draw_slice(), except it should draw a vertical line of the background color to represent a portion of the chart that has no data.
Reimplemented in GtkStatsStripChart, and WinStatsStripChart.
Definition at line 742 of file pStatStripChart.cxx.
void PStatStripChart::draw_slice | ( | int | x, |
int | w, | ||
const FrameData & | fdata | ||
) | [protected, virtual] |
Should be overridden by the user class to draw a single vertical slice in the strip chart at the indicated pixel, with the data for the indicated frame.
Reimplemented in GtkStatsStripChart, and WinStatsStripChart.
Definition at line 731 of file pStatStripChart.cxx.
void PStatStripChart::end_draw | ( | int | from_x, |
int | to_x | ||
) | [protected, virtual] |
Should be overridden by the user class.
This hook will be called after drawing a series of color bars in the strip chart; it gives the pixel range that was just redrawn.
Reimplemented in GtkStatsStripChart, and WinStatsStripChart.
Definition at line 765 of file pStatStripChart.cxx.
int PStatGraph::find_user_guide_bar | ( | float | from_height, |
float | to_height | ||
) | const [inherited] |
Returns the index number of the first user guide bar found whose height is within the indicated range, or -1 if no user guide bars fall within the range.
Definition at line 172 of file pStatGraph.cxx.
Referenced by WinStatsStripChart::consider_drag_start(), and GtkStatsStripChart::consider_drag_start().
bool PStatStripChart::first_data | ( | ) | const |
Returns true if the chart has seen its first data appear on it, false if it is still a virgin chart.
Definition at line 135 of file pStatStripChart.cxx.
void PStatStripChart::force_redraw | ( | ) | [protected] |
To be called by the user class when the whole thing needs to be redrawn for some reason.
Reimplemented in GtkStatsStripChart, and WinStatsStripChart.
Definition at line 670 of file pStatStripChart.cxx.
Referenced by set_average_mode(), set_collector_index(), and set_vertical_scale().
void PStatStripChart::force_reset | ( | ) | [protected] |
To be called by the user class to cause the chart to reset to empty and start filling again.
Definition at line 683 of file pStatStripChart.cxx.
References clear_region().
Referenced by set_horizontal_scale().
string PStatGraph::format_number | ( | float | value | ) | [static, inherited] |
Returns a string representing the value nicely formatted for its range.
Definition at line 184 of file pStatGraph.cxx.
Referenced by PStatGraph::format_number(), PStatGraph::make_guide_bar(), WinStatsStripChart::new_data(), and GtkStatsStripChart::new_data().
string PStatGraph::format_number | ( | float | value, |
int | guide_bar_units, | ||
const string & | unit_name = string() |
||
) | [static, inherited] |
Returns a string representing the value nicely formatted for its range, including the units as indicated.
Definition at line 210 of file pStatGraph.cxx.
References PStatGraph::format_number().
bool PStatStripChart::get_average_mode | ( | ) | const [inline] |
Returns the current state of the average_mode flag.
When true, the strip chart will average out the color values over pstats_average_time seconds, which hides spikes and makes the overall trends easier to read. When false, the strip chart shows the actual data as it is happening.
Definition at line 151 of file pStatStripChart.I.
float PStatStripChart::get_average_net_value | ( | ) | const [protected] |
Computes the average value of the chart's collector over the past pstats_average_time number of seconds.
Definition at line 571 of file pStatStripChart.cxx.
References PStatThreadData::get_elapsed_frames(), PStatFrameData::get_end(), PStatThreadData::get_frame(), PStatFrameData::get_net_time(), get_net_value(), PStatView::get_show_level(), PStatFrameData::get_start(), and PStatView::get_thread_data().
Referenced by WinStatsStripChart::new_data(), and GtkStatsStripChart::new_data().
int PStatStripChart::get_collector_index | ( | ) | const [inline] |
Returns the particular collector whose data this strip chart reflects.
Definition at line 33 of file pStatStripChart.I.
Referenced by WinStatsStripChart::clicked_label(), and GtkStatsStripChart::clicked_label().
int PStatStripChart::get_collector_under_pixel | ( | int | xpoint, |
int | ypoint | ||
) |
Return the collector index associated with the particular band of color at the indicated pixel location, or -1 if no band of color was at the pixel.
Definition at line 219 of file pStatStripChart.cxx.
References compute_average_pixel_data(), get_frame_data(), PStatThreadData::get_frame_number_at_time(), PStatView::get_thread_data(), PStatGraph::get_ysize(), height_to_pixel(), and pixel_to_timestamp().
Referenced by GtkStatsStripChart::handle_button_press(), and GtkStatsStripChart::handle_motion().
const PStatStripChart::FrameData & PStatStripChart::get_frame_data | ( | int | frame_number | ) | [protected] |
Returns the cached FrameData associated with the given frame number.
This describes the lengths of the color bands for a single vertical stripe in the chart.
Definition at line 437 of file pStatStripChart.cxx.
References PStatViewLevel::get_child(), PStatViewLevel::get_collector(), PStatThreadData::get_frame(), PStatView::get_level(), PStatViewLevel::get_net_value(), PStatViewLevel::get_num_children(), PStatView::get_thread_data(), PStatViewLevel::get_value_alone(), and PStatView::set_to_frame().
Referenced by compute_average_pixel_data(), and get_collector_under_pixel().
const PStatGraph::GuideBar & PStatGraph::get_guide_bar | ( | int | n | ) | const [inherited] |
Returns the nth horizontal guide bar.
This should be drawn as a horizontal line across the chart at the y pixel location determined by height_to_pixel(bar._height).
It is possible that this bar will be off the top of the chart.
Definition at line 101 of file pStatGraph.cxx.
Referenced by WinStatsStripChart::additional_window_paint(), WinStatsStripChart::end_draw(), and GtkStatsStripChart::end_draw().
const string & PStatGraph::get_guide_bar_unit_name | ( | ) | const [inline, inherited] |
Returns the name of the units to be used for the guide bars if the units type is set to GBU_named | GBU_show_units.
Definition at line 164 of file pStatGraph.I.
Referenced by WinStatsStripChart::new_data(), and GtkStatsStripChart::new_data().
int PStatGraph::get_guide_bar_units | ( | ) | const [inline, inherited] |
Returns the units that are displayed for the guide bar labels.
This may be a union of one or more members of the GuideBarUnits enum.
Definition at line 140 of file pStatGraph.I.
Referenced by WinStatsStripChart::new_data(), GtkStatsStripChart::new_data(), WinStatsStripChart::set_time_units(), and GtkStatsStripChart::set_time_units().
float PStatStripChart::get_horizontal_scale | ( | ) | const [inline] |
Returns the amount of total time the width of the horizontal axis represents.
Definition at line 62 of file pStatStripChart.I.
int PStatGraph::get_label_collector | ( | int | n | ) | const [inline, inherited] |
Returns the collector index associated with the nth label.
Definition at line 44 of file pStatGraph.I.
Referenced by WinStatsStripChart::update_labels(), and GtkStatsStripChart::update_labels().
RGBColorf PStatGraph::get_label_color | ( | int | n | ) | const [inline, inherited] |
Returns the color associated with the nth label.
Definition at line 66 of file pStatGraph.I.
string PStatGraph::get_label_name | ( | int | n | ) | const [inline, inherited] |
Returns the text associated with the nth label.
Definition at line 55 of file pStatGraph.I.
PStatMonitor * PStatGraph::get_monitor | ( | ) | const [inline, inherited] |
Returns the monitor associated with this chart.
Definition at line 22 of file pStatGraph.I.
Referenced by update(), and update_labels().
float PStatStripChart::get_net_value | ( | int | frame_number | ) | const [protected] |
Returns the net value of the chart's collector for the indicated frame number.
Definition at line 550 of file pStatStripChart.cxx.
Referenced by get_average_net_value(), and set_auto_vertical_scale().
int PStatGraph::get_num_guide_bars | ( | ) | const [inherited] |
Returns the number of horizontal guide bars that should be drawn, based on the indicated target frame rate.
Not all of these may be visible; some may be off the top of the chart because of the vertical scale.
Definition at line 86 of file pStatGraph.cxx.
Referenced by WinStatsStripChart::additional_window_paint(), WinStatsStripChart::end_draw(), and GtkStatsStripChart::end_draw().
int PStatGraph::get_num_labels | ( | ) | const [inline, inherited] |
Returns the number of labels to be drawn for this chart.
Definition at line 33 of file pStatGraph.I.
Referenced by WinStatsStripChart::update_labels(), and GtkStatsStripChart::update_labels().
int PStatGraph::get_num_user_guide_bars | ( | ) | const [inherited] |
Returns the current number of user-defined guide bars.
Not all of these may be visible.
Definition at line 116 of file pStatGraph.cxx.
Referenced by WinStatsStripChart::additional_graph_window_paint(), GtkStatsStripChart::additional_graph_window_paint(), and WinStatsStripChart::additional_window_paint().
bool PStatStripChart::get_scroll_mode | ( | ) | const [inline] |
Returns the current state of the scroll_mode flag.
When true, the strip chart will update itself by scrolling to the left; when false, the strip chart will wrap around at the right and restart at the left end without scrolling.
Definition at line 118 of file pStatStripChart.I.
float PStatGraph::get_target_frame_rate | ( | ) | const [inline, inherited] |
Returns the indicated target frame rate in Hz.
Definition at line 93 of file pStatGraph.I.
Referenced by set_default_vertical_scale().
string PStatStripChart::get_title_text | ( | ) |
Returns the text suitable for the title label on the top line.
Definition at line 276 of file pStatStripChart.cxx.
References PStatClientData::get_collector_def(), PStatClientData::get_collector_fullname(), PStatView::get_show_level(), PStatClientData::get_thread_name(), PStatClientData::has_collector(), and PStatClientData::has_thread().
Referenced by WinStatsStripChart::new_data(), and GtkStatsStripChart::new_data().
PStatGraph::GuideBar PStatGraph::get_user_guide_bar | ( | int | n | ) | const [inherited] |
Returns the nth user-defined guide bar.
Definition at line 126 of file pStatGraph.cxx.
References PStatGraph::make_guide_bar().
Referenced by WinStatsStripChart::additional_graph_window_paint(), GtkStatsStripChart::additional_graph_window_paint(), and WinStatsStripChart::additional_window_paint().
float PStatStripChart::get_vertical_scale | ( | ) | const [inline] |
Returns total value the height of the vertical axis represents.
Definition at line 88 of file pStatStripChart.I.
Referenced by WinStatsStripChart::additional_window_paint(), WinStatsStripChart::draw_slice(), and GtkStatsStripChart::draw_slice().
PStatView & PStatStripChart::get_view | ( | ) | const [inline] |
Returns the View this chart represents.
Definition at line 22 of file pStatStripChart.I.
Referenced by WinStatsStripChart::clicked_label(), and GtkStatsStripChart::clicked_label().
int PStatGraph::get_xsize | ( | ) | const [inline, inherited] |
Returns the width of the chart in pixels.
Definition at line 103 of file pStatGraph.I.
Referenced by WinStatsStripChart::additional_graph_window_paint(), GtkStatsStripChart::additional_graph_window_paint(), WinStatsStripChart::clear_region(), GtkStatsStripChart::clear_region(), WinStatsStripChart::consider_drag_start(), GtkStatsStripChart::consider_drag_start(), PStatPianoRoll::normal_guide_bars(), pixel_to_timestamp(), and timestamp_to_pixel().
int PStatGraph::get_ysize | ( | ) | const [inline, inherited] |
Returns the height of the chart in pixels.
Definition at line 113 of file pStatGraph.I.
Referenced by WinStatsStripChart::clear_region(), GtkStatsStripChart::clear_region(), WinStatsStripChart::consider_drag_start(), GtkStatsStripChart::consider_drag_start(), WinStatsStripChart::copy_region(), GtkStatsStripChart::copy_region(), WinStatsStripChart::draw_cursor(), GtkStatsStripChart::draw_cursor(), WinStatsStripChart::draw_empty(), GtkStatsStripChart::draw_empty(), WinStatsStripChart::draw_slice(), GtkStatsStripChart::draw_slice(), WinStatsStripChart::end_draw(), GtkStatsStripChart::end_draw(), get_collector_under_pixel(), GtkStatsStripChart::handle_button_release(), GtkStatsStripChart::handle_motion(), height_to_pixel(), and pixel_to_height().
int PStatStripChart::height_to_pixel | ( | float | value | ) | const [inline] |
Converts a value (i.e.
a "height" in the strip chart) to a vertical pixel offset.
Definition at line 182 of file pStatStripChart.I.
References PStatGraph::get_ysize().
Referenced by WinStatsStripChart::draw_slice(), GtkStatsStripChart::draw_slice(), and get_collector_under_pixel().
void PStatStripChart::idle | ( | ) | [protected, virtual] |
Should be overridden by the user class to perform any other updates might be necessary after the color bars have been redrawn.
For instance, it could check the state of _labels_changed, and redraw the labels if it is true.
Definition at line 778 of file pStatStripChart.cxx.
Referenced by update().
bool PStatStripChart::is_label_used | ( | int | collector_index | ) | const [inline, protected] |
Returns true if the indicated collector appears anywhere on the chart at the current time, false otherwise.
Definition at line 205 of file pStatStripChart.I.
Referenced by update_labels().
bool PStatStripChart::is_title_unknown | ( | ) | const |
Returns true if get_title_text() has never yet returned an answer, false if it has.
Definition at line 314 of file pStatStripChart.cxx.
Referenced by WinStatsStripChart::new_data(), and GtkStatsStripChart::new_data().
PStatGraph::GuideBar PStatGraph::make_guide_bar | ( | float | value, |
PStatGraph::GuideBarStyle | style = GBS_normal |
||
) | const [protected, inherited] |
Makes a guide bar for the indicated elapsed time or level units.
Definition at line 295 of file pStatGraph.cxx.
References PStatGraph::format_number().
Referenced by WinStatsStripChart::additional_window_paint(), PStatGraph::get_user_guide_bar(), and PStatGraph::update_guide_bars().
void PStatGraph::move_user_guide_bar | ( | int | n, |
float | height | ||
) | [inherited] |
Adjusts the height of the nth user-defined guide bar.
Definition at line 137 of file pStatGraph.cxx.
Referenced by GtkStatsStripChart::handle_button_release(), and GtkStatsStripChart::handle_motion().
void PStatStripChart::new_data | ( | int | frame_number | ) |
Indicates that new data has become available.
Definition at line 77 of file pStatStripChart.cxx.
void PStatStripChart::normal_guide_bars | ( | ) | [protected, virtual] |
Calls update_guide_bars with parameters suitable to this kind of graph.
Implements PStatGraph.
Definition at line 833 of file pStatStripChart.cxx.
References PStatGraph::update_guide_bars().
Referenced by set_vertical_scale().
float PStatStripChart::pixel_to_height | ( | int | y | ) | const [inline] |
Converts a vertical pixel offset to a value (a "height" in the strip chart).
Definition at line 193 of file pStatStripChart.I.
References PStatGraph::get_ysize().
Referenced by WinStatsStripChart::consider_drag_start(), GtkStatsStripChart::consider_drag_start(), GtkStatsStripChart::handle_button_press(), GtkStatsStripChart::handle_button_release(), and GtkStatsStripChart::handle_motion().
float PStatStripChart::pixel_to_timestamp | ( | int | x | ) | const [inline] |
Converts a horizontal pixel offset to a timestamp.
Definition at line 171 of file pStatStripChart.I.
References PStatGraph::get_xsize().
Referenced by get_collector_under_pixel(), and set_auto_vertical_scale().
void PStatGraph::remove_user_guide_bar | ( | int | n | ) | [inherited] |
Removes the user guide bar with the indicated index number.
All subsequent index numbers are adjusted down one.
Definition at line 160 of file pStatGraph.cxx.
Referenced by GtkStatsStripChart::handle_button_release().
void PStatStripChart::scale_frame_data | ( | FrameData & | fdata, |
float | factor | ||
) | [static, protected] |
Applies the indicated scale to all collector values in data.
Definition at line 420 of file pStatStripChart.cxx.
Referenced by compute_average_pixel_data().
void PStatStripChart::set_auto_vertical_scale | ( | ) |
Sets the vertical scale to make all the data visible.
Definition at line 185 of file pStatStripChart.cxx.
References PStatThreadData::get_frame_number_at_time(), get_net_value(), PStatView::get_thread_data(), PStatThreadData::has_frame(), pixel_to_timestamp(), and set_vertical_scale().
void PStatStripChart::set_average_mode | ( | bool | average_mode | ) | [inline] |
Changes the average_mode flag.
When true, the strip chart will average out the color values over pstats_average_time seconds, which hides spikes and makes the overall trends easier to read. When false, the strip chart shows the actual data as it is happening.
Definition at line 133 of file pStatStripChart.I.
References force_redraw().
Referenced by WinStatsStripChart::set_drag_mode(), GtkStatsStripChart::set_drag_mode(), and WinStatsStripChart::window_proc().
void PStatStripChart::set_collector_index | ( | int | collector_index | ) |
Changes the collector represented by this strip chart.
This may force a redraw.
Definition at line 146 of file pStatStripChart.cxx.
References force_redraw(), and update_labels().
Referenced by WinStatsStripChart::clicked_label(), and GtkStatsStripChart::clicked_label().
void PStatStripChart::set_default_vertical_scale | ( | ) |
Sets the vertical scale according to the suggested scale of the base collector, if any, or to center the target frame rate bar otherwise.
Definition at line 165 of file pStatStripChart.cxx.
References PStatClientData::get_collector_def(), PStatGraph::get_target_frame_rate(), PStatClientData::has_collector(), and set_vertical_scale().
void PStatGraph::set_guide_bar_unit_name | ( | const string & | unit_name | ) | [inline, inherited] |
Sets the name of the units to be used for the guide bars if the units type is set to GBU_named | GBU_show_units.
Definition at line 152 of file pStatGraph.I.
void PStatGraph::set_guide_bar_units | ( | int | guide_bar_units | ) | [inline, inherited] |
Sets the units that are displayed for the guide bar labels.
This may be a union of one or more members of the GuideBarUnits enum.
Definition at line 125 of file pStatGraph.I.
Referenced by WinStatsStripChart::set_time_units(), and GtkStatsStripChart::set_time_units().
void PStatStripChart::set_horizontal_scale | ( | float | time_width | ) | [inline] |
Changes the amount of time the width of the horizontal axis represents.
This may force a redraw.
Definition at line 44 of file pStatStripChart.I.
References force_reset().
Referenced by WinStatsStripChart::set_scroll_speed(), and GtkStatsStripChart::set_scroll_speed().
void PStatStripChart::set_scroll_mode | ( | bool | scroll_mode | ) | [inline] |
Changes the scroll_mode flag.
When true, the strip chart will update itself by scrolling to the left; when false, the strip chart will wrap around at the right and restart at the left end without scrolling.
Definition at line 101 of file pStatStripChart.I.
void PStatGraph::set_target_frame_rate | ( | float | frame_rate | ) | [inline, inherited] |
Sets the target frame rate of the application in Hz.
This only affects the choice of initial scale and the placement of guide bars.
Definition at line 79 of file pStatGraph.I.
void PStatStripChart::set_vertical_scale | ( | float | value_height | ) | [inline] |
Changes the value the height of the vertical axis represents.
This may force a redraw.
Reimplemented in GtkStatsStripChart, and WinStatsStripChart.
Definition at line 73 of file pStatStripChart.I.
References force_redraw(), and normal_guide_bars().
Referenced by set_auto_vertical_scale(), and set_default_vertical_scale().
int PStatStripChart::timestamp_to_pixel | ( | float | time | ) | const [inline] |
Converts a timestamp to a horizontal pixel offset.
Definition at line 161 of file pStatStripChart.I.
References PStatGraph::get_xsize().
void PStatStripChart::update | ( | ) |
Updates the chart with the latest data.
Definition at line 90 of file pStatStripChart.cxx.
References PStatMonitor::get_client_data(), PStatThreadData::get_frame(), PStatThreadData::get_latest_frame_number(), PStatView::get_level_index(), PStatGraph::get_monitor(), PStatClientData::get_num_collectors(), PStatClientData::get_num_threads(), PStatFrameData::get_start(), PStatView::get_thread_data(), idle(), PStatThreadData::is_empty(), and update_labels().
Referenced by WinStatsStripChart::new_data(), and GtkStatsStripChart::new_data().
void PStatGraph::update_guide_bars | ( | int | num_bars, |
float | scale | ||
) | [protected, inherited] |
Resets the list of guide bars.
Definition at line 257 of file pStatGraph.cxx.
References PStatGraph::make_guide_bar().
Referenced by normal_guide_bars(), and PStatPianoRoll::normal_guide_bars().
void PStatStripChart::update_labels | ( | ) | [protected, virtual] |
Resets the list of labels.
Reimplemented in GtkStatsStripChart, and WinStatsStripChart.
Definition at line 803 of file pStatStripChart.cxx.
References PStatViewLevel::get_child(), PStatViewLevel::get_collector(), PStatView::get_level(), PStatView::get_level_index(), PStatGraph::get_monitor(), PStatViewLevel::get_num_children(), and is_label_used().
Referenced by set_collector_index(), and update().