Revision: 18268
http://sourceforge.net/p/edk2/code/18268
Author: lgao4
Date: 2015-08-24 05:00:32 +0000 (Mon, 24 Aug 2015)
Log Message:
-----------
MdePkg: Add four PcdGetSize() API in PcdLib
Add below four PcdGetSize() API in PcdLib header file. They can be used
to get the size of PCD value.
FixedPcdGetSize()
PatchPcdGetSize()
PcdGetSize()
PcdGetExSize()
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Liming Gao <[email protected]>
Reviewed-by: Star Zeng <[email protected]>
Modified Paths:
--------------
trunk/edk2/MdePkg/Include/Library/PcdLib.h
Modified: trunk/edk2/MdePkg/Include/Library/PcdLib.h
===================================================================
--- trunk/edk2/MdePkg/Include/Library/PcdLib.h 2015-08-24 05:00:05 UTC (rev
18267)
+++ trunk/edk2/MdePkg/Include/Library/PcdLib.h 2015-08-24 05:00:32 UTC (rev
18268)
@@ -348,7 +348,6 @@
(Size),
\
(Buffer)
\
)
-
/**
Retrieves an 8-bit PCD token value based on a token name.
@@ -433,6 +432,63 @@
#define PcdGetBool(TokenName) _PCD_GET_MODE_BOOL_##TokenName
+/**
+ Retrieves the size of a fixed PCD token based on a token name.
+
+ Returns the size of the token specified by TokenName.
+ If TokenName is not a valid token in the token space, then the module will
not build.
+
+ @param[in] TokenName The name of the PCD token to retrieve a current value
size for.
+
+ @return Return the size
+
+**/
+#define FixedPcdGetSize(TokenName) _PCD_SIZE_##TokenName
+
+
+/**
+ Retrieves the size of a binary patchable PCD token based on a token name.
+
+ Returns the size of the token specified by TokenName.
+ If TokenName is not a valid token in the token space, then the module will
not build.
+
+ @param[in] TokenName The name of the PCD token to retrieve a current value
size for.
+
+ @return Return the size
+
+**/
+#define PatchPcdGetSize(TokenName) _gPcd_BinaryPatch_Size_##TokenName
+
+
+/**
+ Retrieves the size of the PCD token based on a token name.
+
+ Returns the size of the token specified by TokenName.
+ If TokenName is not a valid token in the token space, then the module will
not build.
+
+ @param[in] TokenName The name of the PCD token to retrieve a current
value size for.
+
+ @return Return the size
+
+**/
+#define PcdGetSize(TokenName) _PCD_GET_MODE_SIZE_##TokenName
+
+
+/**
+ Retrieve the size of a given PCD token.
+
+ Returns the size of the token specified by TokenNumber and Guid.
+ If Guid is NULL, then ASSERT().
+
+ @param[in] Guid Pointer to a 128-bit unique value that designates
+ which namespace to retrieve a value from.
+ @param[in] TokenNumber The PCD token number to retrieve a current value
size for.
+
+ @return Return the size.
+
+**/
+#define PcdGetExSize(Guid, TokenName) LibPcdGetExSize ((Guid),
PcdTokenEx(Guid,TokenName))
+
#ifndef DISABLE_NEW_DEPRECATED_INTERFACES
/**
Sets an 8-bit PCD token value based on a token name.
------------------------------------------------------------------------------
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits