1
0
Fork 0
mirror of https://github.com/ton-blockchain/ton synced 2025-03-09 15:40:10 +00:00
ton/rldp2/LossSender.h

31 lines
508 B
C++

#pragma once
#include <vector>
namespace ton {
namespace rldp2 {
struct LossSender {
LossSender(double loss, double p);
int send_n(int n);
int send_n_exact(int n);
int send_n_approx_norm(int n);
int send_n_approx_nbd(int n);
int send_n_approx_pd(int n);
bool has_good_approx();
private:
double loss_;
double p_;
double S_;
double sigma_;
int n_{0};
std::vector<double> v_;
std::vector<int> res_;
int res_i_{0};
void step();
};
} // namespace rldp2
} // namespace ton