Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(446)

Side by Side Diff: webrtc/p2p/quic/quicconnectionhelper.h

Issue 1648763002: Create QuicSession (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Improve unit tests Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 /*
2 * Copyright 2016 The WebRTC Project Authors. All rights reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
11 #ifndef WEBRTC_P2P_QUIC_QUICCONNECTIONHELPER_H_
12 #define WEBRTC_P2P_QUIC_QUICCONNECTIONHELPER_H_
13
14 #include "net/quic/crypto/quic_random.h"
15 #include "net/quic/quic_alarm.h"
16 #include "net/quic/quic_clock.h"
17 #include "net/quic/quic_connection.h"
18
19 #include "webrtc/base/thread.h"
20
21 namespace cricket {
22
23 // An alarm which will go off at a scheduled time, and execute the |OnAlarm|
24 // method of the delegate.
25 class QuicAlarm : public net::QuicAlarm, public rtc::MessageHandler {
26 public:
27 QuicAlarm(const net::QuicClock* clock,
28 rtc::Thread* thread,
Taylor Brandstetter 2016/02/06 00:22:44 Maybe name the Thread parameter something more des
29 QuicAlarm::Delegate* delegate);
30
31 ~QuicAlarm() override;
32
33 // rtc::MessageHandler override.
34 void OnMessage(rtc::Message* msg) override;
35
36 // Helper method to get the delay in ms for posting task.
37 int64 GetDelay() const;
38
39 protected:
40 // net::QuicAlarm overrides.
41 void SetImpl() override;
42 void CancelImpl() override;
43
44 private:
45 const net::QuicClock* clock_;
46 rtc::Thread* thread_;
47 };
48
49 // Helper methods for QuicConnection timing and random number generation.
50 class QuicConnectionHelper : public net::QuicConnectionHelperInterface {
51 public:
52 explicit QuicConnectionHelper(rtc::Thread* thread);
53 ~QuicConnectionHelper() override;
54
55 // QuicConnectionHelperInterface overrides.
56 const net::QuicClock* GetClock() const override;
57 net::QuicRandom* GetRandomGenerator() override;
58 QuicAlarm* CreateAlarm(net::QuicAlarm::Delegate* delegate) override;
59
60 private:
61 net::QuicClock clock_;
62 rtc::Thread* thread_;
63 };
64
65 } // namespace cricket
66
67 #endif // WEBRTC_P2P_QUIC_QUICCONNECTIONHELPER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698