replace new/delete with sp

This commit is contained in:
4ertus2 2024-10-20 08:24:09 +03:00
parent e32731b60b
commit ab5be0b773
71 changed files with 271 additions and 387 deletions

View file

@ -84,10 +84,10 @@ public:
inline ~MinerPrivate()
{
delete timer;
timer.reset();
for (IBackend *backend : backends) {
delete backend;
for (auto& backend : backends) {
backend.reset();
}
# ifdef XMRIG_ALGO_RANDOMX
@ -98,7 +98,7 @@ public:
bool isEnabled(const Algorithm &algorithm) const
{
for (IBackend *backend : backends) {
for (auto& backend : backends) {
if (backend->isEnabled() && backend->isEnabled(algorithm)) {
return true;
}
@ -124,7 +124,7 @@ public:
Nonce::reset(job.index());
}
for (IBackend *backend : backends) {
for (auto& backend : backends) {
backend->setJob(job);
}
@ -175,7 +175,7 @@ public:
double t[3] = { 0.0 };
for (IBackend *backend : backends) {
for (auto& backend : backends) {
const Hashrate *hr = backend->hashrate();
if (!hr) {
continue;
@ -221,7 +221,7 @@ public:
reply.SetArray();
for (IBackend *backend : backends) {
for (auto& backend : backends) {
reply.PushBack(backend->toJSON(doc), allocator);
}
}
@ -364,9 +364,9 @@ public:
Controller *controller;
Job job;
mutable std::map<Algorithm::Id, double> maxHashrate;
std::vector<IBackend *> backends;
std::vector<std::shared_ptr<IBackend>> backends;
String userJobId;
Timer *timer = nullptr;
std::shared_ptr<Timer> timer;
uint64_t ticks = 0;
Taskbar m_taskbar;
@ -378,7 +378,7 @@ public:
xmrig::Miner::Miner(Controller *controller)
: d_ptr(new MinerPrivate(controller))
: d_ptr(std::make_shared<MinerPrivate>(controller))
{
const int priority = controller->config()->cpu().priority();
if (priority >= 0) {
@ -400,29 +400,23 @@ xmrig::Miner::Miner(Controller *controller)
controller->api()->addListener(this);
# endif
d_ptr->timer = new Timer(this);
d_ptr->timer = std::make_shared<Timer>(this);
d_ptr->backends.reserve(3);
d_ptr->backends.push_back(new CpuBackend(controller));
d_ptr->backends.emplace_back(std::make_shared<CpuBackend>(controller));
# ifdef XMRIG_FEATURE_OPENCL
d_ptr->backends.push_back(new OclBackend(controller));
d_ptr->backends.emplace_back(std::make_shared<OclBackend>(controller));
# endif
# ifdef XMRIG_FEATURE_CUDA
d_ptr->backends.push_back(new CudaBackend(controller));
d_ptr->backends.emplace_back(std::make_shared<CudaBackend>(controller));
# endif
d_ptr->rebuild();
}
xmrig::Miner::~Miner()
{
delete d_ptr;
}
bool xmrig::Miner::isEnabled() const
{
return d_ptr->enabled;
@ -441,7 +435,7 @@ const xmrig::Algorithms &xmrig::Miner::algorithms() const
}
const std::vector<xmrig::IBackend *> &xmrig::Miner::backends() const
const std::vector<std::shared_ptr<xmrig::IBackend>>& xmrig::Miner::backends() const
{
return d_ptr->backends;
}
@ -538,7 +532,7 @@ void xmrig::Miner::setEnabled(bool enabled)
void xmrig::Miner::setJob(const Job &job, bool donate)
{
for (IBackend *backend : d_ptr->backends) {
for (auto& backend : d_ptr->backends) {
backend->prepare(job);
}
@ -606,7 +600,7 @@ void xmrig::Miner::stop()
{
Nonce::stop();
for (IBackend *backend : d_ptr->backends) {
for (auto& backend : d_ptr->backends) {
backend->stop();
}
}
@ -622,7 +616,7 @@ void xmrig::Miner::onConfigChanged(Config *config, Config *previousConfig)
const Job job = this->job();
for (IBackend *backend : d_ptr->backends) {
for (auto& backend : d_ptr->backends) {
backend->setJob(job);
}
}
@ -636,7 +630,7 @@ void xmrig::Miner::onTimer(const Timer *)
bool stopMiner = false;
for (IBackend *backend : d_ptr->backends) {
for (auto& backend : d_ptr->backends) {
if (!backend->tick(d_ptr->ticks)) {
stopMiner = true;
}
@ -718,7 +712,7 @@ void xmrig::Miner::onRequest(IApiRequest &request)
}
}
for (IBackend *backend : d_ptr->backends) {
for (auto& backend : d_ptr->backends) {
backend->handleRequest(request);
}
}