
Since it will become a stream in a little bit, it should behave like all non-trivial stream classes, who are not primarily intended to have shared ownership to make closing behavior more predictable. Across all uses of MappedFile, there is only one use case of shared mapped files in LibVideo, which now uses the thin SharedMappedFile wrapper.
32 lines
795 B
C++
32 lines
795 B
C++
/*
|
|
* Copyright (c) 2021, Itamar S. <itamar8910@gmail.com>
|
|
*
|
|
* SPDX-License-Identifier: BSD-2-Clause
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "DebugInfo.h"
|
|
#include <AK/Types.h>
|
|
#include <LibCore/MappedFile.h>
|
|
#include <LibELF/Image.h>
|
|
|
|
namespace Debug {
|
|
struct LoadedLibrary {
|
|
DeprecatedString name;
|
|
NonnullOwnPtr<Core::MappedFile> file;
|
|
NonnullOwnPtr<ELF::Image> image;
|
|
NonnullOwnPtr<DebugInfo> debug_info;
|
|
FlatPtr base_address {};
|
|
|
|
LoadedLibrary(DeprecatedString const& name, NonnullOwnPtr<Core::MappedFile> file, NonnullOwnPtr<ELF::Image> image, NonnullOwnPtr<DebugInfo>&& debug_info, FlatPtr base_address)
|
|
: name(name)
|
|
, file(move(file))
|
|
, image(move(image))
|
|
, debug_info(move(debug_info))
|
|
, base_address(base_address)
|
|
{
|
|
}
|
|
};
|
|
|
|
}
|