2 Header file for PcdValue structure definition.
4 Copyright (c) 2017, Intel Corporation. All rights reserved.<BR>
5 SPDX-License-Identifier: BSD-2-Clause-Patent
9 #ifndef _PCD_VALUE_COMMON_H
10 #define _PCD_VALUE_COMMON_H
12 #include <Common/UefiBaseTypes.h>
13 #include <Common/UefiInternalFormRepresentation.h>
15 #define __FIELD_SIZE(TYPE, Field) (sizeof((TYPE *)0)->Field)
16 #define __ARRAY_ELEMENT_SIZE(TYPE, Field) (sizeof((TYPE *)0)->Field[0])
17 #define __OFFSET_OF(TYPE, Field) ((UINT32) &(((TYPE *)0)->Field))
18 #define __FLEXIBLE_SIZE(Size, TYPE, Field, MaxIndex) if (__FIELD_SIZE(TYPE, Field) == 0) Size = MAX((__OFFSET_OF(TYPE, Field) + __ARRAY_ELEMENT_SIZE(TYPE, Field) * (MaxIndex)), Size)
19 #define __ARRAY_SIZE(Array) (sizeof(Array)/sizeof(Array[0]))
21 #if defined(_MSC_EXTENSIONS)
22 #define __STATIC_ASSERT static_assert
24 #define __STATIC_ASSERT _Static_assert
35 Main function updates PCD values. It is auto generated by Build
55 Main function updates PCD values.
59 argc Number of command line parameters.
60 argv Array of pointers to parameter strings.
69 CHAR8
*SkuName OPTIONAL
,
70 CHAR8
*DefaultValueName OPTIONAL
,
71 CHAR8
*TokenSpaceGuidName
,
83 SkuName SkuName String
84 DefaultValueName DefaultValueName String
85 TokenSpaceGuidName TokenSpaceGuidName String
86 TokenName TokenName String
96 CHAR8
*SkuName OPTIONAL
,
97 CHAR8
*DefaultValueName OPTIONAL
,
98 CHAR8
*TokenSpaceGuidName
,
110 SkuName SkuName String
111 DefaultValueName DefaultValueName String
112 TokenSpaceGuidName TokenSpaceGuidName String
113 TokenName TokenName String
114 Value PCD value to be set
124 CHAR8
*SkuName OPTIONAL
,
125 CHAR8
*DefaultValueName OPTIONAL
,
126 CHAR8
*TokenSpaceGuidName
,
138 SkuName SkuName String
139 DefaultValueName DefaultValueName String
140 TokenSpaceGuidName TokenSpaceGuidName String
141 TokenName TokenName String
142 Size Size of PCD value buffer
152 CHAR8
*SkuName OPTIONAL
,
153 CHAR8
*DefaultValueName OPTIONAL
,
154 CHAR8
*TokenSpaceGuidName
,
167 SkuName SkuName String
168 DefaultValueName DefaultValueName String
169 TokenSpaceGuidName TokenSpaceGuidName String
170 TokenName TokenName String
171 Size Size of PCD value
172 Value Pointer to the updated PCD value buffer
180 #define PcdGet(A, B, C, D) __PcdGet(#A, #B, #C, #D)
181 #define PcdSet(A, B, C, D, Value) __PcdSet(#A, #B, #C, #D, Value)
182 #define PcdGetPtr(A, B, C, D, Size) __PcdGetPtr(#A, #B, #C, #D, Size)
183 #define PcdSetPtr(A, B, C, D, Size, Value) __PcdSetPtr(#A, #B, #C, #D, Size, Value)