Define {
	PlaybackChannels 2
	CaptureChannels 2
	Model "2i2"
	Playback1Name "Headphones / Line 1-2"
	Playback2Name "Line 3-4"
	Capture1Name "Input 1 Mic/Inst/Line"
	Capture2Name "Input 2 Mic/Inst/Line"
	CaptureMonitor ""
	Generation "1st"
	Profile "Scarlett-2i-HiFi"
}

If.solo {
	Condition {
		Type RegexMatch
		String "${CardComponents}"
		Regex "USB1235:8(01c|2(05|11))"
	}
	True.Define {
		Model "Solo"
		Capture1Name "Input 1 Mic"
		Capture2Name "Input 2 Inst/Line"
	}
}

If.2i4 {
	Condition {
		Type RegexMatch
		String "${CardComponents}"
		Regex "USB1235:8(00a|200)"
	}
	True.Define {
		PlaybackChannels 4
		DirectPlaybackChannels 4
		Model "2i4"
		Playback1Name "Line 1-2"
	}
}

If.gen2 {
	Condition {
		Type RegexMatch
		String "${CardComponents}"
		Regex "USB1235:820[025]"
	}
	True.Define.Generation "2nd"
}

If.gen3 {
	Condition {
		Type RegexMatch
		String "${CardComponents}"
		Regex "USB1235:821[01]"
	}
	True.Define.Generation "3rd"
}

If.gen4-solo {
	Condition {
		Type RegexMatch
		String "${CardComponents}"
		Regex "USB1235:8218"
	}
	True.Define {
		Generation "4th"
		Capture1Name "Input 1 Inst/Line"
		Capture2Name "Input 2 Mic"
		CaptureChannels 4
		Profile "Scarlett-2i-gen4-HiFi"
	}
}

If.gen4-2i2 {
	Condition {
		Type RegexMatch
		String "${CardComponents}"
		Regex "USB1235:8219"
	}
	True.Define {
		Generation "4th"
		CaptureChannels 4
		Profile "Scarlett-2i-gen4-HiFi"
	}
}

Comment "Focusrite Scarlett ${var:Model} ${var:Generation} Gen"

SectionUseCase."HiFi" {
	Comment "Default"
	File "/USB-Audio/Focusrite/${var:Profile}.conf"
}

Include.dhw.File "/common/directm.conf"

Macro.0.DirectUseCase { Id="Direct" PlaybackChannels="${var:PlaybackChannels}" CaptureChannels="${var:CaptureChannels}" }
