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

Side by Side Diff: components/proximity_auth/ble/bluetooth_low_energy_weave_packet_generator.h

Issue 2105103002: Minor change to the uWeave packet generator to allow inheritance (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef COMPONENTS_PROXIMITY_AUTH_BLE_BLUETOOTH_LOW_ENERGY_WEAVE_PACKET_GENERATO R_H_ 5 #ifndef COMPONENTS_PROXIMITY_AUTH_BLE_BLUETOOTH_LOW_ENERGY_WEAVE_PACKET_GENERATO R_H_
6 #define COMPONENTS_PROXIMITY_AUTH_BLE_BLUETOOTH_LOW_ENERGY_WEAVE_PACKET_GENERATO R_H_ 6 #define COMPONENTS_PROXIMITY_AUTH_BLE_BLUETOOTH_LOW_ENERGY_WEAVE_PACKET_GENERATO R_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 10
(...skipping 20 matching lines...) Expand all
31 31
32 protected: 32 protected:
33 // Exposed for testing. 33 // Exposed for testing.
34 virtual std::unique_ptr<BluetoothLowEnergyWeavePacketGenerator> 34 virtual std::unique_ptr<BluetoothLowEnergyWeavePacketGenerator>
35 BuildInstance(); 35 BuildInstance();
36 36
37 private: 37 private:
38 static Factory* factory_instance_; 38 static Factory* factory_instance_;
39 }; 39 };
40 40
41 Packet CreateConnectionRequest(); 41 virtual Packet CreateConnectionRequest();
42 Packet CreateConnectionResponse(); 42 virtual Packet CreateConnectionResponse();
43 Packet CreateConnectionClose(ReasonForClose reason_for_close); 43 virtual Packet CreateConnectionClose(ReasonForClose reason_for_close);
44 44
45 // Packet size must be greater than or equal to 20. 45 // Packet size must be greater than or equal to 20.
46 void SetMaxPacketSize(uint16_t size); 46 virtual void SetMaxPacketSize(uint16_t size);
47 47
48 // Will crash if message is empty. 48 // Will crash if message is empty.
49 std::vector<Packet> EncodeDataMessage(std::string message); 49 virtual std::vector<Packet> EncodeDataMessage(std::string message);
50 50
51 protected: 51 protected:
52 BluetoothLowEnergyWeavePacketGenerator(); 52 BluetoothLowEnergyWeavePacketGenerator();
53 53
54 private: 54 private:
55 void SetShortField(uint32_t byte_offset, uint16_t val, Packet* packet); 55 void SetShortField(uint32_t byte_offset, uint16_t val, Packet* packet);
56 void SetPacketTypeBit(PacketType val, Packet* packet); 56 void SetPacketTypeBit(PacketType val, Packet* packet);
57 void SetControlCommand(ControlCommand val, Packet* packet); 57 void SetControlCommand(ControlCommand val, Packet* packet);
58 void SetPacketCounter(Packet* packet); 58 void SetPacketCounter(Packet* packet);
59 void SetDataFirstBit(Packet* packet); 59 void SetDataFirstBit(Packet* packet);
60 void SetDataLastBit(Packet* packet); 60 void SetDataLastBit(Packet* packet);
61 61
62 // The default max packet length is 20 unless SetDataPacketLength() is called 62 // The default max packet length is 20 unless SetDataPacketLength() is called
63 // and specified otherwise. 63 // and specified otherwise.
64 uint16_t max_packet_size_; 64 uint16_t max_packet_size_;
65 65
66 // Counter for the number of packets sent, starting at 0. 66 // Counter for the number of packets sent, starting at 0.
67 uint8_t next_packet_counter_; 67 uint8_t next_packet_counter_;
68 }; 68 };
69 69
70 } // namespace weave 70 } // namespace weave
71 71
72 } // namespace proximity_auth 72 } // namespace proximity_auth
73 73
74 #endif // COMPONENTS_PROXIMITY_AUTH_BLE_BLUETOOTH_LOW_ENERGY_WEAVE_PACKET_GENER ATOR_H_ 74 #endif // COMPONENTS_PROXIMITY_AUTH_BLE_BLUETOOTH_LOW_ENERGY_WEAVE_PACKET_GENER ATOR_H_
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698