55 PT(
Connection) rendezvous = open_TCP_server_rendezvous(port, 5);
57 if (rendezvous.is_null()) {
65 if (_next_udp_port == 0) {
66 _next_udp_port = port + 1;
84 while (!_lost_readers.empty()) {
86 _lost_readers.pop_back();
91 while (!_removed_readers.empty()) {
93 _removed_readers.pop_back();
99 Readers::const_iterator ri = _readers.begin();
100 while (ri != _readers.end()) {
103 Readers::const_iterator rnext = ri;
125 while (interrupt_flag ==
nullptr || !*interrupt_flag) {
136 _readers[connection] = reader;
144 Readers::iterator ri;
145 ri = _readers.find(connection);
146 if (ri == _readers.end() || (*ri).second != reader) {
147 nout <<
"Attempt to remove undefined reader.\n";
150 _removed_readers.push_back(reader);
161 if (_available_udp_ports.empty()) {
162 return _next_udp_port++;
164 int udp_port = _available_udp_ports.front();
165 _available_udp_ports.pop_front();
174 _available_udp_ports.push_back(port);
182 return _user_guide_bars.size();
190 nassertr(n >= 0 && n < (
int)_user_guide_bars.size(), 0.0f);
191 return _user_guide_bars[n];
199 nassertv(n >= 0 && n < (
int)_user_guide_bars.size());
200 _user_guide_bars[n] = height;
201 user_guide_bars_changed();
209 int n = (int)_user_guide_bars.size();
210 _user_guide_bars.push_back(height);
211 user_guide_bars_changed();
222 nassertv(n >= 0 && n < (
int)_user_guide_bars.size());
223 _user_guide_bars.erase(_user_guide_bars.begin() + n);
224 user_guide_bars_changed();
234 GuideBars::const_iterator gbi;
235 for (gbi = _user_guide_bars.begin();
236 gbi != _user_guide_bars.end();
238 double height = (*gbi);
239 if (height >= from_height && height <= to_height) {
240 return (
int)(gbi - _user_guide_bars.begin());
251 user_guide_bars_changed() {
252 Readers::iterator ri;
253 for (ri = _readers.begin(); ri != _readers.end(); ++ri) {
254 (*ri).second->get_monitor()->user_guide_bars_changed();
278 connection_reset(
const PT(
Connection) &connection,
bool okflag) {
280 close_connection(connection);
282 Readers::iterator ri;
283 ri = _readers.find(connection);
284 if (ri != _readers.end()) {
291 _lost_readers.push_back(reader);