fsrmreports.idl 15 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. /**
  2. * This file is part of the mingw-w64 runtime package.
  3. * No warranty is given; refer to the file DISCLAIMER within this package.
  4. */
  5. import "oaidl.idl";
  6. import "fsrmenums.idl";
  7. import "fsrm.idl";
  8. cpp_quote("#include <winapifamily.h>")
  9. cpp_quote("")
  10. cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
  11. interface IFsrmFileManagementJob;
  12. interface IFsrmFileManagementJobManager;
  13. interface IFsrmPropertyCondition;
  14. interface IFsrmReport;
  15. interface IFsrmReportJob;
  16. interface IFsrmReportManager;
  17. const DISPID FSRM_DISPID_REPORT_MANAGER = FSRM_DISPID_FEATURE_REPORTS | 0x100000;
  18. const DISPID FSRM_DISPID_REPORT_JOB = FSRM_DISPID_FEATURE_REPORTS | 0x200000;
  19. const DISPID FSRM_DISPID_REPORT = FSRM_DISPID_FEATURE_REPORTS | 0x300000;
  20. const DISPID FSRM_DISPID_REPORT_SCHEDULER = FSRM_DISPID_FEATURE_REPORTS | 0x400000;
  21. const DISPID FSRM_DISPID_FILE_MANAGEMENT_JOB_MANAGER = FSRM_DISPID_FEATURE_REPORTS | 0x500000;
  22. const DISPID FSRM_DISPID_FILE_MANAGEMENT_JOB = FSRM_DISPID_FEATURE_REPORTS | 0x600000;
  23. const DISPID FSRM_DISPID_FILE_MANAGEMENT_NOTIFICATION = FSRM_DISPID_FEATURE_REPORTS | 0x700000;
  24. const DISPID FSRM_DISPID_PROPERTY_CONDITION = FSRM_DISPID_FEATURE_REPORTS | 0x800000;
  25. const DISPID FSRM_DISPID_FILE_CONDITION = FSRM_DISPID_FEATURE_REPORTS | 0x900000;
  26. const DISPID FSRM_DISPID_FILE_CONDITION_PROPERTY = FSRM_DISPID_FEATURE_REPORTS | 0xa00000;
  27. const DISPID FSRM_DISPID_FILE_MANAGEMENT_JOB_2 = FSRM_DISPID_FEATURE_REPORTS | 0xb00000;
  28. [odl, uuid (d8cc81d9-46b8-4fa4-bfa5-4aa9dec9b638), version (1.0), dual, oleautomation]
  29. interface IFsrmReport : IDispatch {
  30. [propget, id (FSRM_DISPID_REPORT | 0x81)] HRESULT Type ([out, retval] FsrmReportType *reportType);
  31. [propget, id (FSRM_DISPID_REPORT | 0x82)] HRESULT Name ([out, retval] BSTR *name);
  32. [propput, id (FSRM_DISPID_REPORT | 0x82)] HRESULT Name ([in] BSTR name);
  33. [propget, id (FSRM_DISPID_REPORT | 0x83)] HRESULT Description ([out, retval] BSTR *description);
  34. [propput, id (FSRM_DISPID_REPORT | 0x83)] HRESULT Description ([in] BSTR description);
  35. [propget, id (FSRM_DISPID_REPORT | 0x84)] HRESULT LastGeneratedFileNamePrefix ([out, retval] BSTR *prefix);
  36. [id (FSRM_DISPID_REPORT | 0x1)] HRESULT GetFilter ([in] FsrmReportFilter filter,[out, retval] VARIANT *filterValue);
  37. [id (FSRM_DISPID_REPORT | 0x2)] HRESULT SetFilter ([in] FsrmReportFilter filter,[in] VARIANT filterValue);
  38. [id (FSRM_DISPID_REPORT | 0x3)] HRESULT Delete ();
  39. };
  40. [odl, uuid (6879caf9-6617-4484-8719-71c3d8645f94), version (1.0), dual, oleautomation]
  41. interface IFsrmReportScheduler : IDispatch {
  42. [id (FSRM_DISPID_REPORT_SCHEDULER | 0x1)] HRESULT VerifyNamespaces ([in] VARIANT *namespacesSafeArray);
  43. [id (FSRM_DISPID_REPORT_SCHEDULER | 0x2)] HRESULT CreateScheduleTask ([in] BSTR taskName,[in] VARIANT *namespacesSafeArray,[in] BSTR serializedTask);
  44. [id (FSRM_DISPID_REPORT_SCHEDULER | 0x3)] HRESULT ModifyScheduleTask ([in] BSTR taskName,[in] VARIANT *namespacesSafeArray,[in] BSTR serializedTask);
  45. [id (FSRM_DISPID_REPORT_SCHEDULER | 0x4)] HRESULT DeleteScheduleTask ([in] BSTR taskName);
  46. };
  47. [odl, uuid (ee321ecb-d95e-48e9-907c-c7685a013235), version (1.0), dual, oleautomation]
  48. interface IFsrmFileManagementJobManager : IDispatch {
  49. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB_MANAGER | 0x81)] HRESULT ActionVariables ([out, retval] SAFEARRAY (VARIANT) *variables);
  50. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB_MANAGER | 0x82)] HRESULT ActionVariableDescriptions ([out, retval] SAFEARRAY (VARIANT) *descriptions);
  51. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB_MANAGER | 0x1)] HRESULT EnumFileManagementJobs ([in, defaultvalue (FsrmEnumOptions_None)] FsrmEnumOptions options,[out, retval] IFsrmCollection **fileManagementJobs);
  52. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB_MANAGER | 0x2)] HRESULT CreateFileManagementJob ([out, retval] IFsrmFileManagementJob **fileManagementJob);
  53. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB_MANAGER | 0x3)] HRESULT GetFileManagementJob ([in] BSTR name,[out, retval] IFsrmFileManagementJob **fileManagementJob);
  54. };
  55. [odl, uuid (326af66f-2ac0-4f68-bf8c-4759f054fa29), version (1.0), dual, oleautomation]
  56. interface IFsrmPropertyCondition : IDispatch {
  57. [propget, id (FSRM_DISPID_PROPERTY_CONDITION | 0x81)] HRESULT Name ([out, retval] BSTR *name);
  58. [propput, id (FSRM_DISPID_PROPERTY_CONDITION | 0x81)] HRESULT Name ([in] BSTR name);
  59. [propget, id (FSRM_DISPID_PROPERTY_CONDITION | 0x82)] HRESULT Type ([out, retval] FsrmPropertyConditionType *type);
  60. [propput, id (FSRM_DISPID_PROPERTY_CONDITION | 0x82)] HRESULT Type ([in] FsrmPropertyConditionType type);
  61. [propget, id (FSRM_DISPID_PROPERTY_CONDITION | 0x83)] HRESULT Value ([out, retval] BSTR *value);
  62. [propput, id (FSRM_DISPID_PROPERTY_CONDITION | 0x83)] HRESULT Value ([in] BSTR value);
  63. [id (FSRM_DISPID_PROPERTY_CONDITION | 0x1)] HRESULT Delete ();
  64. };
  65. [odl, uuid (27b899fe-6ffa-4481-a184-d3daade8a02b), version (1.0), dual, oleautomation]
  66. interface IFsrmReportManager : IDispatch {
  67. [id (FSRM_DISPID_REPORT_MANAGER | 0x1)] HRESULT EnumReportJobs ([in, defaultvalue (FsrmEnumOptions_None)] FsrmEnumOptions options,[out, retval] IFsrmCollection **reportJobs);
  68. [id (FSRM_DISPID_REPORT_MANAGER | 0x2)] HRESULT CreateReportJob ([out, retval] IFsrmReportJob **reportJob);
  69. [id (FSRM_DISPID_REPORT_MANAGER | 0x3)] HRESULT GetReportJob ([in] BSTR taskName,[out, retval] IFsrmReportJob **reportJob);
  70. [id (FSRM_DISPID_REPORT_MANAGER | 0x4)] HRESULT GetOutputDirectory ([in] FsrmReportGenerationContext context,[out, retval] BSTR *path);
  71. [id (FSRM_DISPID_REPORT_MANAGER | 0x5)] HRESULT SetOutputDirectory ([in] FsrmReportGenerationContext context,[in] BSTR path);
  72. [id (FSRM_DISPID_REPORT_MANAGER | 0x6)] HRESULT IsFilterValidForReportType ([in] FsrmReportType reportType,[in] FsrmReportFilter filter,[out, retval] VARIANT_BOOL *valid);
  73. [id (FSRM_DISPID_REPORT_MANAGER | 0x7)] HRESULT GetDefaultFilter ([in] FsrmReportType reportType,[in] FsrmReportFilter filter,[out, retval] VARIANT *filterValue);
  74. [id (FSRM_DISPID_REPORT_MANAGER | 0x8)] HRESULT SetDefaultFilter ([in] FsrmReportType reportType,[in] FsrmReportFilter filter,[in] VARIANT filterValue);
  75. [id (FSRM_DISPID_REPORT_MANAGER | 0x9)] HRESULT GetReportSizeLimit ([in] FsrmReportLimit limit,[out, retval] VARIANT *limitValue);
  76. [id (FSRM_DISPID_REPORT_MANAGER | 0xa)] HRESULT SetReportSizeLimit ([in] FsrmReportLimit limit,[in] VARIANT limitValue);
  77. };
  78. [odl, uuid (38e87280-715c-4c7d-a280-ea1651a19fef), version (1.0), dual, oleautomation]
  79. interface IFsrmReportJob : IFsrmObject {
  80. [propget, id (FSRM_DISPID_REPORT_JOB | 0x81)] HRESULT Task ([out, retval] BSTR *taskName);
  81. [propput, id (FSRM_DISPID_REPORT_JOB | 0x81)] HRESULT Task ([in] BSTR taskName);
  82. [propget, id (FSRM_DISPID_REPORT_JOB | 0x82)] HRESULT NamespaceRoots ([out, retval] SAFEARRAY (VARIANT) *namespaceRoots);
  83. [propput, id (FSRM_DISPID_REPORT_JOB | 0x82)] HRESULT NamespaceRoots ([in] SAFEARRAY (VARIANT) namespaceRoots);
  84. [propget, id (FSRM_DISPID_REPORT_JOB | 0x83)] HRESULT Formats ([out, retval] SAFEARRAY (VARIANT) *formats);
  85. [propput, id (FSRM_DISPID_REPORT_JOB | 0x83)] HRESULT Formats ([in] SAFEARRAY (VARIANT) formats);
  86. [propget, id (FSRM_DISPID_REPORT_JOB | 0x84)] HRESULT MailTo ([out, retval] BSTR *mailTo);
  87. [propput, id (FSRM_DISPID_REPORT_JOB | 0x84)] HRESULT MailTo ([in] BSTR mailTo);
  88. [propget, id (FSRM_DISPID_REPORT_JOB | 0x85)] HRESULT RunningStatus ([out, retval] FsrmReportRunningStatus *runningStatus);
  89. [propget, id (FSRM_DISPID_REPORT_JOB | 0x86)] HRESULT LastRun ([out, retval] DATE *lastRun);
  90. [propget, id (FSRM_DISPID_REPORT_JOB | 0x87)] HRESULT LastError ([out, retval] BSTR *lastError);
  91. [propget, id (FSRM_DISPID_REPORT_JOB | 0x88)] HRESULT LastGeneratedInDirectory ([out, retval] BSTR *path);
  92. [id (FSRM_DISPID_REPORT_JOB | 0x01)] HRESULT EnumReports ([out, retval] IFsrmCollection **reports);
  93. [id (FSRM_DISPID_REPORT_JOB | 0x02)] HRESULT CreateReport ([in] FsrmReportType reportType,[out, retval] IFsrmReport **report);
  94. [id (FSRM_DISPID_REPORT_JOB | 0x03)] HRESULT Run ([in] FsrmReportGenerationContext context);
  95. [id (FSRM_DISPID_REPORT_JOB | 0x04)] HRESULT WaitForCompletion ([in] long waitSeconds,[out, retval] VARIANT_BOOL *completed);
  96. [id (FSRM_DISPID_REPORT_JOB | 0x05)] HRESULT Cancel ();
  97. };
  98. [odl, uuid (0770687e-9f36-4d6f-8778-599d188461c9), version (1.0), dual, oleautomation]
  99. interface IFsrmFileManagementJob : IFsrmObject {
  100. const LONG FsrmDaysNotSpecified = -1;
  101. const DATE FsrmDateNotSpecified = ((DATE) -1);
  102. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x81)] HRESULT Name ([out, retval] BSTR *name);
  103. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x81)] HRESULT Name ([in] BSTR name);
  104. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x82)] HRESULT NamespaceRoots ([out, retval] SAFEARRAY (VARIANT) *namespaceRoots);
  105. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x82)] HRESULT NamespaceRoots ([in] SAFEARRAY (VARIANT) namespaceRoots);
  106. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x83)] HRESULT Enabled ([out, retval] VARIANT_BOOL *enabled);
  107. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x83)] HRESULT Enabled ([in] VARIANT_BOOL enabled);
  108. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x84)] HRESULT OperationType ([out, retval] FsrmFileManagementType *operationType);
  109. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x84)] HRESULT OperationType ([in] FsrmFileManagementType operationType);
  110. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x85)] HRESULT ExpirationDirectory ([out, retval] BSTR *expirationDirectory);
  111. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x85)] HRESULT ExpirationDirectory ([in] BSTR expirationDirectory);
  112. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x86)] HRESULT CustomAction ([out, retval] IFsrmActionCommand **action);
  113. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x87)] HRESULT Notifications ([out, retval] SAFEARRAY (VARIANT) *notifications);
  114. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x88)] HRESULT Logging ([out, retval] long *loggingFlags);
  115. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x88)] HRESULT Logging ([in] long loggingFlags);
  116. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x89)] HRESULT ReportEnabled ([out, retval] VARIANT_BOOL *reportEnabled);
  117. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x89)] HRESULT ReportEnabled ([in] VARIANT_BOOL reportEnabled);
  118. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x8a)] HRESULT Formats ([out, retval] SAFEARRAY (VARIANT) *formats);
  119. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x8a)] HRESULT Formats ([in] SAFEARRAY (VARIANT) formats);
  120. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x8b)] HRESULT MailTo ([out, retval] BSTR *mailTo);
  121. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x8b)] HRESULT MailTo ([in] BSTR mailTo);
  122. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x8c)] HRESULT DaysSinceFileCreated ([out, retval] long *daysSinceCreation);
  123. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x8c)] HRESULT DaysSinceFileCreated ([in] long daysSinceCreation);
  124. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x8d)] HRESULT DaysSinceFileLastAccessed ([out, retval] long *daysSinceAccess);
  125. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x8d)] HRESULT DaysSinceFileLastAccessed ([in] long daysSinceAccess);
  126. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x8e)] HRESULT DaysSinceFileLastModified ([out, retval] long *daysSinceModify);
  127. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x8e)] HRESULT DaysSinceFileLastModified ([in] long daysSinceModify);
  128. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x8f)] HRESULT PropertyConditions ([out, retval] IFsrmCollection **propertyConditions);
  129. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x90)] HRESULT FromDate ([out, retval] DATE *fromDate);
  130. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x90)] HRESULT FromDate ([in] DATE fromDate);
  131. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x91)] HRESULT Task ([out, retval] BSTR *taskName);
  132. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x91)] HRESULT Task ([in] BSTR taskName);
  133. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x92)] HRESULT Parameters ([out, retval] SAFEARRAY (VARIANT) *parameters);
  134. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x92)] HRESULT Parameters ([in] SAFEARRAY (VARIANT) parameters);
  135. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x93)] HRESULT RunningStatus ([out, retval] FsrmReportRunningStatus *runningStatus);
  136. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x94)] HRESULT LastError ([out, retval] BSTR *lastError);
  137. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x95)] HRESULT LastReportPathWithoutExtension ([out, retval] BSTR *path);
  138. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x96)] HRESULT LastRun ([out, retval] DATE *lastRun);
  139. [propget, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x97)] HRESULT FileNamePattern ([out, retval] BSTR *fileNamePattern);
  140. [propput, id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x97)] HRESULT FileNamePattern ([in] BSTR fileNamePattern);
  141. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x1)] HRESULT Run ([in] FsrmReportGenerationContext context);
  142. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x2)] HRESULT WaitForCompletion ([in] long waitSeconds,[out, retval] VARIANT_BOOL *completed);
  143. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x3)] HRESULT Cancel ();
  144. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x4)] HRESULT AddNotification ([in] long days);
  145. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x5)] HRESULT DeleteNotification ([in] long days);
  146. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x6)] HRESULT ModifyNotification ([in] long days,[in] long newDays);
  147. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x7)] HRESULT CreateNotificationAction ([in] long days,[in] FsrmActionType actionType,[out, retval] IFsrmAction **action);
  148. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB | 0x8)] HRESULT EnumNotificationActions ([in] long days,[out, retval] IFsrmCollection **actions);
  149. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB_MANAGER | 0x9)] HRESULT CreatePropertyCondition ([in] BSTR name,[out, retval] IFsrmPropertyCondition **propertyCondition);
  150. [id (FSRM_DISPID_FILE_MANAGEMENT_JOB_MANAGER | 0xa)] HRESULT CreateCustomAction ([out, retval] IFsrmActionCommand **customAction);
  151. };
  152. [odl, uuid (70684ffc-691a-4a1a-B922-97752e138cc1), version (1.0), dual, oleautomation]
  153. interface IFsrmFileCondition : IDispatch {
  154. [propget, id (FSRM_DISPID_FILE_CONDITION | 0x81)] HRESULT Type ([out, retval] FsrmFileConditionType *pVal);
  155. [id (FSRM_DISPID_FILE_CONDITION | 0x1)] HRESULT Delete ();
  156. };
  157. [odl, uuid (81926775-B981-4479-988f-da171d627360), version (1.0), dual, oleautomation]
  158. interface IFsrmFileConditionProperty : IFsrmFileCondition {
  159. [propget, id (FSRM_DISPID_FILE_CONDITION_PROPERTY | 0x81)] HRESULT PropertyName ([out, retval] BSTR *pVal);
  160. [propput, id (FSRM_DISPID_FILE_CONDITION_PROPERTY | 0x81)] HRESULT PropertyName ([in] BSTR newVal);
  161. [propget, id (FSRM_DISPID_FILE_CONDITION_PROPERTY | 0x82)] HRESULT PropertyId ([out, retval] FsrmFileSystemPropertyId *pVal);
  162. [propput, id (FSRM_DISPID_FILE_CONDITION_PROPERTY | 0x82)] HRESULT PropertyId ([in] FsrmFileSystemPropertyId newVal);
  163. [propget, id (FSRM_DISPID_FILE_CONDITION_PROPERTY | 0x83)] HRESULT Operator ([out, retval] FsrmPropertyConditionType *pVal);
  164. [propput, id (FSRM_DISPID_FILE_CONDITION_PROPERTY | 0x83)] HRESULT Operator ([in] FsrmPropertyConditionType newVal);
  165. [propget, id (FSRM_DISPID_FILE_CONDITION_PROPERTY | 0x84)] HRESULT ValueType ([out, retval] FsrmPropertyValueType *pVal);
  166. [propput, id (FSRM_DISPID_FILE_CONDITION_PROPERTY | 0x84)] HRESULT ValueType ([in] FsrmPropertyValueType newVal);
  167. [propget, id (FSRM_DISPID_FILE_CONDITION_PROPERTY | 0x85)] HRESULT Value ([out, retval] VARIANT *pVal);
  168. [propput, id (FSRM_DISPID_FILE_CONDITION_PROPERTY | 0x85)] HRESULT Value ([in] VARIANT newVal);
  169. };
  170. cpp_quote("#endif")