www.pudn.com > NeroSDK-v1.06.zip > NeroCopyAPI.h


/****************************************************************************** 
|* THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF 
|* ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO 
|* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A 
|* PARTICULAR PURPOSE. 
|*  
|* Copyright 1995-2005 Nero AG. All Rights Reserved. 
|*----------------------------------------------------------------------------- 
|* NeroSDK / NeroAPI 
|* 
|* PROGRAM: NeroCopyAPI.h 
|* 
|* PURPOSE: interface for Nero Copy API 
******************************************************************************/ 
#ifndef _NEROCOPYAPI_ 
#define _NEROCOPYAPI_ 
 
#ifdef __cplusplus 
extern "C" 
{ 
#endif 
 
#include "NeroAPI.h" 
 
 
#if defined(__BORLANDC__) 
// NEROAPI expects structs to be 8byte aligned 
#pragma pack(push, 8)  
// tell Borland C++ Builder to treat enums as int 
#pragma option push -b  
#endif 
 
/* 
 *	To copy a disc with NeroAPI, fill in the structure  
 *  NERO_CD_COPY, pass it to NeroBurn as parameter pWriteCD 
 *  and set CDFormat to  NERO_CD_COPY_TYPE. 
 */ 
 
#define NERO_CD_COPY_TYPE	((NERO_CD_FORMAT)1000) 
 
typedef struct 
{ 
	NERO_DEVICEHANDLE sourceDrive; // The drive to read the data from 
	BOOL onTheFly; // copy on-the-fly (without storing an image on the harddrive first) 
	const char *imageFilePath; // for non on-the-fly copying, specify the temporary imagefile path here (mandatory) 
	BOOL deleteImage; // should the temporary image deleted after burning or not 
	 
	int readSpeed;	// Read speed in KB/s, 0 for maximum speed 
	 
	UINT tryNr;	// number of tries, if read error appeared 
	BOOL readErrOption; // for data tracks: 1: ignore read errors and continue; 0: abort on read errors 
 
	// for NeroAPI 5.5 it was possible to select the readRaw mode for Mode1 and Mode2 separately. 
	// up from NeroAPI 6, general read raw mode is enable if one of these options is set 
	BOOL readRawMode1; // read raw mode 
	int rawMode1Option; // for NeroAPI 6: ignored; for NeroAPI 5.5: 0: Repair EDC/ECC error for raw data, 1: Ignore EDC/ECC error for raw data 
	BOOL readRawMode2; // read raw mode 
	int rawMode2Option; // for NeroAPI 6: ignored; for NeroAPI 5.5: 0: Repair EDC/ECC error for raw data, 1: Ignore EDC/ECC error for raw data 
 
	BOOL readSub; // For NeroAPI 6: ignored, for NeroAPI 5.5: read audio data with sub q code 
	BOOL checkDA; // For NeroAPI 6: ignored, for NeroAPI 5.5: check for audio data 
	int slowDown; // For NeroAPI 6: ignored, for NeroAPI 5.5 option for jitter correction in read audio track: 0: If correction failed rewind and read from beginning, 1: If correction failed slow down at once, 2: no jitter correction 
	BOOL ignoreDAErr; // for audio tracks: ignore read errors and continue  
	BOOL readIsrcAndMediaCatalogNo; // NeroAPI 5.5 and NeroAPI >= 6.3.1.24: TRUE if media catalog number and ISRC should be read and copied 
	BOOL ignoreBadTOCType; // for NeroAPI 6: ignored, for NeroAPI 5.5: should be set to TRUE 
 
	NERO_MEDIA_TYPE mediaType; // NeroAPI >= 6.3.1.24: which media type is to be copied 
} NERO_CD_COPY; 
 
#ifdef __cplusplus 
} 
#endif 
 
 
#if defined(__BORLANDC__) 
#pragma pack(pop) 
#pragma option pop  
#endif 
 
#endif  // _NEROCOPYAPI_ 
 
//====================================================== 
// NeroCopyApi.h 
//======================================================