blob: 2438152b3f56908f84d1f34d55023c0e4cd7ad59 [file] [log] [blame]
Ed Tanous911ac312017-08-15 09:37:42 -07001#pragma once
Ed Tanousaa2e59c2018-04-12 12:17:20 -07002#include <iostream>
Ed Tanous1abe55e2018-09-05 08:30:59 -07003#include <sdbusplus/asio/connection.hpp>
Ed Tanousaa2e59c2018-04-12 12:17:20 -07004
Ed Tanous1abe55e2018-09-05 08:30:59 -07005namespace mapbox
6{
Ed Tanousaa2e59c2018-04-12 12:17:20 -07007template <typename T, typename... Types>
Ed Tanous1abe55e2018-09-05 08:30:59 -07008const T* getPtr(const mapbox::util::variant<Types...>& v)
9{
10 if (v.template is<std::remove_const_t<T>>())
11 {
12 return &v.template get_unchecked<std::remove_const_t<T>>();
13 }
14 else
15 {
16 return nullptr;
17 }
Ed Tanousaa2e59c2018-04-12 12:17:20 -070018}
Ed Tanous1abe55e2018-09-05 08:30:59 -070019} // namespace mapbox
Ed Tanous911ac312017-08-15 09:37:42 -070020
Ed Tanous1abe55e2018-09-05 08:30:59 -070021namespace crow
22{
23namespace connections
24{
Ed Tanous55c7b7a2018-05-22 15:27:24 -070025static std::shared_ptr<sdbusplus::asio::connection> systemBus;
Ed Tanous911ac312017-08-15 09:37:42 -070026
Ed Tanous1abe55e2018-09-05 08:30:59 -070027} // namespace connections
28} // namespace crow