Remove need for friend function declarations in container_info_component
This commit is contained in:
parent
950952174a
commit
07f0f91f1d
5 changed files with 11 additions and 14 deletions
|
@ -150,12 +150,12 @@ void nano::election_scheduler::run ()
|
|||
}
|
||||
}
|
||||
|
||||
std::unique_ptr<nano::container_info_component> nano::collect_container_info (election_scheduler & election_scheduler, std::string const & name)
|
||||
std::unique_ptr<nano::container_info_component> nano::election_scheduler::collect_container_info (std::string const & name)
|
||||
{
|
||||
nano::unique_lock<nano::mutex> lock{ election_scheduler.mutex };
|
||||
nano::unique_lock<nano::mutex> lock{ mutex };
|
||||
|
||||
auto composite = std::make_unique<container_info_composite> (name);
|
||||
composite->add_component (std::make_unique<container_info_leaf> (container_info{ "manual_queue", election_scheduler.manual_queue.size (), sizeof (decltype (election_scheduler.manual_queue)::value_type) }));
|
||||
composite->add_component (collect_container_info (election_scheduler.priority, "priority"));
|
||||
composite->add_component (std::make_unique<container_info_leaf> (container_info{ "manual_queue", manual_queue.size (), sizeof (decltype (manual_queue)::value_type) }));
|
||||
composite->add_component (priority.collect_container_info ("priority"));
|
||||
return composite;
|
||||
}
|
|
@ -32,6 +32,7 @@ public:
|
|||
std::size_t size () const;
|
||||
bool empty () const;
|
||||
std::size_t priority_queue_size () const;
|
||||
std::unique_ptr<container_info_component> collect_container_info (std::string const &);
|
||||
|
||||
private:
|
||||
void run ();
|
||||
|
@ -46,8 +47,5 @@ private:
|
|||
nano::condition_variable condition;
|
||||
mutable nano::mutex mutex;
|
||||
std::thread thread;
|
||||
|
||||
friend std::unique_ptr<container_info_component> collect_container_info (election_scheduler &, std::string const &);
|
||||
};
|
||||
std::unique_ptr<container_info_component> collect_container_info (election_scheduler & election_scheduler, std::string const & name);
|
||||
}
|
||||
}
|
|
@ -555,7 +555,7 @@ std::unique_ptr<nano::container_info_component> nano::collect_container_info (no
|
|||
composite->add_component (collect_container_info (node.confirmation_height_processor, "confirmation_height_processor"));
|
||||
composite->add_component (collect_container_info (node.distributed_work, "distributed_work"));
|
||||
composite->add_component (collect_container_info (node.aggregator, "request_aggregator"));
|
||||
composite->add_component (collect_container_info (node.scheduler, "election_scheduler"));
|
||||
composite->add_component (node.scheduler.collect_container_info ("election_scheduler"));
|
||||
return composite;
|
||||
}
|
||||
|
||||
|
|
|
@ -130,12 +130,12 @@ void nano::prioritization::dump ()
|
|||
std::cerr << "current: " << std::to_string (*current) << '\n';
|
||||
}
|
||||
|
||||
std::unique_ptr<nano::container_info_component> nano::collect_container_info (prioritization & prioritization, std::string const & name)
|
||||
std::unique_ptr<nano::container_info_component> nano::prioritization::collect_container_info (std::string const & name)
|
||||
{
|
||||
auto composite = std::make_unique<container_info_composite> (name);
|
||||
for (auto i = 0; i < prioritization.buckets.size (); ++i)
|
||||
for (auto i = 0; i < buckets.size (); ++i)
|
||||
{
|
||||
auto const & bucket = prioritization.buckets[i];
|
||||
auto const & bucket = buckets[i];
|
||||
composite->add_component (std::make_unique<container_info_leaf> (container_info{ std::to_string (i), bucket.size (), 0 }));
|
||||
}
|
||||
return composite;
|
||||
|
|
|
@ -42,7 +42,6 @@ public:
|
|||
void dump ();
|
||||
uint64_t const maximum;
|
||||
|
||||
friend std::unique_ptr<container_info_component> collect_container_info (prioritization &, std::string const &);
|
||||
std::unique_ptr<nano::container_info_component> collect_container_info (std::string const &);
|
||||
};
|
||||
std::unique_ptr<container_info_component> collect_container_info (prioritization & prioritization, std::string const & name);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue