53 lines
1.5 KiB
C
53 lines
1.5 KiB
C
#ifndef NULLSOFT_PRIMOSDK_INTEGRATION_HEADER
|
|
#define NULLSOFT_PRIMOSDK_INTEGRATION_HEADER
|
|
|
|
#include "./main.h"
|
|
// PrimoSDK wrapper
|
|
|
|
#define PRIMOSDK_OK 0x0000 - declared in PRIMODSK.H
|
|
|
|
#define PRIMOSDK_ERROR 0x0001
|
|
#define PRIMOSDK_ALREADYLOADED 0x1000
|
|
#define PRIMOSDK_LOAD_DLLFAILED 0x1001
|
|
#define PRIMOSDK_LOAD_FUNCFAILED 0x1002
|
|
#define PRIMOSDK_NOTLOADED 0x1003
|
|
#define PRIMOSDK_FUNCNOTLOADED 0x1004
|
|
#define PRIMOSDK_NULLHANDLE 0x1005
|
|
#define PRIMOSDK_INTERR 0x1006
|
|
#define PRIMOSDK_UNLOCK 0
|
|
#define PRIMOSDK_WRITE 0
|
|
#include "../primo/obj_primo.h"
|
|
|
|
|
|
// MAXDWORD - for not care
|
|
typedef struct _WAMEDIUMINFO
|
|
{
|
|
DWORD medium;
|
|
DWORD mediumType;
|
|
DWORD tracks;
|
|
DWORD mediumFormat;
|
|
DWORD freeSectors;
|
|
DWORD usedSectors;
|
|
DWORD protectedDVD;
|
|
DWORD erasable;
|
|
DWORD recordable;
|
|
DWORD isCD;
|
|
DWORD isDCD;
|
|
DWORD isDVD;
|
|
DWORD isDLDVD;
|
|
}WAMEDIUMINFO;
|
|
|
|
|
|
typedef struct _WABURNSTRUCT
|
|
{
|
|
obj_primo *primoSDK; // sdk object
|
|
DWORD drive; // working drive (filled by BeginBurn)
|
|
PBYTE blocker; // current blocker name (filled by BeginBurn)
|
|
int eject; // if set to TRUE - endBurn will eject disc otherwise just stop motor
|
|
} WABURNSTRUCT; // passed to the BeginBurn or EndBurn functions
|
|
|
|
BURNLIB_API DWORD GetMediumInfo(obj_primo *primoSDK, DWORD *drive, WAMEDIUMINFO *info);
|
|
BURNLIB_API DWORD BeginBurn(obj_primo *primoSDK, DWORD drive, WABURNSTRUCT *burnstruct);
|
|
BURNLIB_API DWORD EndBurn(WABURNSTRUCT *burnstruct);
|
|
|
|
#endif // NULLSOFT_PRIMOSDK_INTEGRATION_HEADER
|