JD2022-TU1/main/extern/Camcam/PlatformSDK/Include/fsrmenums.idl

231 lines
5.9 KiB
Text

//////////////////////////////////////
// Imports
//
import "oaidl.idl";
import "ocidl.idl";
//////////////////////////////////////
// Typedefs and enums
//
//
// FSRM object ID
//
typedef GUID FSRM_OBJECT_ID;
//
// Quota flags
//
typedef enum _FsrmQuotaFlags {
// Persistent flags
FsrmQuotaFlags_Enforce = 0x00000100,
FsrmQuotaFlags_Disable = 0x00000200,
// Quota status flags
FsrmQuotaFlags_StatusIncomplete = 0x00010000,
FsrmQuotaFlags_StatusRebuilding = 0x00020000
} FsrmQuotaFlags;
//
// File screen flags
//
typedef enum _FsrmFileScreenFlags {
// Persistent flags
FsrmFileScreenFlags_Enforce = 0x00000001
} FsrmFileScreenFlags;
//
// General Collection
//
typedef enum _FsrmCollectionState {
FsrmCollectionState_Fetching = 1,
FsrmCollectionState_Committing = 2,
FsrmCollectionState_Complete = 3,
FsrmCollectionState_Cancelled = 4
} FsrmCollectionState;
typedef enum _FsrmEnumOptions {
FsrmEnumOptions_None = 0x00000000,
FsrmEnumOptions_Asynchronous = 0x00000001,
FsrmEnumOptions_CheckRecycleBin = 0x00000002,
FsrmEnumOptions_IncludeClusterNodes = 0x00000004
} FsrmEnumOptions;
typedef enum _FsrmCommitOptions {
FsrmCommitOptions_None = 0x00000000,
FsrmCommitOptions_Asynchronous = 0x00000001
} FsrmCommitOptions;
typedef enum _FsrmTemplateApplyOptions {
FsrmTemplateApplyOptions_ApplyToDerivedMatching = 1,
FsrmTemplateApplyOptions_ApplyToDerivedAll = 2
} FsrmTemplateApplyOptions;
//
// General Action
//
typedef enum _FsrmActionType {
FsrmActionType_Unknown = 0,
FsrmActionType_EventLog = 1,
FsrmActionType_Email = 2,
FsrmActionType_Command = 3,
FsrmActionType_Report = 4
} FsrmActionType;
//
// EventLog Action
//
typedef enum _FsrmEventType {
FsrmEventType_Unknown = 0,
FsrmEventType_Information = 1,
FsrmEventType_Warning = 2,
FsrmEventType_Error = 3
} FsrmEventType;
//
// Command Action
//
typedef enum _FsrmAccountType {
FsrmAccountType_Unknown = 0,
FsrmAccountType_NetworkService = 1,
FsrmAccountType_LocalService = 2,
FsrmAccountType_LocalSystem = 3
} FsrmAccountType;
//
// Storage Reports
//
typedef enum _FsrmReportType {
FsrmReportType_Unknown = 0,
FsrmReportType_LargeFiles = 1,
FsrmReportType_FilesByType = 2,
FsrmReportType_LeastRecentlyAccessed = 3,
FsrmReportType_MostRecentlyAccessed = 4,
FsrmReportType_QuotaUsage = 5,
FsrmReportType_FilesByOwner = 6,
FsrmReportType_ExportReport = 7,
FsrmReportType_DuplicateFiles = 8,
FsrmReportType_FileScreenAudit = 9
} FsrmReportType;
typedef enum _FsrmReportFormat {
FsrmReportFormat_Unknown = 0,
FsrmReportFormat_DHtml = 1,
FsrmReportFormat_Html = 2,
FsrmReportFormat_Txt = 3,
FsrmReportFormat_Csv = 4,
FsrmReportFormat_Xml = 5
} FsrmReportFormat;
typedef enum _FsrmReportRunningStatus {
FsrmReportRunningStatus_Unknown = 0,
FsrmReportRunningStatus_NotRunning = 1,
FsrmReportRunningStatus_Queued = 2,
FsrmReportRunningStatus_Running = 3
} FsrmReportRunningStatus;
typedef enum _FsrmReportGenerationContext {
FsrmReportGenerationContext_Undefined = 1,
FsrmReportGenerationContext_ScheduledReport = 2,
FsrmReportGenerationContext_InteractiveReport = 3,
FsrmReportGenerationContext_IncidentReport = 4
} FsrmReportGenerationContext;
//
// Report filtering definitions
// ============================
//
// Filter Name Description Valid Reports Valid Value Types
// -------------- ---------------------- -------------------------- ------------------------------------------
// MinSize Minimum size Large Files uint64 or string representation
//
// MinAgeDays Minimum age in days Least Recently Accessed uint32 or string representation
// File Screen Audit
//
// MaxAgeDays Maximum age in days Most Recently Accessed uint32 or string representation
//
// MinQuotaUsage Minimum % quota usage Quota Usage uint32 or string representation
//
// FileGroups File group names Files by Type SAFEARRAY of strings (file group names)
//
// Owners Owners Files by Owner SAFEARRAY of strings (names or SIDs)
// File Screen Audit
//
// NamePattern File name pattern Large Files string (DOS file name pattern)
// Files by Type
// Least Recently Accessed
// Most Recently Accessed
// Files by Owner
// Export Report
// Duplicate Files
//
typedef enum _FsrmReportFilter {
FsrmReportFilter_MinSize = 1,
FsrmReportFilter_MinAgeDays = 2,
FsrmReportFilter_MaxAgeDays = 3,
FsrmReportFilter_MinQuotaUsage = 4,
FsrmReportFilter_FileGroups = 5,
FsrmReportFilter_Owners = 6,
FsrmReportFilter_NamePattern = 7
} FsrmReportFilter;
typedef enum _FsrmReportLimit {
FsrmReportLimit_MaxFiles = 1,
FsrmReportLimit_MaxFileGroups = 2,
FsrmReportLimit_MaxOwners = 3,
FsrmReportLimit_MaxFilesPerFileGroup = 4,
FsrmReportLimit_MaxFilesPerOwner = 5,
FsrmReportLimit_MaxFilesPerDuplGroup = 6,
FsrmReportLimit_MaxDuplicateGroups = 7,
FsrmReportLimit_MaxQuotas = 8,
FsrmReportLimit_MaxFileScreenEvents = 9
} FsrmReportLimit;