﻿<?xml version="1.0" encoding="utf-8"?>
<PowerShellMetadata xmlns="http://schemas.microsoft.com/cmdlets-over-objects/2009/11">
  <Class ClassName="ROOT\Microsoft\Windows\EventTracingManagement\MSFT_AutologgerConfig" ClassVersion="1.0.0.0">
    <Version>1.0.0.0</Version>
    <DefaultNoun>AutologgerConfig</DefaultNoun>
    <InstanceCmdlets>
      <GetCmdletParameters>
        <QueryableProperties>
          <Property PropertyName="Name">
            <Type PSType="System.String" />
            <RegularQuery AllowGlobbing="true">
              <CmdletParameterMetadata IsMandatory="false" Position="0" ValueFromPipelineByPropertyName="true"/>
            </RegularQuery>
          </Property>
        </QueryableProperties>
      </GetCmdletParameters>

      <Cmdlet>
        <CmdletMetadata Verb="Set" ConfirmImpact="Medium" />
        <Method MethodName="cim:ModifyInstance">
          <Parameters>
            <Parameter ParameterName="BufferSize">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="ClockType">
              <Type PSType="AutologgerConfig.ClockType" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="DisableRealtimePersistence">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="LocalFilePath">
              <Type PSType="System.String" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
             <Parameter ParameterName="FileMax">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="FlushTimer">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="Guid">
              <Type PSType="System.String" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="LogFileMode">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="MaximumFileSize">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="MaximumBuffers">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="MinimumBuffers">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="Start">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="InitStatus">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
          </Parameters>
        </Method>
        <GetCmdletParameters DefaultCmdletParameterSet="ByName">
          <QueryableProperties>
            <Property PropertyName="Name">
              <Type PSType="System.String" />
              <RegularQuery AllowGlobbing="true">
                <CmdletParameterMetadata IsMandatory="true" Position="0" ValueFromPipelineByPropertyName="true" CmdletParameterSets="ByName"/>
              </RegularQuery>
            </Property>
          </QueryableProperties>
        </GetCmdletParameters>
      </Cmdlet>

      <Cmdlet>
        <CmdletMetadata Verb="Remove" ConfirmImpact="Medium" />
        <Method MethodName="cim:DeleteInstance"/>
        <GetCmdletParameters>
          <QueryableProperties>
            <Property PropertyName="Name">
              <Type PSType="System.String" />
              <RegularQuery AllowGlobbing="true">
                <CmdletParameterMetadata IsMandatory="true" Position="0" ValueFromPipelineByPropertyName="true"/>
              </RegularQuery>
            </Property>
          </QueryableProperties>
        </GetCmdletParameters>
      </Cmdlet>
    </InstanceCmdlets>
    
    <StaticCmdlets>
      <Cmdlet>
        <CmdletMetadata Verb="New" ConfirmImpact="Medium" />
        <Method MethodName="cim:CreateInstance">
          <ReturnValue>
            <Type PSType="System.Int32" />
            <CmdletOutputMetadata>
              <ErrorCode />
            </CmdletOutputMetadata>
          </ReturnValue>
          <Parameters>
            <Parameter ParameterName="Name">
              <Type PSType="System.String" />
              <CmdletParameterMetadata IsMandatory="true" ValueFromPipeline="true">
                <ValidateNotNull />
                <ValidateNotNullOrEmpty />
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="BufferSize" DefaultValue="8">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="ClockType" DefaultValue="Performance" >
              <Type PSType="AutologgerConfig.ClockType" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="DisableRealtimePersistence">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="FileCount">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="LocalFilePath">
              <Type PSType="System.String" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
             <Parameter ParameterName="FileMax">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="FlushTimer" DefaultValue="0">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="Guid" DefaultValue="{00000000-0000-0000-0000-000000000000}">
              <Type PSType="System.String" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="LogFileMode" DefaultValue="2">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="MaximumFileSize" DefaultValue="1">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="MaximumBuffers" DefaultValue="0">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="MinimumBuffers" DefaultValue="0">
              <Type PSType="System.UInt32" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
            <Parameter ParameterName="Start" DefaultValue="Enabled">
              <Type PSType="AutologgerConfig.Enabled" />
              <CmdletParameterMetadata>
              </CmdletParameterMetadata>
            </Parameter>
          </Parameters>
        </Method>
      </Cmdlet>
    </StaticCmdlets>
  </Class>
   <Enums>
    <Enum EnumName="AutologgerConfig.ClockType" UnderlyingType="System.UInt32">
      <Value Name="Performance" Value="1" />
      <Value Name="System" Value="2" />
      <Value Name="Cycle" Value="3" />
    </Enum>
    <Enum EnumName="AutologgerConfig.Enabled" UnderlyingType="System.UInt32">
      <Value Name="Disabled" Value="0" />
      <Value Name="Enabled" Value="1" />
    </Enum>
  </Enums>
</PowerShellMetadata>