123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990 |
- #ifndef CDDBPLUGIN_WORKORDERMGR_H
- #define CDDBPLUGIN_WORKORDERMGR_H
- // sig gen headers
- #include "CDDBPlugInBase.h"
- #define CDDBMODULE_WORKORDERMGR_IF_NAME "workordermanagerModuleID"
- #define CDDBMODULE_WORKORDERMGR 0x10000
- #define CDDBMODULE_QUERY_INTERFACE_NAME "CDDBModuleQueryInterface"
- // supported interfaces
- #define WORK_ORDER_MANAGER_BASE_INTERFACE "CDDBModuleInterface"
- #define WORK_ORDER_MANAGER_INTERFACE "workordermanager"
- #define WORK_ORDER_MANAGER_INTERFACE2 "workordermanager2"
- #ifndef CDDB_PLUGIN_SIGGEN_H
- typedef enum
- {
- SG_NoError = 0,
- SG_SignatureAcquired = 1,
- SG_SignatureNotAcquired = 2,
- SG_UnsupportedFormat = 3,
- SG_ProcessingError = 4,
- SG_InitializationError = 5,
- SG_DeinitializationError = 6,
- SG_InvalidParamError = 7,
- SG_InternalError = 8,
- SG_NotInitializedError = 9,
- SG_OutOfMemory = 10,
- SG_NotImplementedError = 11
- }
- SigGenResultCode;
- #endif //#ifndef CDDB_PLUGIN_SIGGEN_H
- //
- //
- //
- #ifndef CDDBMODULEWORKORDERMGR
- #define CDDBMODULEWORKORDERMGR
- #define CDDBMODULE_WORKORDER_MGR_VERSION 1
- typedef struct WorkOrderInstance* WorkOrderHandle;
- typedef struct
- {
- CDDBModuleInterface base;
- unsigned int version; /* current version is defined by CDDBMODULE_WORKORDER_MGR_VERSION */
- unsigned int size; /* sizeof(CDDBModuleWorkOrder) */
- unsigned int flags; /* nothing defined yet */
- int (__stdcall *Initialize)(void* cddbcontrol, char* path);
- int (__stdcall *Shutdown)(void);
- int (__stdcall *GetSigHandle)(void** handle, void* disc, long track_num);
- int (__stdcall *WriteSigData)(void* handle, void* data, long size);
- int (__stdcall *CloseSig)(void* handle);
- int (__stdcall *AbortSig)(void* handle);
- } CDDBModuleWorkOrderManagerInterface;
- typedef struct
- {
- CDDBModuleInterface base;
- /* SetAlwaysGenerate
- * Description: Enables/disables a Work Order Plugin DLL to always generate
- * a signature, regardless of work orders.
- *
- * Args: dll_filepath - full path and filename of the plugin DLL
- * for example: (C:\App\Cddb12Tone.dll)
- * b_always_generate - enable/disable ignoring work orders
- * for example: (0 or 1)
- *
- * Returns: 0 for success or an error.
- * Failure conditions include:
- * Invalid argument
- */
- int (__stdcall *SetAlwaysGenerate)(char* dll_filepath,long b_always_generate);
- } CDDBModuleWorkOrderManagerInterface2;
- #endif /* CDDBMODULEWORKORDERMGR */
- #endif /* CDDBPLUGIN_WORKORDERMGR_H */
|