Implemented Unicode Collation Protocol

This commit is contained in:
Jozef Nagy 2024-03-31 20:18:39 +02:00
parent b556021507
commit d2d5d32202
No known key found for this signature in database
GPG key ID: 5B49DC29F09685D6
2 changed files with 71 additions and 0 deletions

View file

@ -0,0 +1,70 @@
#ifndef EFI_PROTOCOLS_STRING_SERVICES_H
#define EFI_PROTOCOLS_STRING_SERVICES_H
////
// Unicode Collation Protocol
///
#define EFI_UNICODE_COLLATION_PROTOCOL2_GUID {0xa4c751fc,0x23ae,0x4c3e, {0x92,0xe9,0x49,0x64,0xcf,0x63,0xf3,0x49}}
typedef struct _EFI_UNICODE_COLLATION_PROTOCOL EFI_UNICODE_COLLATION_PROTOCOL;
typedef
INTN
(EFIAPI *EFI_UNICODE_COLLATION_STRICOLL)(
IN EFI_UNICODE_COLLATION_PROTOCOL *This,
IN CHAR16 *s1,
IN CHAR16 *s2
);
typedef
BOOLEAN
(EFIAPI *EFI_UNICODE_COLLATION_METAIMATCH)(
IN EFI_UNICODE_COLLATION_PROTOCOL *This,
IN CHAR16 *String,
IN CHAR16 *Pattern
);
typedef
VOID
(EFIAPI *EFI_UNICODE_COLLATION_STRLWR)(
IN EFI_UNICODE_COLLATION_PROTOCOL *This,
IN OUT CHAR16 *String
);
typedef
VOID
(EFIAPI *EFI_UNICODE_COLLATION_STRUPR)(
IN EFI_UNICODE_COLLATION_PROTOCOL *This,
IN OUT CHAR16 *String
);
typedef
VOID
(EFIAPI *EFI_UNICODE_COLLATION_FATTOSTR)(
IN EFI_UNICODE_COLLATION_PROTOCOL *This,
IN UINTN FatSize,
IN CHAR8 *Fat,
OUT CHAR16 *String
);
typedef
BOOLEAN
(EFIAPI *EFI_UNICODE_COLLATION_STRTOFAT)(
IN EFI_UNICODE_COLLATION_PROTOCOL *This,
IN CHAR16 *String,
IN UINTN FatSize,
OUT CHAR8 *Fat
);
typedef struct _EFI_UNICODE_COLLATION_PROTOCOL {
EFI_UNICODE_COLLATION_STRICOLL StriColl;
EFI_UNICODE_COLLATION_METAIMATCH MetaiMatch;
EFI_UNICODE_COLLATION_STRLWR StrLwr;
EFI_UNICODE_COLLATION_STRUPR StrUpr;
EFI_UNICODE_COLLATION_FATTOSTR FatToStr;
EFI_UNICODE_COLLATION_STRTOFAT StrToFat;
CHAR8 *SupportedLanguages;
} EFI_UNICODE_COLLATION_PROTOCOL;
#endif /* EFI_PROTOCOLS_STRING_SERVICES_H */