Commit edd47543 authored by MarouenKadri's avatar MarouenKadri
Browse files

tp1

parents
AccessModifierOffset: -2
AlignAfterOpenBracket: Align
AlignConsecutiveAssignments: true
AlignConsecutiveDeclarations: true
AlignEscapedNewlines: Left
AlignOperands: true
AlignTrailingComments: true
AllowAllParametersOfDeclarationOnNextLine: false
AllowShortBlocksOnASingleLine: true
AllowShortCaseLabelsOnASingleLine: true
AllowShortFunctionsOnASingleLine: true
AllowShortIfStatementsOnASingleLine: true
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: true
AlwaysBreakTemplateDeclarations: Yes
BinPackArguments: false
BinPackParameters: false
BraceWrapping:
AfterClass: true
AfterControlStatement: true
AfterEnum: true
AfterFunction: true
AfterNamespace: true
AfterStruct: true
AfterUnion: true
AfterExternBlock: true
BeforeCatch: true
BeforeElse: true
IndentBraces: true
SplitEmptyFunction: false
SplitEmptyRecord: false
SplitEmptyNamespace: false
BreakBeforeBinaryOperators: All
BreakBeforeBraces: Allman
BreakBeforeTernaryOperators: true
BreakConstructorInitializers: BeforeColon
BreakInheritanceList: AfterColon
BreakStringLiterals: true
ColumnLimit: 120
CommentPragmas: ''
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: false
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: false
DerivePointerAlignment: false
DisableFormat: false
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: true
IncludeBlocks: Merge
IndentCaseLabels: false
IndentWidth: 4
IndentWrappedFunctionNames: false
KeepEmptyLinesAtTheStartOfBlocks: false
Language: Cpp
MaxEmptyLinesToKeep: 1
NamespaceIndentation: All
PenaltyBreakBeforeFirstCallParameter: 1
PenaltyBreakComment: 300
PenaltyBreakString: 1000
PenaltyBreakFirstLessLess: 120
PenaltyReturnTypeOnItsOwnLine: 1000
PointerAlignment: Middle
ReflowComments: true
SortIncludes: true
SortUsingDeclarations: true
SpaceAfterCStyleCast: false
SpaceAfterTemplateKeyword: false
SpaceBeforeAssignmentOperators: true
SpaceBeforeCpp11BracedList: true
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeParens: ControlStatements
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 1
SpacesInAngles: false
SpacesInCStyleCastParentheses: false
SpacesInContainerLiterals: true
SpacesInParentheses: true
SpacesInSquareBrackets: true
Standard: Cpp11
TabWidth: 4
UseTab: Always
*.user
.vs/
x64/

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.30011.22
MinimumVisualStudioVersion = 10.0.40219.1
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "RT_ISICG_etu", "RT_ISICG_etu.vcxproj", "{2068894B-9BA4-4189-AFDF-2A2EFD34C765}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{2068894B-9BA4-4189-AFDF-2A2EFD34C765}.Debug|x64.ActiveCfg = Debug|x64
{2068894B-9BA4-4189-AFDF-2A2EFD34C765}.Debug|x64.Build.0 = Debug|x64
{2068894B-9BA4-4189-AFDF-2A2EFD34C765}.Debug|x86.ActiveCfg = Debug|Win32
{2068894B-9BA4-4189-AFDF-2A2EFD34C765}.Debug|x86.Build.0 = Debug|Win32
{2068894B-9BA4-4189-AFDF-2A2EFD34C765}.Release|x64.ActiveCfg = Release|x64
{2068894B-9BA4-4189-AFDF-2A2EFD34C765}.Release|x64.Build.0 = Release|x64
{2068894B-9BA4-4189-AFDF-2A2EFD34C765}.Release|x86.ActiveCfg = Release|Win32
{2068894B-9BA4-4189-AFDF-2A2EFD34C765}.Release|x86.Build.0 = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {5B2EBCC7-62FE-43E7-A006-6D366757FD96}
EndGlobalSection
EndGlobal
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Debug|x64">
<Configuration>Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|x64">
<Configuration>Release</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<VCProjectVersion>16.0</VCProjectVersion>
<ProjectGuid>{2068894B-9BA4-4189-AFDF-2A2EFD34C765}</ProjectGuid>
<RootNamespace>RTISICG</RootNamespace>
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v143</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<PlatformToolset>v142</PlatformToolset>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="Shared">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<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)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<LinkIncremental>true</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<LinkIncremental>false</LinkIncremental>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>$(SolutionDir)\lib\assimp;$(SolutionDir)\src;$(SolutionDir)\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<OpenMPSupport>true</OpenMPSupport>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(SolutionDir)\lib\assimp</AdditionalLibraryDirectories>
<AdditionalDependencies>assimp-vc142-mt.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
</Link>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<SDLCheck>true</SDLCheck>
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<ConformanceMode>true</ConformanceMode>
<AdditionalIncludeDirectories>$(SolutionDir)\lib\assimp;$(SolutionDir)\src;$(SolutionDir)\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<OpenMPSupport>true</OpenMPSupport>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalLibraryDirectories>$(SolutionDir)\lib\assimp</AdditionalLibraryDirectories>
<AdditionalDependencies>assimp-vc142-mt.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;odbccp32.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="src\aabb.cpp" />
<ClCompile Include="src\bvh.cpp" />
<ClCompile Include="src\cameras\perspective_camera.cpp" />
<ClCompile Include="src\geometry\sphere_geometry.cpp" />
<ClCompile Include="src\geometry\triangle_mesh_geometry.cpp" />
<ClCompile Include="src\integrators\ray_cast_integrator.cpp" />
<ClCompile Include="src\main.cpp" />
<ClCompile Include="src\objects\sphere.cpp" />
<ClCompile Include="src\objects\triangle_mesh.cpp" />
<ClCompile Include="src\renderer.cpp" />
<ClCompile Include="src\scene.cpp" />
<ClCompile Include="src\texture.cpp" />
<ClCompile Include="src\utils\console_progress_bar.cpp" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="src\aabb.hpp" />
<ClInclude Include="src\brdfs\lambert_brdf.hpp" />
<ClInclude Include="src\bvh.hpp" />
<ClInclude Include="src\cameras\base_camera.hpp" />
<ClInclude Include="src\cameras\perspective_camera.hpp" />
<ClInclude Include="src\geometry\base_geometry.hpp" />
<ClInclude Include="src\geometry\sphere_geometry.hpp" />
<ClInclude Include="src\geometry\triangle_mesh_geometry.hpp" />
<ClInclude Include="src\hit_record.hpp" />
<ClInclude Include="src\integrators\base_integrator.hpp" />
<ClInclude Include="src\integrators\ray_cast_integrator.hpp" />
<ClInclude Include="src\lights\base_light.hpp" />
<ClInclude Include="src\lights\light_sample.hpp" />
<ClInclude Include="src\materials\color_material.hpp" />
<ClInclude Include="src\defines.hpp" />
<ClInclude Include="src\io\stb_include.hpp" />
<ClInclude Include="src\materials\base_material.hpp" />
<ClInclude Include="src\materials\lambert_material.hpp" />
<ClInclude Include="src\objects\base_object.hpp" />
<ClInclude Include="src\objects\sphere.hpp" />
<ClInclude Include="src\objects\triangle_mesh.hpp" />
<ClInclude Include="src\ray.hpp" />
<ClInclude Include="src\renderer.hpp" />
<ClInclude Include="src\scene.hpp" />
<ClInclude Include="src\texture.hpp" />
<ClInclude Include="src\utils\chrono.hpp" />
<ClInclude Include="src\utils\console_progress_bar.hpp" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
</Project>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<Filter Include="Source Files">
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
<Extensions>cpp;c;cc;cxx;c++;def;odl;idl;hpj;bat;asm;asmx</Extensions>
</Filter>
<Filter Include="Header Files">
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
<Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions>
</Filter>
<Filter Include="Source Files\io">
<UniqueIdentifier>{fb114249-6afb-4c26-96d2-1f8eb09ee1c6}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\io">
<UniqueIdentifier>{de8b2f88-86a8-48d6-8276-f46c0824b4b6}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\objects">
<UniqueIdentifier>{2d36f48d-c494-4003-95ad-7352250bd92e}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\objects">
<UniqueIdentifier>{70d113a6-2d35-4eb5-8a1a-63ecebacef34}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\materials">
<UniqueIdentifier>{68d11c17-3afb-482d-99f6-c5187d092043}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\materials">
<UniqueIdentifier>{966871b4-821c-4460-9977-fa9c9b354ac4}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\integrators">
<UniqueIdentifier>{4afb2b9f-8dce-44a3-805d-19d671af5227}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\integrators">
<UniqueIdentifier>{072b7456-4d7e-41aa-97f1-ff3718543209}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\lights">
<UniqueIdentifier>{57201a0d-2142-4af6-b776-6263f4d8e83a}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\lights">
<UniqueIdentifier>{80d07e3b-853c-43ec-84b9-09589b2fc9f5}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\cameras">
<UniqueIdentifier>{a7f72c10-2c0b-4ca9-b4d1-17d171cfac0f}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\cameras">
<UniqueIdentifier>{67eedaa1-79ed-41c5-bf78-2b044d3a2f8e}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\utils">
<UniqueIdentifier>{f6e4a35e-f01d-4c3e-960d-bb92b67fb620}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\utils">
<UniqueIdentifier>{23b03c7a-86c3-40d8-b23e-bad8a527c443}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\geometry">
<UniqueIdentifier>{c8d61efc-1283-4a53-8c29-910c18fdf8ca}</UniqueIdentifier>
</Filter>
<Filter Include="Source Files\geometry">
<UniqueIdentifier>{618845aa-171b-4533-b6e5-ff84a164de78}</UniqueIdentifier>
</Filter>
<Filter Include="Header Files\brdfs">
<UniqueIdentifier>{051f0f37-5291-419b-af5c-d992cda5fe44}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClCompile Include="src\main.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\objects\sphere.cpp">
<Filter>Source Files\objects</Filter>
</ClCompile>
<ClCompile Include="src\scene.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\renderer.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\cameras\perspective_camera.cpp">
<Filter>Source Files\cameras</Filter>
</ClCompile>
<ClCompile Include="src\utils\console_progress_bar.cpp">
<Filter>Source Files\utils</Filter>
</ClCompile>
<ClCompile Include="src\geometry\sphere_geometry.cpp">
<Filter>Source Files\geometry</Filter>
</ClCompile>
<ClCompile Include="src\texture.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\integrators\ray_cast_integrator.cpp">
<Filter>Source Files\integrators</Filter>
</ClCompile>
<ClCompile Include="src\geometry\triangle_mesh_geometry.cpp">
<Filter>Source Files\geometry</Filter>
</ClCompile>
<ClCompile Include="src\objects\triangle_mesh.cpp">
<Filter>Source Files\objects</Filter>
</ClCompile>
<ClCompile Include="src\aabb.cpp">
<Filter>Source Files</Filter>
</ClCompile>
<ClCompile Include="src\bvh.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup>
<ItemGroup>
<ClInclude Include="src\defines.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\io\stb_include.hpp">
<Filter>Header Files\io</Filter>
</ClInclude>
<ClInclude Include="src\objects\base_object.hpp">
<Filter>Header Files\objects</Filter>
</ClInclude>
<ClInclude Include="src\ray.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\objects\sphere.hpp">
<Filter>Header Files\objects</Filter>
</ClInclude>
<ClInclude Include="src\materials\base_material.hpp">
<Filter>Header Files\materials</Filter>
</ClInclude>
<ClInclude Include="src\scene.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\lights\base_light.hpp">
<Filter>Header Files\lights</Filter>
</ClInclude>
<ClInclude Include="src\integrators\ray_cast_integrator.hpp">
<Filter>Header Files\integrators</Filter>
</ClInclude>
<ClInclude Include="src\renderer.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\cameras\perspective_camera.hpp">
<Filter>Header Files\cameras</Filter>
</ClInclude>
<ClInclude Include="src\cameras\base_camera.hpp">
<Filter>Header Files\cameras</Filter>
</ClInclude>
<ClInclude Include="src\integrators\base_integrator.hpp">
<Filter>Header Files\integrators</Filter>
</ClInclude>
<ClInclude Include="src\utils\console_progress_bar.hpp">
<Filter>Header Files\utils</Filter>
</ClInclude>
<ClInclude Include="src\geometry\base_geometry.hpp">
<Filter>Header Files\geometry</Filter>
</ClInclude>
<ClInclude Include="src\geometry\sphere_geometry.hpp">
<Filter>Header Files\geometry</Filter>
</ClInclude>
<ClInclude Include="src\utils\chrono.hpp">
<Filter>Header Files\utils</Filter>
</ClInclude>
<ClInclude Include="src\texture.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\materials\color_material.hpp">
<Filter>Header Files\materials</Filter>
</ClInclude>
<ClInclude Include="src\hit_record.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\lights\light_sample.hpp">
<Filter>Header Files\lights</Filter>
</ClInclude>
<ClInclude Include="src\brdfs\lambert_brdf.hpp">
<Filter>Header Files\brdfs</Filter>
</ClInclude>
<ClInclude Include="src\materials\lambert_material.hpp">
<Filter>Header Files\materials</Filter>
</ClInclude>
<ClInclude Include="src\geometry\triangle_mesh_geometry.hpp">
<Filter>Header Files\geometry</Filter>
</ClInclude>
<ClInclude Include="src\objects\triangle_mesh.hpp">
<Filter>Header Files\objects</Filter>
</ClInclude>
<ClInclude Include="src\aabb.hpp">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="src\bvh.hpp">
<Filter>Header Files</Filter>
</ClInclude>
</ItemGroup>
</Project>
\ No newline at end of file
/*
Open Asset Import Library (assimp)
----------------------------------------------------------------------
Copyright (c) 2006-2019, assimp team
All rights reserved.
Redistribution and use of this software in source and binary forms,
with or without modification, are permitted provided that the
following conditions are met:
* Redistributions of source code must retain the above
copyright notice, this list of conditions and the
following disclaimer.
* Redistributions in binary form must reproduce the above
copyright notice, this list of conditions and the
following disclaimer in the documentation and/or other
materials provided with the distribution.
* Neither the name of the assimp team, nor the names of its
contributors may be used to endorse or promote products
derived from this software without specific prior
written permission of the assimp team.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
----------------------------------------------------------------------
*/
/** @file Definition of the base class for all importer worker classes. */
#ifndef INCLUDED_AI_BASEIMPORTER_H
#define INCLUDED_AI_BASEIMPORTER_H
#include "Exceptional.h"
#include <vector>
#include <set>
#include <map>
#include <assimp/types.h>
#include <assimp/ProgressHandler.hpp>
#include <assimp/ai_assert.h>
struct aiScene;
struct aiImporterDesc;
namespace Assimp {
class Importer;
class IOSystem;
class BaseProcess;
class SharedPostProcessInfo;
class IOStream;
// utility to do char4 to uint32 in a portable manner
#define AI_MAKE_MAGIC(string) ((uint32_t)((string[0] << 24) + \
(string[1] << 16) + (string[2] << 8) + string[3]))
// ---------------------------------------------------------------------------
/** FOR IMPORTER PLUGINS ONLY: The BaseImporter defines a common interface
* for all importer worker classes.
*
* The interface defines two functions: CanRead() is used to check if the
* importer can handle the format of the given file. If an implementation of
* this function returns true, the importer then calls ReadFile() which
* imports the given file. ReadFile is not overridable, it just calls
* InternReadFile() and catches any ImportErrorException that might occur.
*/
class ASSIMP_API BaseImporter {
friend class Importer;
private:
/* Pushes state into importer for the importer scale */
virtual void UpdateImporterScale( Importer* pImp );
public:
/** Constructor to be privately used by #Importer */
BaseImporter() AI_NO_EXCEPT;
/** Destructor, private as well */
virtual ~BaseImporter();
// -------------------------------------------------------------------
/** Returns whether the class can handle the format of the given file.
*
* The implementation should be as quick as possible. A check for
* the file extension is enough. If no suitable loader is found with
* this strategy, CanRead() is called again, the 'checkSig' parameter
* set to true this time. Now the implementation is expected to
* perform a full check of the file structure, possibly searching the
* first bytes of the file for magic identifiers or keywords.
*
* @param pFile Path and file name of the file to be examined.
* @param pIOHandler The IO handler to use for accessing any file.
* @param checkSig Set to true if this method is called a second time.
* This time, the implementation may take more time to examine the
* contents of the file to be loaded for magic bytes, keywords, etc
* to be able to load files with unknown/not existent file extensions.