+ class UnicodeString {\r
+ //\r
+ // In Schema, we define VariableName in DynamicPcdBuildDefinitions in FPD\r
+ // file to be HexWordArrayType. For example, Unicode String L"Setup" is \r
+ // <VariableName>0x0053 0x0065 0x0074 0x0075 0x0070</VariableName>. \r
+ // We use raw to differentiate if the String is in form of L"Setup" (raw is false) or\r
+ // in form of {0x0053, 0x0065, 0x0074, 0x0075, 0x0070}\r
+ //\r
+ // This str is the string that can be pasted directly into the C structure. \r
+ // For example, this str can be two forms:\r
+ // \r
+ // L"Setup",\r
+ // {0x0053, 0065, 0x0074, 0x0075, 0x0070, 0x0000}, //This is another form of L"Setup"\r
+ //\r
+ public String str;\r
+ //\r
+ // This len includes the NULL character at the end of the String.\r
+ //\r
+ public int len;\r
+ \r
+ public UnicodeString (String str, int len) {\r
+ this.str = str;\r
+ this.len = len;\r
+ }\r
+ }\r
+ \r
+ private ArrayList<UnicodeString> al;\r