//PBFREEDB Verion 2.0
//Version: 2.0
pbfreedb;
GUID = {F13D8ED2-1094-4B1E-BFFC-FE55CC69665B};


//CFREEDBEVENT is a custom interface for Direct VTable access.
Interface CFREEDBEVENT;
GUID = {470509A9-12CF-4E04-8678-335067BB5682};
  function PROTOCOLERROR(FEHLER: I4; FSTR: BSTR); stdcall;

//PFREEDB is a dual interface with VTable/Dispatch access.
Dispatch PFREEDB;
GUID = {61D3F48D-299A-4754-8DFB-CC42BF5848B7};
  function QueryInterface(riid: ^GUID; out ppvObj: ^^VOID); stdcall;
  function AddRef: UI4; stdcall;
  function Release: UI4; stdcall;
  function GetTypeInfoCount(out pctinfo: ^UINT); stdcall;
  function GetTypeInfo(itinfo: UINT; lcid: UI4; out pptinfo: ^^VOID); stdcall;
  function GetIDsOfNames(riid: ^GUID; rgszNames: ^^I1; cNames: UINT; lcid: UI4; out rgdispid: ^I4); stdcall;
  function Invoke(dispidMember: I4; riid: ^GUID; lcid: UI4; wFlags: UI2; pdispparams: ^DISPPARAMS; out pvarResult: ^Variant; out pexcepinfo: ^EXCEPINFO; out puArgErr: ^UINT); stdcall;
  property-get MDB_dbWorkspace: ^IDispatch; stdcall;
  property-get DAOUpdateMode: I2; stdcall;
  property-put DAOUpdateMode(: I2); stdcall;
  property-get DAOEnable: I2; stdcall;
  property-put DAOEnable(: I2); stdcall;
  property-get DeleteFreeDB: I2; stdcall;
  property-put DeleteFreeDB(: I2); stdcall;
  property-get DAOAutoSave: I2; stdcall;
  property-put DAOAutoSave(: I2); stdcall;
  property-get dbEngineEnable: I2; stdcall;
  property-put dbEngineEnable(: I2); stdcall;
  property-get InternetEnable: I2; stdcall;
  property-put InternetEnable(: I2); stdcall;
  property-get CDTextEnable: I2; stdcall;
  property-put CDTextEnable(: I2); stdcall;
  property-put ParentHandle(: I4); stdcall;
  property-get GetCDType: I2; stdcall;
  property-get ReadType: I2; stdcall;
  property-get DriveLetter: BSTR; stdcall;
  property-put DriveLetter(: BSTR); stdcall;
  property-get GetMediaID: BSTR; stdcall;
  property-get AppName: BSTR; stdcall;
  property-put AppName(: BSTR); stdcall;
  property-get DAOERROR: I4; stdcall;
  property-get QueryLocalDatabase: I2; stdcall;
  property-put QueryLocalDatabase(: I2); stdcall;
  property-get GetArtistName: BSTR; stdcall;
  property-get GetTrackName(IDX: I2): BSTR; stdcall;
  property-get GetTrackCDName(IDX: I2): BSTR; stdcall;
  property-get GetTrackNotes(IDX: I2): BSTR; stdcall;
  property-get GetTrackTime(IDX: I2): I2; stdcall;
  property-get GetServer(IDX: I2): BSTR; stdcall;
  property-get GetAlbumTracks: I4; stdcall;
  property-get GetAlbumYear: BSTR; stdcall;
  property-get GetAlbumNotes: BSTR; stdcall;
  property-get GetAlbumName: BSTR; stdcall;
  property-get GetAlbumGenre: BSTR; stdcall;
  property-get GetAlbumCategory: BSTR; stdcall;
  property-get GetAlbumLength: I4; stdcall;
  property-get AppVersion: BSTR; stdcall;
  property-put AppVersion(: BSTR); stdcall;
  property-get EmailAddress: BSTR; stdcall;
  property-put EmailAddress(: BSTR); stdcall;
  property-get DAODir: BSTR; stdcall;
  property-put DAODir(: BSTR); stdcall;
  property-get CDDBServer: BSTR; stdcall;
  property-put CDDBServer(: BSTR); stdcall;
  property-get CDDBInterface: I2; stdcall;
  property-put CDDBInterface(: I2); stdcall;
  property-get CDDBMode: I2; stdcall;
  property-put CDDBMode(: I2); stdcall;
  property-put UseFirstMatch(: I2); stdcall;
  property-get AllowSubmission: I2; stdcall;
  property-put AllowSubmission(: I2); stdcall;
  property-get CDDBFilePath: BSTR; stdcall;
  property-put CDDBFilePath(: BSTR); stdcall;
  property-get MatchCodeNum: I2; stdcall;
  property-get MachCode: BSTR; stdcall;
  property-get CDDBLanguage: I2; stdcall;
  property-put CDDBLanguage(: I2); stdcall;
  property-get CDIsReady(out DRIVESTR: ^BSTR): I4; stdcall;
  property-get CDDoorIsOpen: I4; stdcall;
  function SecondsToTimeString(SECONDS: I2): BSTR; stdcall;
  function GetMediaTOC(DriveLetter: ^BSTR): BSTR; stdcall;
  function GetMediaInfo(DriveLetter: ^BSTR): BSTR; stdcall;
  function GetCdRoms: BSTR; stdcall;
  function CDDoorToggle(out DRIVESTR: ^BSTR); stdcall;
  function LookupMediaByCD(out STRDRIVE: ^BSTR): I2; stdcall;
  function LookupMediaDirByToc(MEDIATOC: ^BSTR): I2; stdcall;
  function LookupMediaByToc(out MEDIATOC: ^BSTR): I2; stdcall;
  function ConvertFreeDBFileToMDB(HPARENT: UI4): I2; stdcall;
  function ReviseMediaEntry(out MEDIATOC: ^BSTR): I2; stdcall;
  function GetServerSites: I2; stdcall;
  function ERRDESC(ERRNO: I4): BSTR; stdcall;

CoClass FREEDB;
GUID = {E77563CD-28AE-4822-9169-82F9BD934E23};

