14#ifndef CONNECTIONWRITER_H
15#define CONNECTIONWRITER_H
38 const std::string &thread_name = std::string());
41 void set_max_queue_size(
int max_size);
42 int get_max_queue_size()
const;
43 int get_current_queue_size()
const;
45 BLOCKING
bool send(
const Datagram &datagram,
49 BLOCKING
bool send(
const Datagram &datagram,
54 bool is_valid_for_udp(
const Datagram &datagram)
const;
57 bool is_immediate()
const;
58 int get_num_threads()
const;
60 void set_raw_mode(
bool mode);
61 bool get_raw_mode()
const;
63 void set_tcp_header_size(
int tcp_header_size);
64 int get_tcp_header_size()
const;
72 void thread_run(
int thread_index);
84 class WriterThread :
public Thread {
88 virtual void thread_main();
100 friend class WriterThread;
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.
A thread-safe, FIFO queue of NetDatagrams.
An ordered list of data elements, formatted in memory for transmission over a socket or writing to a ...
Represents a network address to which UDP packets may be sent or to which a TCP socket may be bound.
A specific kind of Datagram, especially for sending across or receiving from a network.
A thread; that is, a lightweight process.
This is our own Panda specialization on the default STL vector.
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.