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
//======================================================