18 #if !defined(CPPPARSER) && !defined(LINK_ALL_STATIC) && !defined(BUILDING_PANDA_PSTATCLIENT)
19 #error Buildsystem error: BUILDING_PANDA_PSTATCLIENT not defined
22 ConfigureDef(config_pstatclient);
23 NotifyCategoryDef(pstats,
"");
25 ConfigureFn(config_pstatclient) {
30 (
"pstats-name",
"Panda Stats");
33 (
"pstats-max-rate", 1000.0,
34 PRC_DESC(
"The maximum number of packets per second, per thread, to send "
35 "to the remote PStats server. A packet is defined as a single "
36 "UDP packet, or each 1024 bytes of a TCP message."));
39 (
"pstats-threaded-write",
true,
40 PRC_DESC(
"Set this true to write to the PStats channel in a sub-thread, if "
41 "threading is available. Can't think of any reason why you "
42 "wouldn't want this set true, unless you suspect something is "
43 "broken with the threaded network interfaces."));
46 (
"pstats-max-queue-size", 1,
47 PRC_DESC(
"If pstats-threaded-write is true, this specifies the maximum "
48 "number of packets (generally, frames of data) that may be queued "
49 "up for the thread to process. If this is large, the writer "
50 "thread may fall behind and the output of PStats will lag. Keep "
51 "this small to drop missed packets on the floor instead, and "
52 "ensure that the frame data does not grow stale."));
55 (
"pstats-tcp-ratio", 0.01,
56 PRC_DESC(
"This specifies the ratio of frame update messages that are eligible "
57 "for UDP that are sent via TCP instead. It does not count messages "
58 "that are too large for UDP and must be sent via TCP anyway. 1.0 "
59 "means all messages are sent TCP; 0.0 means all are sent UDP."));
62 (
"pstats-host",
"localhost");
66 (
"pstats-port", 5185);
69 (
"pstats-target-frame-rate", 30.0,
70 PRC_DESC(
"Specify the target frame rate to highlight on the PStats graph. "
71 "This frame rate is marked with a different-colored line; "
72 "otherwise, this setting has no effect."));
75 (
"pstats-gpu-timing",
false,
76 PRC_DESC(
"Set this true to query the graphics library for the actual time "
77 "that graphics operations take to execute on the video card. "
78 "Enabling this will harm performance, but this information can "
79 "be more useful than the regular Draw information in tracking "
80 "down bottlenecks, because the CPU-based Draw collectors only "
81 "measure how long it takes for the API call to complete, which "
82 "is not usually an accurate reflectino of how long the actual "
83 "operation takes on the video card."));
88 (
"pstats-scroll-mode",
true);
90 (
"pstats-history", 60.0);
92 (
"pstats-average-time", 3.0);
95 (
"pstats-mem-other",
true,
96 PRC_DESC(
"Set this true to collect memory categories smaller than 0.1% of "
97 "the total into a single \"Other\" category, or false to show "
98 "each nonzero memory category."));
108 static bool initialized =
false;
This is a convenience class to specialize ConfigVariable as a boolean type.
This is a convenience class to specialize ConfigVariable as a floating- point type.
This is a convenience class to specialize ConfigVariable as an integer type.
This is a convenience class to specialize ConfigVariable as a string type.
void init_libpstatclient()
Initializes the library.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.
PANDA 3D SOFTWARE Copyright (c) Carnegie Mellon University.