XenevaOS
Loading...
Searching...
No Matches
XenevaOS
BaseHdr
Fs
_gpt.h
Go to the documentation of this file.
1
30
#ifndef __GPT_H__
31
#define __GPT_H__
32
33
#include <stdint.h>
34
#include <aurora.h>
35
#include <
Fs/vdisk.h
>
36
#include <
Fs/_FsGUIDs.h
>
37
38
#define BE_PREPROCESSOR16(x) \
39
((x >> 8) | ((x & 0xFF) << 8))
40
41
#define CREATE_GUID(a, b, c, d, e0, e1, e2, e3, e4, e5) \
42
{a, b, c, { { BE_PREPROCESSOR16(d), { e0, e1, e2, e3, e4, e5 } } }}
43
44
45
#pragma pack(push,1)
46
typedef
struct
_GPT_HEADER_
{
47
char
sig
[8];
48
uint32_t
rev
;
49
uint32_t
hdr_sz
;
50
uint32_t
crc32
;
51
uint32_t
resv
;
52
uint64_t
curr_lba
;
53
uint64_t
backup_lba
;
54
uint64_t
first_useable_lba
;
55
uint64_t
last_useable_lba
;
56
uint64_t
disk_guid
[2];
57
uint64_t
part_table_lba
;
58
uint32_t
num_part_entries
;
59
uint32_t
size_of_part
;
60
uint32_t
crc32_of_part_entries
;
61
}
GPTHeader
;
62
#pragma pack(pop)
63
64
#pragma pack(push,1)
65
typedef
struct
_GPT_Partition_
{
66
GUID
part_guid
;
67
GUID
part_unique_guid
;
68
uint64_t
first_lba
;
69
uint64_t
last_lba
;
70
uint64_t
attributes
;
71
char
part_name
[72];
72
}
GPTPartition
;
73
#pragma pack(pop)
74
75
/* AuGUIDVerify -- compares two guid and return the result
76
* @param g1 -- GUID one
77
* @param g2 -- GUID two
78
*/
79
AU_EXTERN
AU_EXPORT
bool
AuGUIDVerify
(
GUID
g1,
GUID
g2);
80
/*
81
* AuGPTInitialise_FileSystem -- initialises specific file system
82
* by looking partition GUID
83
* @param vdisk -- Virtual disk partition
84
*/
85
extern
void
AuGPTInitialise_FileSystem
(
AuVDisk
*vdisk);
86
#endif
AU_EXTERN
#define AU_EXTERN
Definition
aurora.h:50
AU_EXPORT
#define AU_EXPORT
Definition
aurora.h:38
_FsGUIDs.h
GPTPartition
struct _GPT_Partition_ GPTPartition
AuGUIDVerify
AU_EXTERN AU_EXPORT bool AuGUIDVerify(GUID g1, GUID g2)
Definition
_gpt.cpp:44
GPTHeader
struct _GPT_HEADER_ GPTHeader
AuGPTInitialise_FileSystem
void AuGPTInitialise_FileSystem(AuVDisk *vdisk)
Definition
_gpt.cpp:63
uint32_t
unsigned int uint32_t
Definition
acefiex.h:163
uint64_t
COMPILER_DEPENDENT_UINT64 uint64_t
Definition
acefiex.h:165
GUID
Definition
Base.h:281
_GPT_HEADER_
Definition
_gpt.h:46
_GPT_HEADER_::last_useable_lba
uint64_t last_useable_lba
Definition
_gpt.h:55
_GPT_HEADER_::crc32_of_part_entries
uint32_t crc32_of_part_entries
Definition
_gpt.h:60
_GPT_HEADER_::part_table_lba
uint64_t part_table_lba
Definition
_gpt.h:57
_GPT_HEADER_::rev
uint32_t rev
Definition
_gpt.h:48
_GPT_HEADER_::crc32
uint32_t crc32
Definition
_gpt.h:50
_GPT_HEADER_::curr_lba
uint64_t curr_lba
Definition
_gpt.h:52
_GPT_HEADER_::disk_guid
uint64_t disk_guid[2]
Definition
_gpt.h:56
_GPT_HEADER_::sig
char sig[8]
Definition
_gpt.h:47
_GPT_HEADER_::first_useable_lba
uint64_t first_useable_lba
Definition
_gpt.h:54
_GPT_HEADER_::num_part_entries
uint32_t num_part_entries
Definition
_gpt.h:58
_GPT_HEADER_::size_of_part
uint32_t size_of_part
Definition
_gpt.h:59
_GPT_HEADER_::backup_lba
uint64_t backup_lba
Definition
_gpt.h:53
_GPT_HEADER_::hdr_sz
uint32_t hdr_sz
Definition
_gpt.h:49
_GPT_HEADER_::resv
uint32_t resv
Definition
_gpt.h:51
_GPT_Partition_
Definition
_gpt.h:65
_GPT_Partition_::attributes
uint64_t attributes
Definition
_gpt.h:70
_GPT_Partition_::part_guid
GUID part_guid
Definition
_gpt.h:66
_GPT_Partition_::part_name
char part_name[72]
Definition
_gpt.h:71
_GPT_Partition_::part_unique_guid
GUID part_unique_guid
Definition
_gpt.h:67
_GPT_Partition_::first_lba
uint64_t first_lba
Definition
_gpt.h:68
_GPT_Partition_::last_lba
uint64_t last_lba
Definition
_gpt.h:69
_VDISK_
Definition
vdisk.h:72
vdisk.h
Generated by
1.9.8