Skip to content

Commit 62fe7a6

Browse files
committed
Fix Linux
1 parent b0f056e commit 62fe7a6

File tree

1 file changed

+9
-9
lines changed
  • example/sample-projects/databus-shapes/client

1 file changed

+9
-9
lines changed

example/sample-projects/databus-shapes/client/main.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,10 @@
2121

2222
#if defined(_WIN32) || defined(_WIN64)
2323
#include "predef/transport/win32-udp/MulticastTransport.h"
24+
#include "predef/util/NetworkConnect.h"
2425
#else
2526
#include "predef/transport/linux-udp/MulticastTransport.h"
27+
#include "predef/util/NetworkConnect.h"
2628
#endif
2729

2830
using namespace ftxui;
@@ -57,22 +59,23 @@ int main() {
5759
std::lock_guard<std::mutex> lock(g_state.mutex);
5860
g_state.shapes[topic] = msg;
5961
}
60-
// Data-Driven Refresh: Trigger UI redraw immediately on data arrival
6162
if (g_state.screen) {
6263
g_state.screen->PostEvent(Event::Custom);
6364
}
6465
};
6566

66-
group->RegisterHandler<ShapeMsg>(SystemTopic::SquareId, serializer, [&](ShapeMsg m) { shapeHandler(SystemTopic::Square, m); });
67-
group->RegisterHandler<ShapeMsg>(SystemTopic::CircleId, serializer, [&](ShapeMsg m) { shapeHandler(SystemTopic::Circle, m); });
68-
group->RegisterHandler<ShapeMsg>(SystemTopic::TriangleId, serializer, [&](ShapeMsg m) { shapeHandler(SystemTopic::Triangle, m); });
67+
// Use explicit std::function to match RegisterHandler signature
68+
using HandlerFunc = std::function<void(ShapeMsg)>;
69+
group->RegisterHandler<ShapeMsg>(SystemTopic::SquareId, serializer, HandlerFunc([&](ShapeMsg m) { shapeHandler(SystemTopic::Square, m); }));
70+
group->RegisterHandler<ShapeMsg>(SystemTopic::CircleId, serializer, HandlerFunc([&](ShapeMsg m) { shapeHandler(SystemTopic::Circle, m); }));
71+
group->RegisterHandler<ShapeMsg>(SystemTopic::TriangleId, serializer, HandlerFunc([&](ShapeMsg m) { shapeHandler(SystemTopic::Triangle, m); }));
6972

7073
// 3. Network processing thread
7174
std::atomic<bool> running{true};
7275
std::thread netThread([&]() {
7376
while (running) {
7477
group->ProcessIncoming();
75-
std::this_thread::sleep_for(std::chrono::milliseconds(5)); // High-freq check
78+
std::this_thread::sleep_for(std::chrono::milliseconds(5));
7679
}
7780
});
7881

@@ -99,7 +102,7 @@ int main() {
99102
canvas(std::move(c)) | flex | border,
100103
hbox({
101104
filler(),
102-
text("Data-Driven Rendering (Sync with DataBus) | 'q' to quit") | dim,
105+
text("Data-Driven Rendering | 'q' to quit") | dim,
103106
filler()
104107
})
105108
});
@@ -123,6 +126,3 @@ int main() {
123126

124127
return 0;
125128
}
126-
127-
128-

0 commit comments

Comments
 (0)