overlay: Standardize init/close of internal components
Standardize the constructor/destructor init/close of internal
components.
Also internal components are allocated dynamically, with pointers
maintained in parent. This should facilitate gathering internals
from objects into arrays.
Change-Id: I8606fa436cf03fb75e43dc0f8341a05901751a11
diff --git a/liboverlay/overlayMdp.h b/liboverlay/overlayMdp.h
index 8074724..daaeaf2 100644
--- a/liboverlay/overlayMdp.h
+++ b/liboverlay/overlayMdp.h
@@ -36,11 +36,11 @@
class MdpCtrl {
public:
/* ctor reset */
- explicit MdpCtrl();
+ explicit MdpCtrl(const int& dpy);
/* dtor close */
~MdpCtrl();
/* init underlying device using fbnum for dpy */
- bool init(uint32_t dpy);
+ bool init(const int& dpy);
/* unset overlay, reset and close fd */
bool close();
/* reset and set ov id to -1 / MSMFB_NEW_REQUEST */
@@ -160,11 +160,11 @@
class MdpData {
public:
/* ctor reset data */
- explicit MdpData();
+ explicit MdpData(const int& dpy);
/* dtor close*/
~MdpData();
/* init FD */
- bool init(uint32_t dpy);
+ bool init(const int& dpy);
/* memset0 the underlying mdp object */
void reset();
/* close fd, and reset */
@@ -196,8 +196,9 @@
///// MdpCtrl //////
-inline MdpCtrl::MdpCtrl() {
+inline MdpCtrl::MdpCtrl(const int& dpy) {
reset();
+ init(dpy);
}
inline MdpCtrl::~MdpCtrl() {
@@ -346,7 +347,10 @@
/////// MdpData //////
-inline MdpData::MdpData() { reset(); }
+inline MdpData::MdpData(const int& dpy) {
+ reset();
+ init(dpy);
+}
inline MdpData::~MdpData() { close(); }