diff options
author | Trygve Laugstøl <trygvis@inamo.no> | 2017-04-07 21:49:36 +0200 |
---|---|---|
committer | Trygve Laugstøl <trygvis@inamo.no> | 2017-04-07 21:49:36 +0200 |
commit | 4eba89add8db804c33e8692edf5b27c2d3a2e365 (patch) | |
tree | 5fba0a0fa4d6010d13f99215508212086a116063 /src/transmitter.cpp | |
parent | 36e59a1991f075e36e117a08321d5e4c4dc00eac (diff) | |
download | wifi-triangulator-4eba89add8db804c33e8692edf5b27c2d3a2e365.tar.gz wifi-triangulator-4eba89add8db804c33e8692edf5b27c2d3a2e365.tar.bz2 wifi-triangulator-4eba89add8db804c33e8692edf5b27c2d3a2e365.tar.xz wifi-triangulator-4eba89add8db804c33e8692edf5b27c2d3a2e365.zip |
o Making a better envelope format.
o Reading out the interface's channel.
Diffstat (limited to 'src/transmitter.cpp')
-rw-r--r-- | src/transmitter.cpp | 28 |
1 files changed, 5 insertions, 23 deletions
diff --git a/src/transmitter.cpp b/src/transmitter.cpp index 047d37d..42295bb 100644 --- a/src/transmitter.cpp +++ b/src/transmitter.cpp @@ -46,32 +46,14 @@ int main(int argc, char *argv[]) { addr = reinterpret_cast<struct sockaddr *>(&addr_si); addr_len = sizeof(addr_si); - int count = 0; - uint8_t buffer[1 << 16]; - while (!feof(stdin)) { - pb::envelope envelope; - - uint16_t size; - - cin >> size; - cin.read(reinterpret_cast<char *>(buffer), size); - - /* - bool ok = envelope.ParseFromArray(buffer, size); - if (!ok) { - cerr << "bad read" << endl; - continue; - } - */ - - if (sendto(s, buffer, size, 0, addr, addr_len) == -1) { + launch_reader([&](uint16_t size, const uint8_t* data) { + if (sendto(s, data, size, 0, addr, addr_len) == -1) { throw std::runtime_error("sendto failed"); } - cerr << "count=" << count++ << endl; - } - - cerr << "transmitter exiting" << endl; + return true; + }); + cerr << app_name << " exiting" << endl; google::protobuf::ShutdownProtobufLibrary(); |