28 std::cout <<
"[DEMO] Bell send (A->B) starting\n";
30 ns3::RngSeedManager::SetSeed(1);
31 ns3::RngSeedManager::SetRun(2);
40 ch->SetAttribute(
"Delay", TimeValue(NanoSeconds(10)));
42 auto [qA, qBremote] = A->CreateBellPair();
44 B->SetRecvCallback([&](std::shared_ptr<Qubit>) { std::cout <<
"[RECV][quantum][B]: yes\n"; });
47 Simulator::Schedule(NanoSeconds(1), [&]() {
48 bool ok = A->Send(qBremote, B->GetId());
49 std::cout <<
"[SEND][quantum] A->B: " << (ok ?
"ok" :
"failed") <<
"\n";
53 Simulator::Schedule(NanoSeconds(20), [&]() {
56 std::cout <<
"[VERIFY] Z-measurements: A=" << mA <<
" B=" << mB <<
" (correlated expected)\n";
59 Simulator::Stop(MilliSeconds(1));
62 std::cout <<
"[DONE] Bell send (A->B) finished\n";