14#ifndef PSTATCLIENTIMPL_H
15#define PSTATCLIENTIMPL_H
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,
75 void transmit_control_data();
82 std::string get_hostname();
84 void report_new_collectors();
85 void report_new_threads();
88 virtual void connection_reset(
const PT(
Connection) &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.
This class handles threaded delivery of datagrams to various TCP or UDP sockets.
Represents a single TCP or UDP socket for input or output.
Represents a network address to which UDP packets may be sent or to which a TCP socket may be bound.
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.
Contains the raw timing and level data for a single frame.
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.
This flavor of ConnectionReader will read from its sockets and queue up all of the datagrams read for...
An interface to whatever real-time clock we might have available in the current environment.
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.