TNB Library
クラス | 公開メンバ関数 | 静的公開メンバ関数 | 全メンバ一覧
CPrimoBurner::CDevice クラス

PrimoBurner デバイス情報管理クラス [詳解]

#include <TnbPrimoBurnerEngine.h>

クラス

struct  IListener
 PrimoBurner デバイス情報リスナーインターフェース [詳解]
 

公開メンバ関数

bool Burn (CDiscImage &dd)
 [書込] 書込み(CDiscImage 指定) [詳解]
 
bool BurnImageFile (LPCTSTR lpszFile)
 [書込] 書込み(イメージファイル指定) [詳解]
 
 CDevice (PRIBUR::IDevice *P=NULL)
 コンストラクタ [詳解]
 
void Close (void)
 [処理] クローズ [詳解]
 
CScsi CreateScsi (void)
 [取得] SCSIインターフェース取得. [詳解]
 
bool Erase (EEraseType eType=ERASE_DISC)
 [消去] イレース [詳解]
 
bool Format (bool boIsQuick=false)
 [消去] フォーマット [詳解]
 
int GetLastCompleteTrack (void)
 [取得] 最終トラック取得. [詳解]
 
DWORD GetLastError (void)
 [取得] エラーコード取得. [詳解]
 
DWORD GetMediaFreeByte (void)
 [取得] メディア空き容量 [詳解]
 
PRIBUR::EMediaProfile GetMediaProfile (void)
 [確認] メディア種確認 [詳解]
 
CDwordVector GetSpeeds (void)
 [取得] 書込み速度一覧. [詳解]
 
DWORD GetWriteSpeed (void)
 [取得] 速度取得 [詳解]
 
bool HasRewritableMedia (void)
 [確認] 再書込み可能確認 [詳解]
 
bool HasWritableMedia (void)
 [確認] 書込み可能確認 [詳解]
 
bool IsMediaReady (DWORD dwTime=0)
 [確認] メディア確認 [詳解]
 
bool IsValid (void) const
 [確認] 有効確認. [詳解]
 
PRIBUR::IDevice * operator-> (void)
 [取得] IDevice参照. [詳解]
 
void SetEjectMode (bool boIsEject)
 [登録] 処理後Eject設定. [詳解]
 
void SetListener (IListener *I)
 [登録] リスナー登録 [詳解]
 
void SetWriteSpeed (DWORD dw)
 [設定] 書込み速度設定 [詳解]
 
 ~CDevice (void)
 デストラクタ [詳解]
 

静的公開メンバ関数

static double Get1xSpeed (bool boIsDvd)
 [取得] 1×速度取得 [詳解]
 
static CStr ToString (PRIBUR::EMediaProfile e)
 [取得] メディア種名取得 [詳解]
 

詳解

PrimoBurner デバイス情報管理クラス

覚え書き
CPrimoBurner::CreateDevice() により作成されます。
IsMediaReady() でメディアの挿入状態がわかります。
GetMediaProfile() で挿入されているメディア種がわかります。
必要ファイル
TnbPrimoBurnerEngine.h
日付
07/01/29 新規作成
09/08/04 クラス名、構成変更。

TnbPrimoBurnerEngine.h783 行目に定義があります。

構築子と解体子

◆ CDevice()

CDevice ( PRIBUR::IDevice *  P = NULL)

コンストラクタ

引数
PIDeviceインスタンスのポインタ。省略すると NULL。

TnbPrimoBurnerEngine.h853 行目に定義があります。

◆ ~CDevice()

~CDevice ( void  )

デストラクタ

TnbPrimoBurnerEngine.h859 行目に定義があります。

関数詳解

◆ Burn()

bool Burn ( CDiscImage dd)

[書込] 書込み(CDiscImage 指定)

引数
ddCDiscImage のインスタンス
戻り値
true成功
false失敗

TnbPrimoBurnerEngine.h1306 行目に定義があります。

◆ BurnImageFile()

bool BurnImageFile ( LPCTSTR  lpszFile)

[書込] 書込み(イメージファイル指定)

引数
lpszFileイメージファイル名
戻り値
true成功
false失敗

TnbPrimoBurnerEngine.h1282 行目に定義があります。

◆ Close()

void Close ( void  )

[処理] クローズ

覚え書き
本インスタンスで管理している IDevieを閉じます(複製している場合、 すべての複製がクローズ/デストラクトするまで生きます)。

TnbPrimoBurnerEngine.h887 行目に定義があります。

◆ CreateScsi()

CScsi CreateScsi ( void  )

[取得] SCSIインターフェース取得.

SCSI操作用のクラスを得ることが出来ます。

戻り値
CScsi。

TnbPrimoBurnerEngine.h927 行目に定義があります。

◆ Erase()

bool Erase ( EEraseType  eType = ERASE_DISC)

[消去] イレース

覚え書き
イレースできるのは、CD-RWメディアと DVD-RWメディアだけです。
引数
eTypeイレースタイプ。以下から指定します。省略すると、ERASE_DISC になります。
ERASE_DISC Erase the entire disc
ERASE_MINIMAL Erase the PMA, 1st session TOC, pregap
ERASE_LAST_TRACK Erase last incomplete track
ERASE_UNRESERVE_LAST_TRACK Unreserve the last reserved track
ERASE_UNCLOSE_LAST_TRACK Erase the tail of a track - re-opens a complete track
ERASE_UNCLOSE_LAST_SESSION Reopen the last session
ERASE_LAST_SESSION Erase the last session
戻り値
ture成功
false失敗

TnbPrimoBurnerEngine.h1202 行目に定義があります。

◆ Format()

bool Format ( bool  boIsQuick = false)

[消去] フォーマット

覚え書き
フォーマットできるのは、CD-RW DVD-RW DVD+RW メディアだけです。
引数
boIsQuicktrue ならQuickFormat。省略か false なら完全Format。 この設定は、DVD+RW メディアの場合、無視されます。
戻り値
ture成功
false失敗

TnbPrimoBurnerEngine.h1232 行目に定義があります。

◆ Get1xSpeed()

static double Get1xSpeed ( bool  boIsDvd)
static

[取得] 1×速度取得

引数
boIsDvdtrue なら DVD、falseならCD-Rでの1倍速の書込み速度を返します。
戻り値
BYTE単位の速度。

TnbPrimoBurnerEngine.h1154 行目に定義があります。

◆ GetLastCompleteTrack()

int GetLastCompleteTrack ( void  )

[取得] 最終トラック取得.

覚え書き
IsMediaReady() で true になってから使用します。
戻り値
0以上最終トラック。
-1エラー。

TnbPrimoBurnerEngine.h1118 行目に定義があります。

◆ GetLastError()

DWORD GetLastError ( void  )

[取得] エラーコード取得.

戻り値
エラー情報。数値はシステムエラーコードです( SystemErrorToMessageText() で文字列化できます)。

TnbPrimoBurnerEngine.h907 行目に定義があります。

◆ GetMediaFreeByte()

DWORD GetMediaFreeByte ( void  )

[取得] メディア空き容量

覚え書き
BLOCK 単位の場合、 IDevice.GetMediaFreeSpace() を使います。
本メソッドは、上記関数の結果に CDROM_BLOCKSIZE(2048)をかけているだけです。
IsMediaReady() で true になってから使用します。
戻り値
容量(Byte)。

TnbPrimoBurnerEngine.h971 行目に定義があります。

◆ GetMediaProfile()

PRIBUR::EMediaProfile GetMediaProfile ( void  )

[確認] メディア種確認

覚え書き
現在挿入されているメディア種を返します。
IsMediaReady() で true になってから使用します。
MP_BD〜 のシンボルは、 PrimoBurner 2.0以降を使用している場合のみ使用できます。
戻り値
MP_UNKNOWNエラー。あるいはメディアなし。あるいは知らないメディア。
MP_CD_ROMCD-ROM – Read only CD。
MP_CD_RCD-R – Write once CD。
MP_CD_RWCD-RW – Re-writable CD。
MP_DVD_ROMDVD-ROM – Read only DVD。
MP_DVD_MINUS_R_SEQDVD-R Sequential Recording – Write once DVD that can be recorded only sequentially.
MP_DVD_RAM_RWDVD-RAM – Random Access Re-writable DVD
MP_DVD_MINUS_RW_RODVD-RW Restricted Overwrite – Re-writable DVD formatted for restricted overwrite recording.
MP_DVD_MINUS_RW_SEQDVD-RW Sequential Recording – Re-writable DVD that can be recorded only sequentially.
MP_DVD_MINUS_R_DL_SEQDVD-R DL – Write once DVD-R Double Layer 8.5GB that can be recorded sequentially.
MP_DVD_MINUS_R_DL_JUMPDVD-R DL – Write once DVD-R Double Layer 8.5GB that can be recorded using layer jumping.
MP_DVD_PLUS_RWDVD+RW – Re-Writable DVD
MP_DVD_PLUS_RDVD+R – Write Once DVD+R Single Layer
MP_DVD_PLUS_R_DLDVD+R DL – Write Once DVD+R Double Layer 8.5GB
MP_BD_R_SRMBD-R in Sequential Recording Mode (SRM) – Write once BD that can be recorded sequentially.
MP_BD_R_SRM_POWBD-R Sequential Recording Mode (SRM) formatted for Pseudo Overwrite (POW) – Write once BD that can be recorded only sequentially. This profile is returned by the engine when the media is POW formatted BD-R SRM.
MP_BD_R_RRMBD-R in Random Recording Mode (RRM) – Write once BD which is formatted for random recording.
MP_BD_REBD-RE – Re-writable Blue-ray Disc.

TnbPrimoBurnerEngine.h1044 行目に定義があります。

◆ GetSpeeds()

CDwordVector GetSpeeds ( void  )

[取得] 書込み速度一覧.

そのデバイスで可能な BYTE単位の速度の一覧を取得できます。

戻り値
速度配列。

TnbPrimoBurnerEngine.h1095 行目に定義があります。

◆ GetWriteSpeed()

DWORD GetWriteSpeed ( void  )

[取得] 速度取得

覚え書き
SetWriteSpeed() で設定した値(設定していない場合、デバイスの最高速)を返します。
IsMediaReady() で true になってから使用します。
戻り値
BYTE単位の速度。

TnbPrimoBurnerEngine.h1165 行目に定義があります。

◆ HasRewritableMedia()

bool HasRewritableMedia ( void  )

[確認] 再書込み可能確認

覚え書き
再書込み可能のメディア(CD-RW/DVD±RW)を持っているか確認します。
IsMediaReady() で true になってから使用します。
戻り値
true可能。フォーマットやイレースが可能です。
false無効。

TnbPrimoBurnerEngine.h1009 行目に定義があります。

◆ HasWritableMedia()

bool HasWritableMedia ( void  )

[確認] 書込み可能確認

覚え書き
書込み可能のメディアを持っているか確認します。
IsMediaReady() で true になってから使用します。
戻り値
true可能。 Burn 系 メソッドが使用可能です。
false無効。

TnbPrimoBurnerEngine.h987 行目に定義があります。

◆ IsMediaReady()

bool IsMediaReady ( DWORD  dwTime = 0)

[確認] メディア確認

引数
dwTimeタイムアウト時間(単位ms)。省略すると0msです。
戻り値
ture準備OK
falseNG

TnbPrimoBurnerEngine.h942 行目に定義があります。

◆ IsValid()

bool IsValid ( void  ) const

[確認] 有効確認.

本インスタンスが 有効(IDeviceを持っている)か、確認します。

戻り値
true有効。各メソッドは使えます。
false無効。

TnbPrimoBurnerEngine.h898 行目に定義があります。

◆ operator->()

PRIBUR::IDevice * operator-> ( void  )

[取得] IDevice参照.

IDeviceのポインタを得ることが出来ます。直接操作できます。

戻り値
IDevice のポインタ。

TnbPrimoBurnerEngine.h917 行目に定義があります。

◆ SetEjectMode()

void SetEjectMode ( bool  boIsEject)

[登録] 処理後Eject設定.

覚え書き
本メソッドで設定しないと、処理後イジェクトします。
引数
boIsEjecttrue なら 書き込み、消去後、メディアをEjectします。

TnbPrimoBurnerEngine.h877 行目に定義があります。

◆ SetListener()

void SetListener ( IListener I)

[登録] リスナー登録

引数
Iリスナー

TnbPrimoBurnerEngine.h867 行目に定義があります。

◆ SetWriteSpeed()

void SetWriteSpeed ( DWORD  dw)

[設定] 書込み速度設定

覚え書き
本クラスのメソッドのみに有効です。
引数
dwBYTE単位の速度を指定。

TnbPrimoBurnerEngine.h1183 行目に定義があります。

◆ ToString()

static CStr ToString ( PRIBUR::EMediaProfile  e)
static

[取得] メディア種名取得

引数
eメディア種コード。
戻り値
メディア種名。

TnbPrimoBurnerEngine.h1058 行目に定義があります。