DumpDVD/DumpDVD/Scsi/OpticalDrive.hpp

35 lines
687 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 hasCss;
std::byte discKey[5];
bool discInDrive;
std::vector<uint32_t>* supportedSpeeds;
uint32_t sectors;
void getDriveInformation(std::string drv);
public:
OpticalDrive(std::string drv);
~OpticalDrive();
std::vector<uint32_t>* SupportedSpeeds();
std::string DrivePath();
std::string VolumeName();
uint32_t Sectors();
std::byte* DiscKey();
bool HasCss();
bool DiscInDrive();
static std::vector<OpticalDrive*>* ListOpticalDrives();
};
}
#endif