ilmClient / GenericCommunicator: updated layer and surface properties
authorTimo Lotterbach <timo.lotterbach@bmw-carit.de>
Fri, 15 Jun 2012 11:24:32 +0000 (04:24 -0700)
committerTimo Lotterbach <timo.lotterbach@bmw-carit.de>
Thu, 21 Jun 2012 07:15:22 +0000 (00:15 -0700)
layer properties now additionally contain
- layer type

surface properties now additionally contain
- pixelformat
- native surface handle
- draw counter
- update counter

LayerManagerClient/ilmClient/include/ilm_types.h
LayerManagerClient/ilmClient/src/generic_ilm_client.c
LayerManagerPlugins/Communicators/GenericCommunicator/src/GenericCommunicator.cpp

index dd0f69a..caef747 100644 (file)
@@ -158,19 +158,23 @@ typedef t_ilm_const_char* t_ilm_const_string;
 struct ilmSurfaceProperties
 {
     t_ilm_float opacity;         /*!< opacity value of the surface */
-    t_ilm_uint sourceX;        /*!< x source position value of the surface */
-    t_ilm_uint sourceY;        /*!< y source position value of the surface */
-    t_ilm_uint sourceWidth;        /*!< source width value of the surface */
-    t_ilm_uint sourceHeight;    /*!< source height value of the surface */
-    t_ilm_uint origSourceWidth;        /*!< original source width value of the surface */
-    t_ilm_uint origSourceHeight;    /*!< original source height value of the surface */
-    t_ilm_uint destX;        /*!< x destination position value of the surface */
-    t_ilm_uint destY;        /*!< y desitination position value of the surface */
+    t_ilm_uint sourceX;          /*!< x source position value of the surface */
+    t_ilm_uint sourceY;          /*!< y source position value of the surface */
+    t_ilm_uint sourceWidth;      /*!< source width value of the surface */
+    t_ilm_uint sourceHeight;     /*!< source height value of the surface */
+    t_ilm_uint origSourceWidth;  /*!< original source width value of the surface */
+    t_ilm_uint origSourceHeight; /*!< original source height value of the surface */
+    t_ilm_uint destX;            /*!< x destination position value of the surface */
+    t_ilm_uint destY;            /*!< y desitination position value of the surface */
     t_ilm_uint destWidth;        /*!< destination width value of the surface */
-    t_ilm_uint destHeight;        /*!< destination height value of the surface */
-    ilmOrientation orientation;    /*!< orientation value of the surface */
-    t_ilm_bool visibility;        /*!< visibility value of the surface */
-    t_ilm_uint frameCounter;      /*!< already rendered frames of surface */
+    t_ilm_uint destHeight;       /*!< destination height value of the surface */
+    ilmOrientation orientation;  /*!< orientation value of the surface */
+    t_ilm_bool visibility;       /*!< visibility value of the surface */
+    t_ilm_uint frameCounter;     /*!< already rendered frames of surface */
+    t_ilm_uint drawCounter;      /*!< content updates of surface */
+    t_ilm_uint updateCounter;    /*!< content updates of surface */
+    t_ilm_uint pixelformat;      /*!< pixel format of surface */
+    t_ilm_uint nativeSurface;    /*!< native surface handle of surface */
 };
 
 /**
@@ -180,18 +184,19 @@ struct ilmSurfaceProperties
 struct ilmLayerProperties
 {
     t_ilm_float opacity;         /*!< opacity value of the layer */
-    t_ilm_uint sourceX;        /*!< x source position value of the layer */
-    t_ilm_uint sourceY;        /*!< y source position value of the layer */
-    t_ilm_uint sourceWidth;        /*!< source width value of the layer */
-    t_ilm_uint sourceHeight;    /*!< source height value of the layer */
-    t_ilm_uint origSourceWidth;        /*!< original source width value of the layer */
-    t_ilm_uint origSourceHeight;    /*!< original source height value of the layer */    
-    t_ilm_uint destX;        /*!< x destination position value of the layer */
-    t_ilm_uint destY;        /*!< y desitination position value of the layer */
+    t_ilm_uint sourceX;          /*!< x source position value of the layer */
+    t_ilm_uint sourceY;          /*!< y source position value of the layer */
+    t_ilm_uint sourceWidth;      /*!< source width value of the layer */
+    t_ilm_uint sourceHeight;     /*!< source height value of the layer */
+    t_ilm_uint origSourceWidth;  /*!< original source width value of the layer */
+    t_ilm_uint origSourceHeight; /*!< original source height value of the layer */
+    t_ilm_uint destX;            /*!< x destination position value of the layer */
+    t_ilm_uint destY;            /*!< y desitination position value of the layer */
     t_ilm_uint destWidth;        /*!< destination width value of the layer */
-    t_ilm_uint destHeight;        /*!< destination height value of the layer */
-    ilmOrientation orientation;    /*!< orientation value of the layer */
-    t_ilm_bool visibility;        /*!< visibility value of the layer */
+    t_ilm_uint destHeight;       /*!< destination height value of the layer */
+    ilmOrientation orientation;  /*!< orientation value of the layer */
+    t_ilm_bool visibility;       /*!< visibility value of the layer */
+    t_ilm_uint type;             /*!< type of layer */
 };
 
 
index b500553..f13720c 100644 (file)
@@ -109,7 +109,11 @@ ilmErrorTypes ilm_getPropertiesOfSurface(t_ilm_uint surfaceID, struct ilmSurface
         && gIpcModule.getUint(&pSurfaceProperties->destHeight)
         && gIpcModule.getUint(&pSurfaceProperties->orientation)
         && gIpcModule.getBool(&pSurfaceProperties->visibility)
-        && gIpcModule.getUint(&pSurfaceProperties->frameCounter))
+        && gIpcModule.getUint(&pSurfaceProperties->frameCounter)
+        && gIpcModule.getUint(&pSurfaceProperties->drawCounter)
+        && gIpcModule.getUint(&pSurfaceProperties->updateCounter)
+        && gIpcModule.getUint(&pSurfaceProperties->pixelformat)
+        && gIpcModule.getUint(&pSurfaceProperties->nativeSurface))
     {
         returnValue = ILM_SUCCESS;
     }
@@ -140,7 +144,8 @@ ilmErrorTypes ilm_getPropertiesOfLayer(t_ilm_uint layerID, struct ilmLayerProper
         && gIpcModule.getUint(&pLayerProperties->destWidth)
         && gIpcModule.getUint(&pLayerProperties->destHeight)
         && gIpcModule.getUint(&pLayerProperties->orientation)
-        && gIpcModule.getBool(&pLayerProperties->visibility))
+        && gIpcModule.getBool(&pLayerProperties->visibility)
+        && gIpcModule.getUint(&pLayerProperties->type))
     {
         returnValue = ILM_SUCCESS;
     }
index cdb262f..bf40b92 100644 (file)
@@ -566,6 +566,10 @@ void GenericCommunicator::GetPropertiesOfSurface()
         m_ipcModule.appendUint(orientation);
         m_ipcModule.appendBool(surface->getVisibility());
         m_ipcModule.appendUint(surface->frameCounter);
+        m_ipcModule.appendUint(surface->drawCounter);
+        m_ipcModule.appendUint(surface->updateCounter);
+        m_ipcModule.appendUint(surface->getPixelFormat());
+        m_ipcModule.appendUint(surface->getNativeContent());
         m_ipcModule.sendMessage();
     }
     else
@@ -600,6 +604,7 @@ void GenericCommunicator::GetPropertiesOfLayer()
         m_ipcModule.appendUint(dest.height);
         m_ipcModule.appendUint(orientation);
         m_ipcModule.appendBool(layer->getVisibility());
+        m_ipcModule.appendUint(layer->getLayerType());
         m_ipcModule.sendMessage();
     }
     else