libburn中函数struct burn_drive的定义
时间: 2024-03-27 17:37:29 浏览: 15
在 libburn 中,`struct burn_drive` 结构体表示一个烧录驱动器。
该结构体的定义如下:
```c
struct burn_drive {
struct burn_backend *p;
int dev_fd;
unsigned int dev_inquiry_len;
unsigned char *dev_inquiry_data;
int media_fd;
unsigned int media_inquiry_len;
unsigned char *media_inquiry_data;
int media_type;
int media_present;
int ejectable;
int blank;
struct burn_write_opts *write_opts;
struct burn_disc *disc;
void *priv;
};
```
其中,各个字段的含义如下:
- `p`:指向 `struct burn_backend` 结构体的指针,表示该驱动器所使用的后端。
- `dev_fd`:表示烧录驱动器的文件描述符。
- `dev_inquiry_len` 和 `dev_inquiry_data`:表示烧录驱动器的 Inquiry 数据长度和数据内容。
- `media_fd`:表示当前插入到烧录驱动器中的媒体的文件描述符。
- `media_inquiry_len` 和 `media_inquiry_data`:表示当前插入到烧录驱动器中的媒体的 Inquiry 数据长度和数据内容。
- `media_type`:表示当前插入到烧录驱动器中的媒体的类型。
- `media_present`:表示烧录驱动器中是否已经插入了媒体。
- `ejectable`:表示该烧录驱动器是否支持弹出媒体。
- `blank`:表示烧录驱动器中当前是否有空白媒体。
- `write_opts`:指向 `struct burn_write_opts` 结构体的指针,表示烧录选项。
- `disc`:指向 `struct burn_disc` 结构体的指针,表示正在烧录的光盘。
- `priv`:指向私有数据的指针,可以由烧录驱动器的后端使用。