mirror of
https://github.com/oxen-io/lokinet.git
synced 2024-10-31 09:20:21 +00:00
7caa87862e
All #ifndef guards on headers have been removed, I think, in favor of #pragma once Headers are now included as `#include "filename"` if the included file resides in the same directory as the file including it, or any subdirectory therein. Otherwise they are included as `#include <project/top/dir/relative/path/filename>` The above does not include system/os headers.
31 lines
665 B
C++
31 lines
665 B
C++
#include "hive_context.hpp"
|
|
|
|
#include "hive_router.hpp"
|
|
|
|
namespace tooling
|
|
{
|
|
HiveContext::HiveContext(RouterHive* hive) : m_hive(hive)
|
|
{}
|
|
|
|
std::shared_ptr<llarp::AbstractRouter>
|
|
HiveContext::makeRouter(const llarp::EventLoop_ptr& loop)
|
|
{
|
|
return std::make_shared<HiveRouter>(loop, makeVPNPlatform(), m_hive);
|
|
}
|
|
|
|
HiveRouter*
|
|
HiveContext::getRouterAsHiveRouter()
|
|
{
|
|
if (not router)
|
|
return nullptr;
|
|
|
|
HiveRouter* hiveRouter = dynamic_cast<HiveRouter*>(router.get());
|
|
|
|
if (hiveRouter == nullptr)
|
|
throw std::runtime_error("HiveContext has a router not of type HiveRouter");
|
|
|
|
return hiveRouter;
|
|
}
|
|
|
|
} // namespace tooling
|