summaryrefslogtreecommitdiffstats
path: root/monitor/main.cpp
diff options
context:
space:
mode:
authorMatt Spinler <spinler@us.ibm.com>2017-05-11 10:07:55 -0500
committerPatrick Williams <patrick@stwcx.xyz>2017-05-11 19:58:23 +0000
commite824f985e7e32923d9f76e3ad5baf4909880739f (patch)
tree8a89c8fc65f2611101d04ae9c550d4beb707d69d /monitor/main.cpp
parent14321846e57f483f472590b1c5fe35891511312f (diff)
downloadphosphor-fan-presence-e824f985e7e32923d9f76e3ad5baf4909880739f.tar.gz
phosphor-fan-presence-e824f985e7e32923d9f76e3ad5baf4909880739f.zip
Use unique_ptr for sd_event object wrapper
Convert the sd_event object wrapper from a shared_ptr to a unique_ptr. Requires a new header file. Change-Id: I868a9e88ed93878c2e0bb12e58f8d3a604510da0 Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Diffstat (limited to 'monitor/main.cpp')
-rw-r--r--monitor/main.cpp12
1 files changed, 4 insertions, 8 deletions
diff --git a/monitor/main.cpp b/monitor/main.cpp
index 6d51fbb..c10efb9 100644
--- a/monitor/main.cpp
+++ b/monitor/main.cpp
@@ -15,6 +15,7 @@
*/
#include <phosphor-logging/log.hpp>
#include <sdbusplus/bus.hpp>
+#include "event.hpp"
#include "fan.hpp"
#include "fan_defs.hpp"
@@ -22,16 +23,11 @@ using namespace phosphor::fan::monitor;
using namespace phosphor::logging;
-void EventDeleter(sd_event* event)
-{
- sd_event_unref(event);
-}
-
int main()
{
auto bus = sdbusplus::bus::new_default();
sd_event* events = nullptr;
- std::vector<std::unique_ptr<Fan>> fans;
+ std::vector<Fan> fans;
auto r = sd_event_default(&events);
if (r < 0)
@@ -41,7 +37,7 @@ int main()
return -1;
}
- std::shared_ptr<sd_event> eventPtr{events, EventDeleter};
+ phosphor::fan::event::EventPtr eventPtr{events};
//Attach the event object to the bus object so we can
//handle both sd_events (for the timers) and dbus signals.
@@ -49,7 +45,7 @@ int main()
for (const auto& fanDef : fanDefinitions)
{
- fans.emplace_back(std::make_unique<Fan>(bus, eventPtr, fanDef));
+ fans.emplace_back(bus, eventPtr, fanDef);
}
r = sd_event_loop(eventPtr.get());
OpenPOWER on IntegriCloud