summaryrefslogtreecommitdiff
path: root/platform/efi/efi_resolver/include/DxeResolver.h
blob: 3515b94a9ac5c439e1c8865249c623b2fa251817 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#pragma once

#include "Resolver.h"

class DxeResolver : Resolver {
    bool resolveBootServices();
    bool resolveRuntimeServices();

    bool resolveSmmTables(string serviceName, string tableName);
    bool resolveSmmServices();
    bool resolveSmiHandlers();

public:
    /*!
    resolve BootServices and RuntimeServices, define protocol types that loaded by BootServices
    */
    bool resolveDxe();

    /*!
    Define MMST/SMMST and resolve SMM related protocols
    */
    bool resolveSmm();

    DxeResolver(Ref<BinaryView> view, Ref<BackgroundTask> task);
};