mirror of
https://github.com/LongSoft/UEFITool.git
synced 2024-11-28 02:48:23 +08:00
934ce1f3f8
As the first step towards automated parsing, this change set replaces outdated BootGuard-related parsers with shiny new KaitaiStruct-based ones. It also does the following: - improves Intel FIT definitions by using the relevant specification - adds sha1, sha384, sha512 and sm3 digest implementations - updates LZMA SDK to v22.01 - moves GUIDs out of include files to prevent multiple instantiations - enforces C++11 - adds Kaitai-based parsers for Intel FIT, BootGuard v1 and BootGuard v2 structures - makes many small refactorings here, there and everywhere
34 lines
942 B
C
34 lines
942 B
C
/* ustring.h
|
|
|
|
Copyright (c) 2016, Nikolaj Schlej. All rights reserved.
|
|
This program and the accompanying materials
|
|
are licensed and made available under the terms and conditions of the BSD License
|
|
which accompanies this distribution. The full text of the license may be found at
|
|
http://opensource.org/licenses/bsd-license.php
|
|
|
|
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
*/
|
|
|
|
#ifndef USTRING_H
|
|
#define USTRING_H
|
|
|
|
#include "basetypes.h"
|
|
|
|
#if defined (QT_CORE_LIB)
|
|
// Use Qt class, if Qt is available
|
|
#include <QString>
|
|
#define UString QString
|
|
#define findreplace replace
|
|
#else
|
|
// Use Bstrlib
|
|
#define BSTRLIB_DOESNT_THROW_EXCEPTIONS
|
|
#include "bstrlib/bstrwrap.h"
|
|
#define UString CBString
|
|
#endif // QT_CORE_LIB
|
|
|
|
UString usprintf(const char* fmt, ...) ATTRIBUTE_FORMAT_(printf, 1, 2);
|
|
UString urepeated(char c, int len);
|
|
|
|
#endif // USTRING_H
|