<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>net8.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
    <AllowUnsafeBlocks>True</AllowUnsafeBlocks>
    <Configurations>Debug;Release;CPU</Configurations>
  </PropertyGroup>

  <ItemGroup>
    <Compile Remove="OpenAPIs\**" />
    <EmbeddedResource Remove="OpenAPIs\**" />
    <None Remove="OpenAPIs\**" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="ILGPU" Version="1.5.1" />
    <PackageReference Include="IronPython" Version="3.4.0" />
    <PackageReference Include="MessagePack" Version="2.5.108" />
    <PackageReference Include="Microsoft.Extensions.ApiDescription.Client" Version="7.0.2">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
    
    <PackageReference Include="NetMQ" Version="4.0.1.11" />
    
    <PackageReference Include="Newtonsoft.Json" Version="13.0.1" />
    <PackageReference Include="Ninject" Version="3.3.6" />
    <PackageReference Include="NSwag.ApiDescription.Client" Version="13.18.2">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
    <PackageReference Include="OpenCvSharp4" Version="4.6.0.20220608" />
    <PackageReference Include="OpenCvSharp4.Extensions" Version="4.6.0.20220608" />
    
  </ItemGroup>

	<ItemGroup Condition="'$(Configuration)'=='CPU'">
		<PackageReference Include="YoloV8" Version="4.1.5" />
		<PackageReference Include="Microsoft.ML.OnnxRuntime" Version="1.18.0" />
	</ItemGroup>
	<ItemGroup Condition="'$(Configuration)'!='CPU'">
		<PackageReference Include="YoloV8.Gpu" Version="4.1.7" />
		<PackageReference Include="Microsoft.ML.OnnxRuntime.Gpu" Version="1.18.0" />
	</ItemGroup>

  <ItemGroup>
    <Folder Include="Datatypes\Elements\Edge\" />
    <Folder Include="Datatypes\Elements\Line\" />
    <Folder Include="Overrides\" />
    <Folder Include="Operations\Edge\" />
    <Folder Include="Operations\Transformations\" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\VisionBuilder.UI.Common\VisionBuilder.UI.Common.csproj" />
  </ItemGroup>

</Project>
