Murata RF modules are designed to simplify wireless development and certification by minimizing the amount of RF expertise you need to wirelessly enable a wide range of applications.
Indication/SSIDRecordIndication.cpp@9:0ce800923eda, 2016-03-16 (annotated)
- Committer:
- yangcq88517
- Date:
- Wed Mar 16 15:04:46 2016 +0000
- Revision:
- 9:0ce800923eda
- Parent:
- 1:fd19bd683e90
bug fix
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
yangcq88517 | 0:8e83b9448758 | 1 | #include "SSIDRecordIndication.h" |
yangcq88517 | 0:8e83b9448758 | 2 | |
yangcq88517 | 0:8e83b9448758 | 3 | using namespace SmartLabMuRata; |
yangcq88517 | 0:8e83b9448758 | 4 | |
yangcq88517 | 0:8e83b9448758 | 5 | SSIDRecordIndication::SSIDRecordIndication(Payload * payload) |
yangcq88517 | 0:8e83b9448758 | 6 | : Payload(payload) |
yangcq88517 | 0:8e83b9448758 | 7 | {} |
yangcq88517 | 0:8e83b9448758 | 8 | |
yangcq88517 | 0:8e83b9448758 | 9 | int SSIDRecordIndication::GetNumberofRecords() |
yangcq88517 | 0:8e83b9448758 | 10 | { |
yangcq88517 | 0:8e83b9448758 | 11 | return GetData()[2]; |
yangcq88517 | 0:8e83b9448758 | 12 | } |
yangcq88517 | 0:8e83b9448758 | 13 | |
yangcq88517 | 9:0ce800923eda | 14 | void SSIDRecordIndication::GetRecords(WIFINetworkDetail * details) |
yangcq88517 | 0:8e83b9448758 | 15 | { |
yangcq88517 | 0:8e83b9448758 | 16 | int count = GetNumberofRecords(); |
yangcq88517 | 0:8e83b9448758 | 17 | |
yangcq88517 | 0:8e83b9448758 | 18 | if (count <= 0) |
yangcq88517 | 0:8e83b9448758 | 19 | return; |
yangcq88517 | 9:0ce800923eda | 20 | |
yangcq88517 | 0:8e83b9448758 | 21 | int index = 0; |
yangcq88517 | 0:8e83b9448758 | 22 | int _position = 3; |
yangcq88517 | 0:8e83b9448758 | 23 | |
yangcq88517 | 0:8e83b9448758 | 24 | const char * value = GetData(); |
yangcq88517 | 0:8e83b9448758 | 25 | |
yangcq88517 | 0:8e83b9448758 | 26 | while (index < count) { |
yangcq88517 | 9:0ce800923eda | 27 | |
yangcq88517 | 9:0ce800923eda | 28 | (details + index)->SetChannel(value[_position++]) |
yangcq88517 | 0:8e83b9448758 | 29 | ->SetRSSI(value[_position++]) |
yangcq88517 | 0:8e83b9448758 | 30 | ->SetSecurityMode((SecurityMode)value[_position++]) |
yangcq88517 | 0:8e83b9448758 | 31 | ->SetBSSID(value + _position) |
yangcq88517 | 0:8e83b9448758 | 32 | ->SetNetworkType((BSSType)value[_position += 6]) |
yangcq88517 | 0:8e83b9448758 | 33 | ->SetMaxDataRate(value[_position++]) |
yangcq88517 | 0:8e83b9448758 | 34 | ->SetSSID(value + (_position += 2)); |
yangcq88517 | 0:8e83b9448758 | 35 | |
yangcq88517 | 9:0ce800923eda | 36 | _position+= strlen((details + index)->GetSSID()) + 1; |
yangcq88517 | 9:0ce800923eda | 37 | |
yangcq88517 | 0:8e83b9448758 | 38 | index++; |
yangcq88517 | 0:8e83b9448758 | 39 | } |
yangcq88517 | 0:8e83b9448758 | 40 | } |