drm_hwcomposer: Add DrmEventListener worker

This patch adds a worker which listens to drm events. If the
drm event has a handler associated with it, the listener will
call the handler.

BUG=chrome-os-partner:41682
TEST=Tested on ryu with DP

Change-Id: I5d691d191425604766a00be3e72111095d025d06
Signed-off-by: Sean Paul <seanpaul@chromium.org>
diff --git a/drmresources.h b/drmresources.h
index 6716807..64e6b57 100644
--- a/drmresources.h
+++ b/drmresources.h
@@ -21,6 +21,7 @@
 #include "drmconnector.h"
 #include "drmcrtc.h"
 #include "drmencoder.h"
+#include "drmeventlistener.h"
 #include "drmplane.h"
 
 #include <stdint.h>
@@ -30,6 +31,7 @@
 class DrmResources {
  public:
   DrmResources();
+  ~DrmResources();
 
   int Init();
 
@@ -49,6 +51,7 @@
   DrmCrtc *GetCrtcForDisplay(int display) const;
   DrmPlane *GetPlane(uint32_t id) const;
   DrmCompositor *compositor();
+  DrmEventListener *event_listener();
 
   int GetPlaneProperty(const DrmPlane &plane, const char *prop_name,
                        DrmProperty *property);
@@ -79,6 +82,7 @@
   std::vector<std::unique_ptr<DrmCrtc>> crtcs_;
   std::vector<std::unique_ptr<DrmPlane>> planes_;
   DrmCompositor compositor_;
+  DrmEventListener event_listener_;
 };
 }