bits5_0.idl 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. /*
  2. * Background Intelligent Transfer Service (BITS) 5.0 interface
  3. *
  4. * Copyright 2020 Aaron Hill
  5. *
  6. * This library is free software; you can redistribute it and/or
  7. * modify it under the terms of the GNU Lesser General Public
  8. * License as published by the Free Software Foundation; either
  9. * version 2.1 of the License, or (at your option) any later version.
  10. *
  11. * This library is distributed in the hope that it will be useful,
  12. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  14. * Lesser General Public License for more details.
  15. *
  16. * You should have received a copy of the GNU Lesser General Public
  17. * License along with this library; if not, write to the Free Software
  18. * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
  19. *
  20. */
  21. #ifndef DO_NO_IMPORTS
  22. import "bits.idl";
  23. import "bits1_5.idl";
  24. import "bits2_0.idl";
  25. import "bits2_5.idl";
  26. import "bits3_0.idl";
  27. #endif
  28. cpp_quote("#define BITS_COST_STATE_TRANSFER_ALWAYS 0x800000ff")
  29. [
  30. uuid(e847030c-bbba-4657-af6d-484aa42bf1fe),
  31. odl
  32. ]
  33. interface IBackgroundCopyJob5: IBackgroundCopyJob4
  34. {
  35. typedef enum {
  36. BITS_JOB_PROPERTY_ID_COST_FLAGS = 1,
  37. BITS_JOB_PROPERTY_NOTIFICATION_CLSID = 2,
  38. BITS_JOB_PROPERTY_DYNAMIC_CONTENT = 3,
  39. BITS_JOB_PROPERTY_HIGH_PERFORMANCE = 4,
  40. BITS_JOB_PROPERTY_MAX_DOWNLOAD_SIZE = 5,
  41. BITS_JOB_PROPERTY_USE_STORED_CREDENTIALS = 7,
  42. BITS_JOB_PROPERTY_MINIMUM_NOTIFICATION_INTERVAL_MS = 9,
  43. BITS_JOB_PROPERTY_ON_DEMAND_MODE = 10,
  44. } BITS_JOB_PROPERTY_ID;
  45. typedef union _BITS_JOB_PROPERTY_VALUE {
  46. DWORD Dword;
  47. GUID ClsID;
  48. BOOL Enable;
  49. UINT64 Uint64;
  50. BG_AUTH_TARGET Target;
  51. } BITS_JOB_PROPERTY_VALUE;
  52. HRESULT SetProperty(BITS_JOB_PROPERTY_ID id, BITS_JOB_PROPERTY_VALUE value);
  53. HRESULT GetProperty(BITS_JOB_PROPERTY_ID id, [out, ref] BITS_JOB_PROPERTY_VALUE *value);
  54. }