Files
BuildTools
Qt
Src
Agave
Components
Elevator
Mastering
Plugins
ReplayGainAnalysis
WAT
Wasabi
Wasabi2
Winamp
aacPlus
aacdec
aacdec-mft
adpcm
alac
albumart
apev2
auth
bmp
burnlib
resdll
resources
api.h
burnlib.h
burnlib.rc
burnlib.sln
burnlib.vcproj
common.cpp
eraseMedium.cpp
eraseMedium.h
item.cpp
item.h
main.cpp
main.h
manager.h
playlist.cpp
playlist.h
primosdk.h
resource.h
uiBurnPlayList.cpp
uiBurnPlaylist.h
uiCheckMedium.cpp
uiCheckMedium.h
uiEraseMedium.cpp
uiEraseMedium.h
uiUnitReady.cpp
uiUnitReady.h
uiUpdatingData.cpp
uiUpdatingData.h
unitStatusText.cpp
codesign
config
devices
external_dependencies
f263
filereader
freetypewac
gif
gracenote
h264
h264dec
id3v2
ie_plugin
installer
jpeg
libvp6
libvpShared
mp3-mpg123
mp4v
mpeg4dec
nde
nprt_plugin
ns-eel
ns-eel2
nsavi
nsmkv
nsutil
nsv
nsvdec_vp3
nsvdec_vp5
nsvdec_vp6
nswasabi
nu
omBrowser
pcm
pfc
playlist
plist
png
replicant
resources
tagz
tataki
theora
timer
vlb
vp32
vp6
vp8x
wbm
winampAll
winampa
xml
xspf
vcpkg-ports
.gitignore
LICENSE.md
README.md
automate-git.py
cef_x86.bat
install-packages.cmd
vcpkg_version_finder.py
winampAll_2019.sln
winamp/Src/burnlib/primosdk.h
2024-09-24 14:54:57 +02:00

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