PFW: Fixed bug on BitParameterTypes

BZ: 44148

The save and restore operation would not work correctly when BitParameters
of a BitParameterBlock were used in more than a single Domain.
This patch aims to fixup this bug and introduces a new class: BitwiseAreaConfiguration.

Change-Id: I0aaccd57cf1cce33400f94a8879565171d283425
Orig-Change-Id: I7107f7db9f01cfff3c38cbac606a8c1e9bca8b5e
Signed-off-by: Frédéric Boisnard <fredericx.boisnard@intel.com>
Reviewed-on: http://android.intel.com:8080/58363
Reviewed-by: Mendi, EduardoX <eduardox.mendi@intel.com>
Tested-by: Mendi, EduardoX <eduardox.mendi@intel.com>
Reviewed-by: buildbot <buildbot@intel.com>
Tested-by: buildbot <buildbot@intel.com>
diff --git a/parameter/BitParameter.h b/parameter/BitParameter.h
index 3391e27..d22fa89 100644
--- a/parameter/BitParameter.h
+++ b/parameter/BitParameter.h
@@ -51,10 +51,17 @@
 
     // Integer Access
     virtual bool accessAsInteger(uint32_t& uiValue, bool bSet, CParameterAccessContext& parameterAccessContext) const;
-private:
+
+    // AreaConfiguration creation
+    virtual CAreaConfiguration* createAreaConfiguration(const CSyncerSet* pSyncerSet) const;
+
     // Size
     uint32_t getBelongingBlockSize() const;
 
+    // Access from area configuration
+    uint32_t merge(uint32_t uiOriginData, uint32_t uiNewData) const;
+private:
+
     // String Access
     virtual bool doSetValue(const string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;
     virtual void doGetValue(string& strValue, uint32_t uiOffset, CParameterAccessContext& parameterAccessContext) const;