﻿<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ItemGroup Label="ProjectConfigurations">
    <ProjectConfiguration Include="Checked|ARM64">
      <Configuration>Checked</Configuration>
      <Platform>ARM64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Checked|Win32">
      <Configuration>Checked</Configuration>
      <Platform>Win32</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Checked|x64">
      <Configuration>Checked</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Debug|ARM64">
      <Configuration>Debug</Configuration>
      <Platform>ARM64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Debug|Win32">
      <Configuration>Debug</Configuration>
      <Platform>Win32</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Debug|x64">
      <Configuration>Debug</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|ARM64">
      <Configuration>Release</Configuration>
      <Platform>ARM64</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|Win32">
      <Configuration>Release</Configuration>
      <Platform>Win32</Platform>
    </ProjectConfiguration>
    <ProjectConfiguration Include="Release|x64">
      <Configuration>Release</Configuration>
      <Platform>x64</Platform>
    </ProjectConfiguration>
  </ItemGroup>
  <PropertyGroup Label="Globals">
    <VCProjectVersion>16.0</VCProjectVersion>
    <ProjectGuid>{1E31F9F1-F175-4082-B3E2-B1F0ECA3F44C}</ProjectGuid>
    <Keyword>Win32Proj</Keyword>
    <ProjectName>CharLS</ProjectName>
    <ConfigurationType>DynamicLibrary</ConfigurationType>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
  <PropertyGroup>
    <PlatformToolset>$(DefaultPlatformToolset)</PlatformToolset>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)'=='Release'" Label="Configuration">
    <WholeProgramOptimization>true</WholeProgramOptimization>
  </PropertyGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
  <ImportGroup Label="ExtensionSettings">
  </ImportGroup>
  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Checked|Win32'" Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Checked|x64'" Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <ImportGroup Condition="'$(Configuration)|$(Platform)'=='Checked|ARM64'" Label="PropertySheets">
    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  </ImportGroup>
  <PropertyGroup Label="UserMacros" />
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Checked|Win32'">
    <TargetName>charls-2-x86</TargetName>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
    <TargetName>charls-2-x86</TargetName>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
    <TargetName>charls-2-x86</TargetName>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Checked|x64'">
    <TargetName>charls-2-x64</TargetName>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Checked|ARM64'">
    <TargetName>charls-2-arm64</TargetName>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
    <TargetName>charls-2-x64</TargetName>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
    <TargetName>charls-2-arm64</TargetName>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
    <TargetName>charls-2-x64</TargetName>
  </PropertyGroup>
  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
    <TargetName>charls-2-arm64</TargetName>
  </PropertyGroup>
  <ItemDefinitionGroup>
    <ClCompile>
      <PreprocessorDefinitions>CHARLS_LIBRARY_BUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
      <RuntimeTypeInfo>false</RuntimeTypeInfo>
      <PrecompiledHeader>
      </PrecompiledHeader>
    </ClCompile>
    <Link>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
    <ClCompile>
      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
      <EnforceTypeConversionRules>true</EnforceTypeConversionRules>
    </ClCompile>
    <Link>
      <ModuleDefinitionFile>charls.def</ModuleDefinitionFile>
      <TargetMachine>MachineX86</TargetMachine>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Checked|Win32'">
    <ClCompile>
      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
      <SmallerTypeCheck>false</SmallerTypeCheck>
      <EnablePREfast>true</EnablePREfast>
    </ClCompile>
    <Link>
      <TargetMachine>MachineX86</TargetMachine>
      <ModuleDefinitionFile>charls.def</ModuleDefinitionFile>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
    <ClCompile>
      <OmitFramePointers>true</OmitFramePointers>
      <EnableFiberSafeOptimizations>true</EnableFiberSafeOptimizations>
      <StringPooling>true</StringPooling>
      <BasicRuntimeChecks>Default</BasicRuntimeChecks>
    </ClCompile>
    <Link>
      <TargetMachine>MachineX86</TargetMachine>
      <ModuleDefinitionFile>charls.def</ModuleDefinitionFile>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
    <ClCompile>
      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
      <SmallerTypeCheck>false</SmallerTypeCheck>
    </ClCompile>
    <Link>
      <TargetMachine>MachineX64</TargetMachine>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
    <ClCompile>
      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
      <SmallerTypeCheck>false</SmallerTypeCheck>
    </ClCompile>
    <Link />
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Checked|x64'">
    <ClCompile>
      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
      <SmallerTypeCheck>false</SmallerTypeCheck>
      <EnablePREfast>true</EnablePREfast>
    </ClCompile>
    <Link>
      <TargetMachine>MachineX64</TargetMachine>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Checked|ARM64'">
    <ClCompile>
      <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
      <SmallerTypeCheck>false</SmallerTypeCheck>
      <EnablePREfast>true</EnablePREfast>
    </ClCompile>
    <Link />
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
    <ClCompile>
      <OmitFramePointers>true</OmitFramePointers>
      <EnableFiberSafeOptimizations>true</EnableFiberSafeOptimizations>
      <StringPooling>true</StringPooling>
      <BasicRuntimeChecks>Default</BasicRuntimeChecks>
    </ClCompile>
    <Link>
      <TargetMachine>MachineX64</TargetMachine>
    </Link>
  </ItemDefinitionGroup>
  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
    <ClCompile>
      <OmitFramePointers>true</OmitFramePointers>
      <EnableFiberSafeOptimizations>true</EnableFiberSafeOptimizations>
      <StringPooling>true</StringPooling>
      <BasicRuntimeChecks>Default</BasicRuntimeChecks>
    </ClCompile>
    <Link />
  </ItemDefinitionGroup>
  <ItemGroup>
    <None Include="..\doc\style_and_design.md" />
    <None Include="charls.def">
      <ExcludedFromBuild Condition="'$(Platform)'=='x64'">true</ExcludedFromBuild>
      <ExcludedFromBuild Condition="'$(Platform)'=='ARM64'">true</ExcludedFromBuild>
    </None>
    <None Include="design\JpegStream.cd" />
    <None Include="design\Strategy.cd" />
    <None Include="packages.config" />
  </ItemGroup>
  <ItemGroup>
    <ClCompile Include="validate_spiff_header.cpp" />
    <ClCompile Include="version.cpp" />
    <ClCompile Include="charls_jpegls_decoder.cpp" />
    <ClCompile Include="jpegls.cpp" />
    <ClCompile Include="charls_jpegls_encoder.cpp" />
    <ClCompile Include="jpegls_error.cpp" />
    <ClCompile Include="jpeg_stream_reader.cpp" />
    <ClCompile Include="jpeg_stream_writer.cpp" />
  </ItemGroup>
  <ItemGroup>
    <ClInclude Include="..\include\charls\annotations.h" />
    <ClInclude Include="..\include\charls\api_abi.h" />
    <ClInclude Include="..\include\charls\charls.h" />
    <ClInclude Include="..\include\charls\charls_jpegls_decoder.h" />
    <ClInclude Include="..\include\charls\charls_jpegls_encoder.h" />
    <ClInclude Include="..\include\charls\jpegls_error.h" />
    <ClInclude Include="..\include\charls\public_types.h" />
    <ClInclude Include="..\include\charls\validate_spiff_header.h" />
    <ClInclude Include="..\include\charls\version.h" />
    <ClInclude Include="coding_parameters.h" />
    <ClInclude Include="color_transform.h" />
    <ClInclude Include="conditional_static_cast.h" />
    <ClInclude Include="constants.h" />
    <ClInclude Include="context_regular_mode.h" />
    <ClInclude Include="context_run_mode.h" />
    <ClInclude Include="decoder_strategy.h" />
    <ClInclude Include="default_traits.h" />
    <ClInclude Include="encoder_strategy.h" />
    <ClInclude Include="jls_codec_factory.h" />
    <ClInclude Include="jpegls_preset_coding_parameters.h" />
    <ClInclude Include="jpeg_marker_code.h" />
    <ClInclude Include="jpeg_stream_reader.h" />
    <ClInclude Include="jpeg_stream_writer.h" />
    <ClInclude Include="lookup_table.h" />
    <ClInclude Include="lossless_traits.h" />
    <ClInclude Include="jpegls_preset_parameters_type.h" />
    <ClInclude Include="process_line.h" />
    <ClInclude Include="scan.h" />
    <ClInclude Include="byte_span.h" />
    <ClInclude Include="util.h" />
  </ItemGroup>
  <ItemGroup>
    <ResourceCompile Include="charls.rc" />
  </ItemGroup>
  <ItemGroup>
    <Content Include="$(TargetPath)">
      <Link>%(Filename)%(Extension)</Link>
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </Content>
  </ItemGroup>
  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
</Project>