| // Copyright 2023 The ChromiumOS Authors | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| #ifndef GSCLOG_GSCLOG_H_ | |
| #define GSCLOG_GSCLOG_H_ | |
| #include <memory> | |
| #include <base/files/file_util.h> | |
| #include <trunks/trunks_factory.h> | |
| #include <trunks/trunks_factory_impl.h> | |
| namespace gsclog { | |
| class GscLog { | |
| public: | |
| explicit GscLog(const base::FilePath& log_dir); | |
| int Fetch(); | |
| private: | |
| base::FilePath log_path_; | |
| std::unique_ptr<trunks::TrunksFactoryImpl> default_trunks_factory_; | |
| trunks::TrunksFactory* trunks_factory_{nullptr}; | |
| std::unique_ptr<trunks::TpmUtility> trunks_utility_; | |
| }; | |
| } // namespace gsclog | |
| #endif // GSCLOG_GSCLOG_H_ |