123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- /************************************************************************/
- /* Copyright (C), 2016-2020, [Jeff], 保留所有权利;
- /* 模 块 名:;
- /* 描 述:;
- /*
- /* 版 本:[V];
- /* 作 者:[Jeff];
- /* 日 期:[3/20/2018];
- /*
- /*
- /* 注 意:;
- /*
- /* 修改记录:[Jeff];
- /* 修改日期:;
- /* 修改版本:;
- /* 修改内容:;
- /************************************************************************/
- #ifndef __I_BURN_DISC__
- #define __I_BURN_DISC__
- #pragma once
- #include "Nero.h"
- typedef struct __DEVINFO__
- {
- int nIndex; // 设备索引;
- TString strDevName; // 设备名称;
- TString strDevUId; // 设备的id;
- void* pDevInfo; // 设备对象;
- __DEVINFO__() :nIndex(-1), pDevInfo(NULL) { }
- }DeviceInfo, *pDeviceInfo;
- // {96D4FD2E-115A-474d-A5E0-D1400D14083B}
- static const GUID IID_IBurndisc =
- { 0x96d4fd2e, 0x115a, 0x474d,{ 0xa5, 0xe0, 0xd1, 0x40, 0xd, 0x14, 0x8, 0x3b } };
- interface IBurndisc :public IUnknown
- {
- public:
- // 初始化刻录环境;
- virtual bool Initialize() = 0;
- // 获取可用的设备数量;
- virtual int GetAvailableDrives() = 0;
- // 获取刻录机设备信息;
- virtual void* GetDeivceInfo(int nIndex) = 0;
- virtual void* GetDeivceInfo(const TCHAR *pszDevName) = 0;
- // 添加文件或文件夹;
- virtual void AddFiles2Disc(TString strFatherNode, vector<TString> &vtfiles) = 0;
- virtual void AddFolder2Disc(TString strFatherNode, TString strFolder) = 0;
- /*
- // 获取媒体光盘的信息;
- virtual void* GetMediaInfo(int nIndex) = 0;
- virtual void* GetMediaInfo(const TCHAR *pszDevName) = 0;
- virtual void* GetMediaInfo(void *pDevInfo) = 0;
- // 获取设备的刻录速度;
- virtual bool GetWriteSpeeds() = 0;
- // 获取擦除设备的时长;
- virtual bool GetCDRWErasingTime() = 0;
- // 弹出或加载CD;
- virtual bool EjectLoadCD() = 0;
- */
- virtual void NeroCallback(
- void* pDailog,
- IdleCallback pIdleCallback,
- UserDialog pUserDialog,
- ProgressCallback pProgressCallback,
- ProgressCallback pSubTaskProgressCallback,
- AbortedCallback pAbortedCallback,
- AddLogLine pAddLogLine,
- SetPhaseCallback pSetPhaseCallback,
- DisableAbortCallback pDisableAbortCallback,
- SetMajorPhaseCallback pSetMajorPhaseCallback,
- WriteIOCallback pWriteIOCallback,
- ReadIOCallback pReadIOCallback,
- EOFCallback pEOFCallback,
- ErrorCallback pErrorCallback
- ) = 0;
- virtual void IMAPI2Set(void* pDailog) = 0;
- // 设置写速度;
- virtual bool SetWriteSpeed(ULONG nIndex) = 0;
- // 擦除设备;
- virtual void EraseMedia(int nIndex) = 0;
- // 写光盘;
- virtual bool BurnMedia(int nIndex, TString strArtist, TString strTitle) = 0;
- };
- #endif
|