devicesrv_plat/ddc_access_api/inc/ddc_access.h
branchRCL_3
changeset 21 ccb4f6b3db21
parent 0 4e1aa6a622a0
child 22 8cb079868133
--- a/devicesrv_plat/ddc_access_api/inc/ddc_access.h	Thu Aug 19 11:09:10 2010 +0300
+++ b/devicesrv_plat/ddc_access_api/inc/ddc_access.h	Tue Aug 31 16:29:05 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -11,9 +11,57 @@
 *
 * Contributors:
 *
-* Description:  This API provides access to the display driver.
+* Description: API for DDC (E-EDID and displayID) read from DVI/HDMI display
 *
 */
+/*
+
+
+
+
+
+
+
+            ddc_access.dll
+            ----------------
+
+            SW Include Document - C++
+
+
+
+
+
+
+
+
+Module name:    ddc_access.dll
+
+Filename:       ddc_access.h
+
+Working copy:   ddc_access
+
+*  Continuus version  :
+*   %version: 2 %,
+    %date_modified: Thu May 06 12:35:27 2010 %
+
+---------------------------------------------------------------------------*/
+/**
+
+  @mainpage
+  @section intro_sec Introduction
+
+  <p>This is adaptation component which hides hw-drivers from users.
+     Because this is adaptation API, and user is also adaptation, this
+     API is not binary compatible, only source compatible.</p>
+
+  <p>API for DDC (E-EDID and displayID) read from DVI/HDMI display.</p>
+
+  <p>@see EDDCv1_2.pdf/DisplayIDv1.pdf/EEDIDrAr2.pdf (or newer) for more details</p>
+
+*/
+/** @file
+
+*///=========================================================================
 
 
 #ifndef __DDC_ACCESS_H__
@@ -22,18 +70,23 @@
 
 //- Include Files  ----------------------------------------------------------
 
-#include <e32base.h>
+#ifndef __KERNEL_MODE__
+ #include <e32base.h>
+#else
+ #include <e32cmn.h>
+#endif //__KERNEL_MODE__
 
 //- Enumerations and consts -------------------------------------------------
 
 /** API version number:
+ 2:  __KERNEL_MODE__ definitions, capability ECapabilityReadDeviceData
  1:  First version */
 const TUint KDdcAccessVersion = 1;
 
-///One DDC segment size
+///One DDC segment size. See that EDID block size is just 128 bytes, so base-EDID read might contain one EDID extension
 const TUint KSizeOfSegment = 256;
 
-/** One data block array, See that EDID block size is just 128 bytes, so one read contains one EDID extension (if exists) */
+/** One data block array */
 typedef TUint8 TDataBlock[ KSizeOfSegment ];
 
 ///DDC port enumerations
@@ -69,6 +122,7 @@
 
 
 //- Class Definitions -------------------------------------------------------
+#ifndef __KERNEL_MODE__
 
 /**
 Adaptation API for VESA's E-DDC (Enhanced Display Data Channel) raw read
@@ -94,20 +148,19 @@
 
             DisplayID is "second generation" of EDID, and it is proposed to be used.
 
-            See the method reads one TDataBlock, and it size is double of one EDID block,
-            so the first EDID read might get base-EDID and first extension, if exists.
-            With variable size DisplayID, method reads anyway whole size of TDataBlock,
-            even DisplayID section is smaller.
+            The method reads one TDataBlock, and its size is double of one EDID block,
+            so the first EDID read might get base-EDID and first extension, if such exists.
+            With variable size DisplayID, method reads the whole size of TDataBlock anyway,
+            even if DisplayID section is smaller.
 
-            @param  aDdcPort            DDC port which to be read
-            @param  aBlockNumber        Datablock which to be read (parameter maps to segment-register 0x60)
+            @param  aDdcPort            DDC port which needs to be read
+            @param  aBlockNumber        Datablock which needs to be read (parameter maps to segment-register 0x60)
             @param  aDataBlock          Method fills this with read values. Ensure that this data exists all the time, be careful if local variable.
             @param  aCompletedWhenRead  Will be completed when ready, if no errors, then aDataBlock contains read values
             @return KErrNone if success */
         virtual TInt Read(TDdcPort aDdcPort, TUint aBlockNumber, TDataBlock& aDataBlock, TRequestStatus& aCompletedWhenRead) = 0;
 
-        /** Cancels all TRequestStatuses.
-            @return KErrNone if success */
+        /** Cancels all TRequestStatuses. */
         virtual void CancelAll() = 0;
 
     protected:
@@ -117,7 +170,7 @@
         virtual void ConstructL() = 0;
     };
 
-
+#endif //__KERNEL_MODE__
 //- Global Function Prototypes ----------------------------------------------