--- 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 ----------------------------------------------