15 #ifndef WINSTATSMONITOR_H
16 #define WINSTATSMONITOR_H
18 #include "pandatoolbase.h"
20 #include "winStatsGraph.h"
21 #include "pStatMonitor.h"
22 #include "pointerTo.h"
41 INLINE
MenuDef(
int thread_index,
int collector_index,
bool show_level);
42 INLINE
bool operator < (
const MenuDef &other)
const;
57 int server_major,
int server_minor);
60 virtual void new_data(
int thread_index,
int frame_number);
68 void open_strip_chart(
int thread_index,
int collector_index,
bool show_level);
83 void setup_options_menu();
84 void setup_speed_menu();
85 void setup_frame_rate_label();
86 static void register_window_class(HINSTANCE application);
88 static LONG WINAPI static_window_proc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam);
89 LONG window_proc(HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam);
90 void handle_menu_command(
int menu_id);
107 string _window_title;
109 double _scroll_speed;
112 static bool _window_class_registered;
113 static const char *
const _window_class_name;
118 #include "winStatsMonitor.I"
virtual string get_monitor_name()
Should be redefined to return a descriptive name for the type of PStatsMonitor this is...
The class that owns the main loop, waiting for client connections.
void set_time_units(int unit_mask)
Called when the user selects a new time units from the monitor pulldown menu, this should adjust the ...
const MenuDef & lookup_menu(int menu_id) const
Returns the MenuDef properties associated with the indicated menu ID.
virtual void new_thread(int thread_index)
Called whenever a new Thread definition is received from the client.
virtual void new_data(int thread_index, int frame_number)
Called as each frame's data is made available.
void open_strip_chart(int thread_index, int collector_index, bool show_level)
Opens a new strip chart showing the indicated data.
virtual void lost_connection()
Called whenever the connection to the client has been lost.
virtual bool has_idle()
Should be redefined to return true if you want to redefine idle() and expect it to be called...
void set_scroll_speed(double scroll_speed)
Called when the user selects a new scroll speed from the monitor pulldown menu, this should adjust th...
This is an abstract class that presents the interface to any number of different front-ends for the s...
This is just an abstract base class to provide a common pointer type for the various kinds of graphs ...
virtual void got_bad_version(int client_major, int client_minor, int server_major, int server_minor)
Like got_hello(), this is called when the "hello" message has been received from the client...
void set_pause(bool pause)
Called when the user selects a pause on or pause off option from the menu.
virtual void initialized()
Called after the monitor has been fully set up.
virtual void new_collector(int collector_index)
Called whenever a new Collector definition is received from the client.
This class represents a connection to a PStatsClient and manages the data exchange with the client...
virtual void idle()
If has_idle() returns true, this will be called periodically to allow the monitor to update its displ...
int get_menu_id(const MenuDef &menu_def)
Returns the menu ID that is reserved for the indicated MenuDef properties.
void open_piano_roll(int thread_index)
Opens a new piano roll showing the indicated data.
virtual void user_guide_bars_changed()
Called when the user guide bars have been changed.
HWND get_window() const
Returns the window handle to the monitor's window.
virtual void got_hello()
Called when the "hello" message has been received from the client.