14#ifndef PSTATCLIENTIMPL_H
15#define PSTATCLIENTIMPL_H
51 PStatClientImpl(PStatClient *client);
54 INLINE
void set_client_name(
const std::string &name);
55 INLINE std::string get_client_name()
const;
56 INLINE
void set_max_rate(
double rate);
57 INLINE
double get_max_rate()
const;
59 INLINE
double get_real_time()
const;
61 INLINE
void client_main_tick();
62 bool client_connect(std::string hostname,
int port);
63 void client_disconnect();
64 INLINE
bool client_is_connected()
const;
66 INLINE
void client_resume_after_pause();
68 void new_frame(
int thread_index);
69 void add_frame(
int thread_index,
const PStatFrameData &frame_data);
72 void transmit_frame_data(
int thread_index,
int frame_number,
73 const PStatFrameData &frame_data);
75 void transmit_control_data();
82 std::string get_hostname();
84 void report_new_collectors();
85 void report_new_threads();
86 void handle_server_control_message(
const PStatServerControlMessage &message);
88 virtual void connection_reset(
const PT(Connection) &connection,
97 QueuedConnectionReader _reader;
98 ConnectionWriter _writer;
100 PT(Connection) _tcp_connection;
101 PT(Connection) _udp_connection;
103 int _collectors_reported;
104 int _threads_reported;
106 std::string _hostname;
107 std::string _client_name;
110 double _tcp_count_factor;
111 double _udp_count_factor;
112 unsigned int _tcp_count;
113 unsigned int _udp_count;
The primary interface to the low-level networking layer in this package.
Manages the communications to report statistics via a network connection to a remote PStatServer.
Defines the details about the Collectors: the name, the suggested color, etc.
A lightweight class that represents a single element that may be timed and/or counted via stats.
This kind of message is sent from the server to the client on the TCP socket to establish critical co...
A lightweight class that represents a single thread of execution to PStats.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.