30 lines
606 B
C++
30 lines
606 B
C++
|
#ifndef _LI_OPTICAL_DRIVE_H
|
||
|
#define _LI_OPTICAL_DRIVE_H 1
|
||
|
#include <vector>
|
||
|
#include <iostream>
|
||
|
namespace Li::Scsi {
|
||
|
class OpticalDrive {
|
||
|
private:
|
||
|
std::string drivePath;
|
||
|
std::string volumeName;
|
||
|
|
||
|
bool discInDrive;
|
||
|
std::vector<uint32_t>* supportedSpeeds;
|
||
|
uint64_t sectors;
|
||
|
|
||
|
void getDriveInformation(std::string drv);
|
||
|
public:
|
||
|
OpticalDrive(std::string drv);
|
||
|
~OpticalDrive();
|
||
|
|
||
|
std::vector<uint32_t>* SupportedSpeeds();
|
||
|
std::string DrivePath();
|
||
|
std::string VolumeName();
|
||
|
uint64_t Sectors();
|
||
|
bool DiscInDrive();
|
||
|
|
||
|
static std::vector<OpticalDrive*>* ListOpticalDrives();
|
||
|
};
|
||
|
|
||
|
}
|
||
|
#endif
|