summaryrefslogtreecommitdiffstats
path: root/libtransport/includes/hicn/transport/interfaces/socket_consumer.h
diff options
context:
space:
mode:
authorMauro Sardara <msardara@cisco.com>2020-05-14 20:21:02 +0200
committerMauro Sardara <msardara@cisco.com>2020-05-20 10:45:53 +0200
commit81fb39606b069fbece973995572fa7f90ea1950a (patch)
tree10c1534707c725eb654741e5b4d280a17ef0c0dc /libtransport/includes/hicn/transport/interfaces/socket_consumer.h
parent67b86555b33c641de14d3c1d0864e571370a71e6 (diff)
[HICN-613] Add io_service to ConsumerSocket constructor.
Change-Id: Ic1952388e1d2b1e7457c71ae8a959d97aa0cd2d6 Signed-off-by: Mauro Sardara <msardara@cisco.com>
Diffstat (limited to 'libtransport/includes/hicn/transport/interfaces/socket_consumer.h')
-rw-r--r--libtransport/includes/hicn/transport/interfaces/socket_consumer.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/libtransport/includes/hicn/transport/interfaces/socket_consumer.h b/libtransport/includes/hicn/transport/interfaces/socket_consumer.h
index 73cbb78b0..2447f9b5b 100644
--- a/libtransport/includes/hicn/transport/interfaces/socket_consumer.h
+++ b/libtransport/includes/hicn/transport/interfaces/socket_consumer.h
@@ -145,7 +145,7 @@ class ConsumerSocket {
* @param protocol - The transport protocol to use. So far the following
* transport are supported:
* - CBR: Constant bitrate
- * - Raaqm: Based on paper: Optimal multipath congestion control and request
+ * - RAAQM: Based on paper: Optimal multipath congestion control and request
* forwarding in information-centric networks: Protocol design and
* experimentation. G Carofiglio, M Gallo, L Muscariello. Computer Networks
* 110, 104-117
@@ -154,6 +154,25 @@ class ConsumerSocket {
explicit ConsumerSocket(int protocol);
/**
+ * @brief Create a new consumer socket, passing an io_service to it.
+ * Passing an io_service means that the caller must explicitely call
+ * io_service.run() for the consumer to start. Any call to consume won't be
+ * blocking. This can be used in case we want to share a single thread
+ * among multiple consumer sockets. The caller MUST ensure the provided
+ * io_service will outlive the ConsumerSocket.
+ *
+ * @param protocol - The transport protocol to use. So far the following
+ * transport are supported:
+ * - CBR: Constant bitrate
+ * - RAAQM: Based on paper: Optimal multipath congestion control and request
+ * forwarding in information-centric networks: Protocol design and
+ * experimentation. G Carofiglio, M Gallo, L Muscariello. Computer Networks
+ * 110, 104-117
+ * - RTC: Real time communication
+ */
+ explicit ConsumerSocket(int protocol, asio::io_service &io_service);
+
+ /**
* @brief Destroy the consumer socket.
*/
~ConsumerSocket();