Kaynağa Gözat

Fix the compile pass, still unresolved symbols.

Kim Kulling 6 yıl önce
ebeveyn
işleme
2da3a38d60
89 değiştirilmiş dosya ile 425 ekleme ve 465 silme
  1. 2 1
      CMakeLists.txt
  2. 1 1
      code/3DS/3DSConverter.cpp
  3. 6 4
      code/3DS/3DSExporter.cpp
  4. 1 1
      code/AC/ACLoader.cpp
  5. 15 15
      code/ASE/ASELoader.cpp
  6. 0 1
      code/ASE/ASELoader.h
  7. 2 2
      code/ASE/ASEParser.cpp
  8. 1 1
      code/ASE/ASEParser.h
  9. 3 2
      code/Assbin/AssbinExporter.cpp
  10. 2 2
      code/Assbin/AssbinLoader.cpp
  11. 4 2
      code/Assxml/AssxmlExporter.cpp
  12. 6 4
      code/B3D/B3DImporter.cpp
  13. 1 1
      code/CApi/AssimpCExport.cpp
  14. 1 2
      code/CMakeLists.txt
  15. 6 4
      code/COB/COBLoader.cpp
  16. 1 1
      code/Common/Assimp.cpp
  17. 9 8
      code/Common/Exporter.cpp
  18. 8 8
      code/Common/Importer.cpp
  19. 47 47
      code/Common/ImporterRegistry.cpp
  20. 28 28
      code/Common/PostStepRegistry.cpp
  21. 4 3
      code/Common/Subdivision.cpp
  22. 4 4
      code/DXF/DXFLoader.cpp
  23. 5 3
      code/HMP/HMPLoader.cpp
  24. 3 2
      code/HMP/HMPLoader.h
  25. 2 2
      code/Importer/IFC/IFCBoolean.cpp
  26. 4 4
      code/Importer/IFC/IFCGeometry.cpp
  27. 2 2
      code/Importer/IFC/IFCOpenings.cpp
  28. 1 1
      code/Importer/IFC/IFCReaderGen_2x3.h
  29. 5 8
      code/Importer/IFC/IFCUtil.cpp
  30. 1 1
      code/Importer/IFC/IFCUtil.h
  31. 1 1
      code/Importer/STEPParser/STEPFileReader.h
  32. 1 1
      code/Importer/StepFile/StepReaderGen.h
  33. 5 6
      code/Irr/IRRLoader.cpp
  34. 7 26
      code/Irr/IRRLoader.h
  35. 2 2
      code/LWO/LWOFileData.h
  36. 5 3
      code/LWO/LWOLoader.cpp
  37. 5 4
      code/LWS/LWSLoader.cpp
  38. 2 1
      code/LWS/LWSLoader.h
  39. 5 3
      code/MD3/MD3Loader.cpp
  40. 3 4
      code/MD5/MD5Parser.cpp
  41. 5 4
      code/MDC/MDCLoader.cpp
  42. 4 3
      code/MDL/MDLLoader.cpp
  43. 1 1
      code/MDL/MDLLoader.h
  44. 7 5
      code/MMD/MMDImporter.cpp
  45. 3 2
      code/OpenGEX/OpenGEXImporter.cpp
  46. 2 2
      code/PostProcessing/CalcTangentsProcess.h
  47. 2 1
      code/PostProcessing/ComputeUVMappingProcess.h
  48. 2 1
      code/PostProcessing/ConvertToLHProcess.h
  49. 7 10
      code/PostProcessing/DeboneProcess.h
  50. 4 7
      code/PostProcessing/DropFaceNormalsProcess.h
  51. 1 1
      code/PostProcessing/EmbedTexturesProcess.h
  52. 2 1
      code/PostProcessing/FindDegenerates.h
  53. 2 2
      code/PostProcessing/FindInstancesProcess.h
  54. 2 1
      code/PostProcessing/FindInvalidDataProcess.h
  55. 1 1
      code/PostProcessing/FixNormalsStep.h
  56. 1 1
      code/PostProcessing/GenFaceNormalsProcess.h
  57. 7 11
      code/PostProcessing/GenVertexNormalsProcess.h
  58. 29 36
      code/PostProcessing/ImproveCacheLocality.cpp
  59. 4 3
      code/PostProcessing/ImproveCacheLocality.h
  60. 3 7
      code/PostProcessing/JoinVerticesProcess.h
  61. 12 22
      code/PostProcessing/LimitBoneWeightsProcess.h
  62. 2 1
      code/PostProcessing/MakeVerboseFormat.h
  63. 0 2
      code/PostProcessing/OptimizeGraph.cpp
  64. 11 16
      code/PostProcessing/OptimizeGraph.h
  65. 5 5
      code/PostProcessing/OptimizeMeshes.h
  66. 9 6
      code/PostProcessing/PretransformVertices.h
  67. 1 1
      code/PostProcessing/ProcessHelper.h
  68. 5 5
      code/PostProcessing/RemoveRedundantMaterials.cpp
  69. 7 11
      code/PostProcessing/RemoveRedundantMaterials.h
  70. 2 1
      code/PostProcessing/RemoveVCProcess.h
  71. 1 1
      code/PostProcessing/ScaleProcess.h
  72. 9 9
      code/PostProcessing/SortByPTypeProcess.cpp
  73. 4 7
      code/PostProcessing/SortByPTypeProcess.h
  74. 1 1
      code/PostProcessing/SplitLargeMeshes.h
  75. 1 1
      code/PostProcessing/TextureTransform.h
  76. 5 5
      code/PostProcessing/TriangulateProcess.cpp
  77. 2 6
      code/PostProcessing/TriangulateProcess.h
  78. 2 1
      code/PostProcessing/ValidateDataStructure.h
  79. 2 1
      code/Step/STEPFile.h
  80. 9 7
      code/Step/StepExporter.cpp
  81. 3 3
      code/Unreal/UnrealLoader.cpp
  82. 7 5
      code/X/XFileExporter.cpp
  83. 4 3
      code/X/XFileImporter.cpp
  84. 2 0
      code/glTF/glTFAsset.h
  85. 3 6
      code/glTF/glTFExporter.cpp
  86. 5 9
      code/glTF/glTFImporter.cpp
  87. 2 0
      code/glTF2/glTF2Asset.h
  88. 3 6
      code/glTF2/glTF2Exporter.cpp
  89. 6 8
      code/glTF2/glTF2Importer.cpp

+ 2 - 1
CMakeLists.txt

@@ -1,7 +1,7 @@
 # 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,
@@ -203,6 +203,7 @@ CONFIGURE_FILE(
 
 INCLUDE_DIRECTORIES( BEFORE
   ./
+  code/
   include
   ${CMAKE_CURRENT_BINARY_DIR}
   ${CMAKE_CURRENT_BINARY_DIR}/include

+ 1 - 1
code/3DS/3DSConverter.cpp

@@ -48,7 +48,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 // internal headers
 #include "3DSLoader.h"
-#include "TargetAnimation.h"
+#include "Common/TargetAnimation.h"
 #include <assimp/scene.h>
 #include <assimp/DefaultLogger.hpp>
 #include <assimp/StringComparison.h>

+ 6 - 4
code/3DS/3DSExporter.cpp

@@ -43,15 +43,17 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_EXPORT
 #ifndef ASSIMP_BUILD_NO_3DS_EXPORTER
 
-#include "3DSExporter.h"
-#include "3DSLoader.h"
-#include "3DSHelper.h"
+#include "3DS/3DSExporter.h"
+#include "3DS/3DSLoader.h"
+#include "3DS/3DSHelper.h"
+#include "PostProcessing/SplitLargeMeshes.h"
+
 #include <assimp/SceneCombiner.h>
-#include "SplitLargeMeshes.h"
 #include <assimp/StringComparison.h>
 #include <assimp/IOSystem.hpp>
 #include <assimp/DefaultLogger.hpp>
 #include <assimp/Exporter.hpp>
+
 #include <memory>
 
 using namespace Assimp;

+ 1 - 1
code/AC/ACLoader.cpp

@@ -53,7 +53,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include <assimp/ParsingUtils.h>
 #include <assimp/fast_atof.h>
 #include <assimp/Subdivision.h>
-#include "Importer.h"
+#include "Common/Importer.h"
 #include <assimp/BaseImporter.h>
 #include <assimp/Importer.hpp>
 #include <assimp/light.h>

+ 15 - 15
code/ASE/ASELoader.cpp

@@ -53,7 +53,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include "ASELoader.h"
 #include <assimp/StringComparison.h>
 #include <assimp/SkeletonMeshBuilder.h>
-#include "TargetAnimation.h"
+#include "Common/TargetAnimation.h"
+
 #include <assimp/Importer.hpp>
 #include <assimp/IOSystem.hpp>
 #include <assimp/DefaultLogger.hpp>
@@ -88,23 +89,25 @@ ASEImporter::ASEImporter()
 , mBuffer()
 , pcScene()
 , configRecomputeNormals()
-, noSkeletonMesh()
-{}
+, noSkeletonMesh() {
+    // empty
+}
 
 // ------------------------------------------------------------------------------------------------
 // Destructor, private as well
-ASEImporter::~ASEImporter()
-{}
+ASEImporter::~ASEImporter() {
+    // empty
+}
 
 // ------------------------------------------------------------------------------------------------
 // Returns whether the class can handle the format of the given file.
-bool ASEImporter::CanRead( const std::string& pFile, IOSystem* pIOHandler, bool cs) const
-{
+bool ASEImporter::CanRead( const std::string& pFile, IOSystem* pIOHandler, bool cs) const {
     // check file extension
     const std::string extension = GetExtension(pFile);
 
-    if( extension == "ase" || extension == "ask")
+    if (extension == "ase" || extension == "ask") {
         return true;
+    }
 
     if ((!extension.length() || cs) && pIOHandler) {
         const char* tokens[] = {"*3dsmax_asciiexport"};
@@ -115,15 +118,13 @@ bool ASEImporter::CanRead( const std::string& pFile, IOSystem* pIOHandler, bool
 
 // ------------------------------------------------------------------------------------------------
 // Loader meta information
-const aiImporterDesc* ASEImporter::GetInfo () const
-{
+const aiImporterDesc* ASEImporter::GetInfo () const {
     return &desc;
 }
 
 // ------------------------------------------------------------------------------------------------
 // Setup configuration options
-void ASEImporter::SetupProperties(const Importer* pImp)
-{
+void ASEImporter::SetupProperties(const Importer* pImp) {
     configRecomputeNormals = (pImp->GetPropertyInteger(
         AI_CONFIG_IMPORT_ASE_RECONSTRUCT_NORMALS,1) ? true : false);
 
@@ -133,12 +134,11 @@ void ASEImporter::SetupProperties(const Importer* pImp)
 // ------------------------------------------------------------------------------------------------
 // Imports the given file into the given scene structure.
 void ASEImporter::InternReadFile( const std::string& pFile,
-    aiScene* pScene, IOSystem* pIOHandler)
-{
+    aiScene* pScene, IOSystem* pIOHandler) {
     std::unique_ptr<IOStream> file( pIOHandler->Open( pFile, "rb"));
 
     // Check whether we can read from the file
-    if( file.get() == NULL) {
+    if( file.get() == nullptr) {
         throw DeadlyImportError( "Failed to open ASE file " + pFile + ".");
     }
 

+ 0 - 1
code/ASE/ASELoader.h

@@ -4,7 +4,6 @@ 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,

+ 2 - 2
code/ASE/ASEParser.cpp

@@ -49,15 +49,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_3DS_IMPORTER
 
 // internal headers
-#include "TextureTransform.h"
+#include "PostProcessing/TextureTransform.h"
 #include "ASELoader.h"
+
 #include <assimp/fast_atof.h>
 #include <assimp/DefaultLogger.hpp>
 
 using namespace Assimp;
 using namespace Assimp::ASE;
 
-
 // ------------------------------------------------------------------------------------------------
 // Begin an ASE parsing function
 

+ 1 - 1
code/ASE/ASEParser.h

@@ -57,7 +57,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include <assimp/qnan.h>
 
 // ASE is quite similar to 3ds. We can reuse some structures
-#include "3DSLoader.h"
+#include "3DS/3DSLoader.h"
 
 namespace Assimp    {
 namespace ASE   {

+ 3 - 2
code/Assbin/AssbinExporter.cpp

@@ -46,12 +46,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_EXPORT
 #ifndef ASSIMP_BUILD_NO_ASSBIN_EXPORTER
 
-#include "assbin_chunks.h"
+#include "Common/assbin_chunks.h"
+#include "PostProcessing/ProcessHelper.h"
+
 #include <assimp/version.h>
 #include <assimp/IOStream.hpp>
 #include <assimp/IOSystem.hpp>
 #include <assimp/Exporter.hpp>
-#include "ProcessHelper.h"
 #include <assimp/Exceptional.h>
 
 #ifdef ASSIMP_BUILD_NO_OWN_ZLIB

+ 2 - 2
code/Assbin/AssbinLoader.cpp

@@ -50,8 +50,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_ASSBIN_IMPORTER
 
 // internal headers
-#include "AssbinLoader.h"
-#include "assbin_chunks.h"
+#include "Assbin/AssbinLoader.h"
+#include "Common/assbin_chunks.h"
 #include <assimp/MemoryIOWrapper.h>
 #include <assimp/mesh.h>
 #include <assimp/anim.h>

+ 4 - 2
code/Assxml/AssxmlExporter.cpp

@@ -46,13 +46,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_EXPORT
 #ifndef ASSIMP_BUILD_NO_ASSXML_EXPORTER
 
-#include <stdarg.h>
+#include "PostProcessing/ProcessHelper.h"
+
 #include <assimp/version.h>
-#include "ProcessHelper.h"
 #include <assimp/IOStream.hpp>
 #include <assimp/IOSystem.hpp>
 #include <assimp/Exporter.hpp>
 
+#include <stdarg.h>
+
 #ifdef ASSIMP_BUILD_NO_OWN_ZLIB
 #   include <zlib.h>
 #else

+ 6 - 4
code/B3D/B3DImporter.cpp

@@ -49,17 +49,19 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_B3D_IMPORTER
 
 // internal headers
-#include "B3DImporter.h"
-#include "TextureTransform.h"
-#include "ConvertToLHProcess.h"
+#include "B3D/B3DImporter.h"
+#include "PostProcessing/TextureTransform.h"
+#include "PostProcessing/ConvertToLHProcess.h"
+
 #include <assimp/StringUtils.h>
-#include <memory>
 #include <assimp/IOSystem.hpp>
 #include <assimp/anim.h>
 #include <assimp/scene.h>
 #include <assimp/DefaultLogger.hpp>
 #include <assimp/importerdesc.h>
 
+#include <memory>
+
 using namespace Assimp;
 using namespace std;
 

+ 1 - 1
code/CApi/AssimpCExport.cpp

@@ -49,7 +49,7 @@ Assimp C export interface. See Exporter.cpp for some notes.
 
 #include "CInterfaceIOWrapper.h"
 #include <assimp/SceneCombiner.h>
-#include "ScenePrivate.h"
+#include "Common/ScenePrivate.h"
 #include <assimp/Exporter.hpp>
 
 using namespace Assimp;

+ 1 - 2
code/CMakeLists.txt

@@ -2,8 +2,7 @@
 # ----------------------------------------------------------------------
 #
 # Copyright (c) 2006-2019, assimp team
-
-
+#
 # All rights reserved.
 #
 # Redistribution and use of this software in source and binary forms,

+ 6 - 4
code/COB/COBLoader.cpp

@@ -45,20 +45,22 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 
 #ifndef ASSIMP_BUILD_NO_COB_IMPORTER
-#include "COBLoader.h"
-#include "COBScene.h"
-#include "ConvertToLHProcess.h"
+#include "COB/COBLoader.h"
+#include "COB/COBScene.h"
+#include "PostProcessing/ConvertToLHProcess.h"
+
 #include <assimp/StreamReader.h>
 #include <assimp/ParsingUtils.h>
 #include <assimp/fast_atof.h>
 #include <assimp/LineSplitter.h>
 #include <assimp/TinyFormatter.h>
-#include <memory>
 #include <assimp/IOSystem.hpp>
 #include <assimp/DefaultLogger.hpp>
 #include <assimp/scene.h>
 #include <assimp/importerdesc.h>
 
+#include <memory>
+
 using namespace Assimp;
 using namespace Assimp::COB;
 using namespace Assimp::Formatter;

+ 1 - 1
code/Common/Assimp.cpp

@@ -54,7 +54,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include <assimp/Exceptional.h>
 #include <assimp/BaseImporter.h>
 
-#include "CInterfaceIOWrapper.h"
+#include "CApi/CInterfaceIOWrapper.h"
 #include "Importer.h"
 #include "ScenePrivate.h"
 

+ 9 - 8
code/Common/Exporter.cpp

@@ -61,15 +61,16 @@ Here we implement only the C++ interface (Assimp::Exporter).
 #include <assimp/mesh.h>
 #include <assimp/postprocess.h>
 #include <assimp/scene.h>
-
-#include "DefaultProgressHandler.h"
-#include "BaseProcess.h"
-#include "JoinVerticesProcess.h"
-#include "MakeVerboseFormat.h"
-#include "ConvertToLHProcess.h"
-#include "PretransformVertices.h"
 #include <assimp/Exceptional.h>
-#include "ScenePrivate.h"
+
+#include "Common/DefaultProgressHandler.h"
+#include "Common/BaseProcess.h"
+#include "Common/ScenePrivate.h"
+#include "PostProcessing/CalcTangentsProcess.h"
+#include "PostProcessing/MakeVerboseFormat.h"
+#include "PostProcessing/JoinVerticesProcess.h"
+#include "PostProcessing/ConvertToLHProcess.h"
+#include "PostProcessing/PretransformVertices.h"
 
 #include <memory>
 

+ 8 - 8
code/Common/Importer.cpp

@@ -64,15 +64,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 // ------------------------------------------------------------------------------------------------
 // Internal headers
 // ------------------------------------------------------------------------------------------------
-#include "Importer.h"
-#include <assimp/BaseImporter.h>
-#include "BaseProcess.h"
+#include "Common/Importer.h"
+#include "Common/BaseProcess.h"
+#include "Common/DefaultProgressHandler.h"
+#include "PostProcessing/ProcessHelper.h"
+#include "Common/ScenePreprocessor.h"
+#include "Common/ScenePrivate.h"
 
-#include "DefaultProgressHandler.h"
+#include <assimp/BaseImporter.h>
 #include <assimp/GenericProperty.h>
-#include "ProcessHelper.h"
-#include "ScenePreprocessor.h"
-#include "ScenePrivate.h"
 #include <assimp/MemoryIOWrapper.h>
 #include <assimp/Profiler.h>
 #include <assimp/TinyFormatter.h>
@@ -86,7 +86,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include <assimp/DefaultIOSystem.h>
 
 #ifndef ASSIMP_BUILD_NO_VALIDATEDS_PROCESS
-#   include "ValidateDataStructure.h"
+#   include "PostProcessing/ValidateDataStructure.h"
 #endif
 
 using namespace Assimp::Profiling;

+ 47 - 47
code/Common/ImporterRegistry.cpp

@@ -56,146 +56,146 @@ corresponding preprocessor flag to selectively disable formats.
 // (include_new_importers_here)
 // ------------------------------------------------------------------------------------------------
 #ifndef ASSIMP_BUILD_NO_X_IMPORTER
-#   include "XFileImporter.h"
+#   include "X/XFileImporter.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_AMF_IMPORTER
-#   include "AMFImporter.hpp"
+#   include "AMF/AMFImporter.hpp"
 #endif
 #ifndef ASSIMP_BUILD_NO_3DS_IMPORTER
-#   include "3DSLoader.h"
+#   include "3DS/3DSLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_MD3_IMPORTER
-#   include "MD3Loader.h"
+#   include "MD3/MD3Loader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_MDL_IMPORTER
-#   include "MDLLoader.h"
+#   include "MDL/MDLLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_MD2_IMPORTER
-#   include "MD2Loader.h"
+#   include "MD2/MD2Loader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_PLY_IMPORTER
-#   include "PlyLoader.h"
+#   include "Ply/PlyLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_ASE_IMPORTER
-#   include "ASELoader.h"
+#   include "ASE/ASELoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_OBJ_IMPORTER
-#   include "ObjFileImporter.h"
+#   include "Obj/ObjFileImporter.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_HMP_IMPORTER
-#   include "HMPLoader.h"
+#   include "HMP/HMPLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_SMD_IMPORTER
-#   include "SMDLoader.h"
+#   include "SMD/SMDLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_MDC_IMPORTER
-#   include "MDCLoader.h"
+#   include "MDC/MDCLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_MD5_IMPORTER
-#   include "MD5Loader.h"
+#   include "MD5/MD5Loader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_STL_IMPORTER
-#   include "STLLoader.h"
+#   include "STL/STLLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_LWO_IMPORTER
-#   include "LWOLoader.h"
+#   include "LWO/LWOLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_DXF_IMPORTER
-#   include "DXFLoader.h"
+#   include "DXF/DXFLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_NFF_IMPORTER
-#   include "NFFLoader.h"
+#   include "NFF/NFFLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_RAW_IMPORTER
-#   include "RawLoader.h"
+#   include "Raw/RawLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_SIB_IMPORTER
-#   include "SIBImporter.h"
+#   include "SIB/SIBImporter.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_OFF_IMPORTER
-#   include "OFFLoader.h"
+#   include "OFF/OFFLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_AC_IMPORTER
-#   include "ACLoader.h"
+#   include "AC/ACLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_BVH_IMPORTER
-#   include "BVHLoader.h"
+#   include "BVH/BVHLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_IRRMESH_IMPORTER
-#   include "IRRMeshLoader.h"
+#   include "IRR/IRRMeshLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_IRR_IMPORTER
-#   include "IRRLoader.h"
+#   include "IRR/IRRLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_Q3D_IMPORTER
-#   include "Q3DLoader.h"
+#   include "Q3D/Q3DLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_B3D_IMPORTER
-#   include "B3DImporter.h"
+#   include "B3D/B3DImporter.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_COLLADA_IMPORTER
-#   include "ColladaLoader.h"
+#   include "Collada/ColladaLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_TERRAGEN_IMPORTER
-#   include "TerragenLoader.h"
+#   include "Terragen/TerragenLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_CSM_IMPORTER
-#   include "CSMLoader.h"
+#   include "CSM/CSMLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_3D_IMPORTER
-#   include "UnrealLoader.h"
+#   include "Unreal/UnrealLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_LWS_IMPORTER
-#   include "LWSLoader.h"
+#   include "LWS/LWSLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_OGRE_IMPORTER
-#   include "OgreImporter.h"
+#   include "Ogre/OgreImporter.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_OPENGEX_IMPORTER
-#   include "OpenGEXImporter.h"
+#   include "OpenGEX/OpenGEXImporter.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_MS3D_IMPORTER
-#   include "MS3DLoader.h"
+#   include "MS3D/MS3DLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_COB_IMPORTER
-#   include "COBLoader.h"
+#   include "COB/COBLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_BLEND_IMPORTER
-#   include "BlenderLoader.h"
+#   include "Blender/BlenderLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_Q3BSP_IMPORTER
-#   include "Q3BSPFileImporter.h"
+#   include "Q3BSP/Q3BSPFileImporter.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_NDO_IMPORTER
-#   include "NDOLoader.h"
+#   include "NDO/NDOLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER
 #   include "Importer/IFC/IFCLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_XGL_IMPORTER
-#   include "XGLLoader.h"
+#   include "XGL/XGLLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_FBX_IMPORTER
-#   include "FBXImporter.h"
+#   include "FBX/FBXImporter.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_ASSBIN_IMPORTER
-#   include "AssbinLoader.h"
+#   include "Assbin/AssbinLoader.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER
-#   include "glTFImporter.h"
-#   include "glTF2Importer.h"
+#   include "glTF/glTFImporter.h"
+#   include "glTF2/glTF2Importer.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_C4D_IMPORTER
-#   include "C4DImporter.h"
+#   include "C4D/C4DImporter.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_3MF_IMPORTER
-#   include "D3MFImporter.h"
+#   include "3MF/D3MFImporter.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_X3D_IMPORTER
-#   include "X3DImporter.hpp"
+#   include "X3D/X3DImporter.hpp"
 #endif
 #ifndef ASSIMP_BUILD_NO_MMD_IMPORTER
-#   include "MMDImporter.h"
+#   include "MMD/MMDImporter.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_STEP_IMPORTER
 #   include "Importer/StepFile/StepFileImporter.h"

+ 28 - 28
code/Common/PostStepRegistry.cpp

@@ -48,88 +48,88 @@ directly (unless you are adding new steps), instead use the
 corresponding preprocessor flag to selectively disable steps.
 */
 
-#include "ProcessHelper.h"
+#include "PostProcessing/ProcessHelper.h"
 
 #ifndef ASSIMP_BUILD_NO_CALCTANGENTS_PROCESS
-#   include "CalcTangentsProcess.h"
+#   include "PostProcessing/CalcTangentsProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_JOINVERTICES_PROCESS
-#   include "JoinVerticesProcess.h"
+#   include "PostProcessing/JoinVerticesProcess.h"
 #endif
 #if !(defined ASSIMP_BUILD_NO_MAKELEFTHANDED_PROCESS && defined ASSIMP_BUILD_NO_FLIPUVS_PROCESS && defined ASSIMP_BUILD_NO_FLIPWINDINGORDER_PROCESS)
-#   include "ConvertToLHProcess.h"
+#   include "PostProcessing/ConvertToLHProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_TRIANGULATE_PROCESS
-#   include "TriangulateProcess.h"
+#   include "PostProcessing/TriangulateProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_DROPFACENORMALS_PROCESS
-#   include "DropFaceNormalsProcess.h"
+#   include "PostProcessing/DropFaceNormalsProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_GENFACENORMALS_PROCESS
-#   include "GenFaceNormalsProcess.h"
+#   include "PostProcessing/GenFaceNormalsProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_GENVERTEXNORMALS_PROCESS
-#   include "GenVertexNormalsProcess.h"
+#   include "PostProcessing/GenVertexNormalsProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_REMOVEVC_PROCESS
-#   include "RemoveVCProcess.h"
+#   include "PostProcessing/RemoveVCProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_SPLITLARGEMESHES_PROCESS
-#   include "SplitLargeMeshes.h"
+#   include "PostProcessing/SplitLargeMeshes.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_PRETRANSFORMVERTICES_PROCESS
-#   include "PretransformVertices.h"
+#   include "PostProcessing/PretransformVertices.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_LIMITBONEWEIGHTS_PROCESS
-#   include "LimitBoneWeightsProcess.h"
+#   include "PostProcessing/LimitBoneWeightsProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_VALIDATEDS_PROCESS
-#   include "ValidateDataStructure.h"
+#   include "PostProcessing/ValidateDataStructure.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_IMPROVECACHELOCALITY_PROCESS
-#   include "ImproveCacheLocality.h"
+#   include "PostProcessing/ImproveCacheLocality.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_FIXINFACINGNORMALS_PROCESS
-#   include "FixNormalsStep.h"
+#   include "PostProcessing/FixNormalsStep.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_REMOVE_REDUNDANTMATERIALS_PROCESS
-#   include "RemoveRedundantMaterials.h"
+#   include "PostProcessing/RemoveRedundantMaterials.h"
 #endif
 #if (!defined ASSIMP_BUILD_NO_EMBEDTEXTURES_PROCESS)
-#   include "EmbedTexturesProcess.h"
+#   include "PostProcessing/EmbedTexturesProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_FINDINVALIDDATA_PROCESS
-#   include "FindInvalidDataProcess.h"
+#   include "PostProcessing/FindInvalidDataProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_FINDDEGENERATES_PROCESS
-#   include "FindDegenerates.h"
+#   include "PostProcessing/FindDegenerates.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_SORTBYPTYPE_PROCESS
-#   include "SortByPTypeProcess.h"
+#   include "PostProcessing/SortByPTypeProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_GENUVCOORDS_PROCESS
-#   include "ComputeUVMappingProcess.h"
+#   include "PostProcessing/ComputeUVMappingProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_TRANSFORMTEXCOORDS_PROCESS
-#   include "TextureTransform.h"
+#   include "PostProcessing/TextureTransform.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_FINDINSTANCES_PROCESS
-#   include "FindInstancesProcess.h"
+#   include "PostProcessing/FindInstancesProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_OPTIMIZEMESHES_PROCESS
-#   include "OptimizeMeshes.h"
+#   include "PostProcessing/OptimizeMeshes.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_OPTIMIZEGRAPH_PROCESS
-#   include "OptimizeGraph.h"
+#   include "PostProcessing/OptimizeGraph.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_SPLITBYBONECOUNT_PROCESS
-#   include "SplitByBoneCountProcess.h"
+#   include "Common/SplitByBoneCountProcess.h"
 #endif
 #ifndef ASSIMP_BUILD_NO_DEBONE_PROCESS
-#   include "DeboneProcess.h"
+#   include "PostProcessing/DeboneProcess.h"
 #endif
 #if (!defined ASSIMP_BUILD_NO_GLOBALSCALE_PROCESS)
-#   include "ScaleProcess.h"
+#   include "PostProcessing/ScaleProcess.h"
 #endif
 
 namespace Assimp {

+ 4 - 3
code/Common/Subdivision.cpp

@@ -43,9 +43,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include <assimp/Subdivision.h>
 #include <assimp/SceneCombiner.h>
 #include <assimp/SpatialSort.h>
-#include "ProcessHelper.h"
 #include <assimp/Vertex.h>
 #include <assimp/ai_assert.h>
+
+#include "PostProcessing/ProcessHelper.h"
+
 #include <stdio.h>
 
 using namespace Assimp;
@@ -56,8 +58,7 @@ void mydummy() {}
  *  implementation is basing on recursive refinement. Directly evaluating the result is also
  *  possible and much quicker, but it depends on lengthy matrix lookup tables. */
 // ------------------------------------------------------------------------------------------------
-class CatmullClarkSubdivider : public Subdivider
-{
+class CatmullClarkSubdivider : public Subdivider {
 public:
     void Subdivide (aiMesh* mesh, aiMesh*& out, unsigned int num, bool discard_input);
     void Subdivide (aiMesh** smesh, size_t nmesh,

+ 4 - 4
code/DXF/DXFLoader.cpp

@@ -48,12 +48,12 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_DXF_IMPORTER
 
-#include "DXFLoader.h"
+#include "DXF/DXFLoader.h"
+#include "DXF/DXFHelper.h"
+#include "PostProcessing/ConvertToLHProcess.h"
+
 #include <assimp/ParsingUtils.h>
-#include "ConvertToLHProcess.h"
 #include <assimp/fast_atof.h>
-
-#include "DXFHelper.h"
 #include <assimp/IOSystem.hpp>
 #include <assimp/scene.h>
 #include <assimp/importerdesc.h>

+ 5 - 3
code/HMP/HMPLoader.cpp

@@ -47,14 +47,16 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_HMP_IMPORTER
 
 // internal headers
-#include "HMPLoader.h"
-#include "MD2FileData.h"
-#include <memory>
+#include "HMP/HMPLoader.h"
+#include "MD2/MD2FileData.h"
+
 #include <assimp/IOSystem.hpp>
 #include <assimp/DefaultLogger.hpp>
 #include <assimp/scene.h>
 #include <assimp/importerdesc.h>
 
+#include <memory>
+
 using namespace Assimp;
 
 static const aiImporterDesc desc = {

+ 3 - 2
code/HMP/HMPLoader.h

@@ -48,8 +48,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 // internal headers
 #include <assimp/BaseImporter.h>
-#include "MDLLoader.h"
-#include "HMPFileData.h"
+
+#include "MDL/MDLLoader.h"
+#include "HMP/HMPFileData.h"
 
 namespace Assimp {
 using namespace HMP;

+ 2 - 2
code/Importer/IFC/IFCBoolean.cpp

@@ -44,8 +44,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER
 #include "code/Importer/IFC/IFCUtil.h"
-#include "code/PolyTools.h"
-#include "code/ProcessHelper.h"
+#include "code/Common/PolyTools.h"
+#include "code/PostProcessing/ProcessHelper.h"
 #include <assimp/Defines.h>
 
 #include <iterator>

+ 4 - 4
code/Importer/IFC/IFCGeometry.cpp

@@ -46,17 +46,17 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER
 #include "IFCUtil.h"
-#include "code/PolyTools.h"
-#include "code/ProcessHelper.h"
+#include "Common/PolyTools.h"
+#include "PostProcessing/ProcessHelper.h"
 
 #include "../contrib/poly2tri/poly2tri/poly2tri.h"
 #include "../contrib/clipper/clipper.hpp"
-#include <memory>
 
+#include <memory>
 #include <iterator>
 
 namespace Assimp {
-    namespace IFC {
+namespace IFC {
 
 // ------------------------------------------------------------------------------------------------
 bool ProcessPolyloop(const Schema_2x3::IfcPolyLoop& loop, TempMesh& meshout, ConversionData& /*conv*/)

+ 2 - 2
code/Importer/IFC/IFCOpenings.cpp

@@ -46,8 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER
 #include "IFCUtil.h"
-#include "code/PolyTools.h"
-#include "code/ProcessHelper.h"
+#include "Common/PolyTools.h"
+#include "PostProcessing/ProcessHelper.h"
 
 #include "../contrib/poly2tri/poly2tri/poly2tri.h"
 #include "../contrib/clipper/clipper.hpp"

+ 1 - 1
code/Importer/IFC/IFCReaderGen_2x3.h

@@ -43,7 +43,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef INCLUDED_IFC_READER_GEN_H
 #define INCLUDED_IFC_READER_GEN_H
 
-#include "code/STEPFile.h"
+#include "code/Step/STEPFile.h"
 
 namespace Assimp {
 namespace IFC {

+ 5 - 8
code/Importer/IFC/IFCUtil.cpp

@@ -44,21 +44,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *  @brief Implementation of conversion routines for some common Ifc helper entities.
  */
 
-
-
 #ifndef ASSIMP_BUILD_NO_IFC_IMPORTER
 
-#include "code/Importer/IFC/IFCUtil.h"
-#include "code/PolyTools.h"
-#include "code/ProcessHelper.h"
+#include "Importer/IFC/IFCUtil.h"
+#include "Common/PolyTools.h"
+#include "PostProcessing/ProcessHelper.h"
 #include <assimp/Defines.h>
 
 namespace Assimp {
-    namespace IFC {
+namespace IFC {
 
 // ------------------------------------------------------------------------------------------------
-void TempOpening::Transform(const IfcMatrix4& mat)
-{
+void TempOpening::Transform(const IfcMatrix4& mat) {
     if(profileMesh) {
         profileMesh->Transform(mat);
     }

+ 1 - 1
code/Importer/IFC/IFCUtil.h

@@ -49,7 +49,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #include "IFCReaderGen_2x3.h"
 #include "IFCLoader.h"
-#include "code/STEPFile.h"
+#include "code/Step/STEPFile.h"
 #include <assimp/mesh.h>
 #include <assimp/material.h>
 

+ 1 - 1
code/Importer/STEPParser/STEPFileReader.h

@@ -43,7 +43,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef INCLUDED_AI_STEPFILEREADER_H
 #define INCLUDED_AI_STEPFILEREADER_H
 
-#include "code/STEPFile.h"
+#include "code/Step/STEPFile.h"
 
 namespace Assimp {
 namespace STEP {

+ 1 - 1
code/Importer/StepFile/StepReaderGen.h

@@ -43,7 +43,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef INCLUDED_STEPFILE_READER_GEN_H
 #define INCLUDED_STEPFILE_READER_GEN_H
 
-#include "code/STEPFile.h"
+#include "code/Step/STEPFile.h"
 
 namespace Assimp {
 namespace StepFile {

+ 5 - 6
code/Irr/IRRLoader.cpp

@@ -49,18 +49,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_IRR_IMPORTER
 
-#include "IRRLoader.h"
+#include "IRR/IRRLoader.h"
+#include "Common/Importer.h"
+
 #include <assimp/ParsingUtils.h>
 #include <assimp/fast_atof.h>
 #include <assimp/GenericProperty.h>
-
 #include <assimp/SceneCombiner.h>
 #include <assimp/StandardShapes.h>
-#include "Importer.h"
-
-// We need MathFunctions.h to compute the lcm/gcd of a number
 #include <assimp/MathFunctions.h>
-#include <memory>
 #include <assimp/DefaultLogger.hpp>
 #include <assimp/mesh.h>
 #include <assimp/material.h>
@@ -69,6 +66,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include <assimp/postprocess.h>
 #include <assimp/importerdesc.h>
 
+#include <memory>
+
 using namespace Assimp;
 using namespace irr;
 using namespace irr::io;

+ 7 - 26
code/Irr/IRRLoader.h

@@ -48,15 +48,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_IRRLOADER_H_INCLUDED
 #define AI_IRRLOADER_H_INCLUDED
 
-#include "IRRShared.h"
+#include "IRR/IRRShared.h"
+#include "Common/Importer.h"
+
 #include <assimp/SceneCombiner.h>
-#include "Importer.h"
 #include <assimp/StringUtils.h>
 #include <assimp/anim.h>
 
 namespace Assimp    {
 
-
 // ---------------------------------------------------------------------------
 /** Irr importer class.
  *
@@ -64,15 +64,11 @@ namespace Assimp    {
  * irrEdit. As IrrEdit itself is capable of importing quite many file formats,
  * it might be a good file format for data exchange.
  */
-class IRRImporter : public BaseImporter, public IrrlichtBase
-{
+class IRRImporter : public BaseImporter, public IrrlichtBase {
 public:
     IRRImporter();
     ~IRRImporter();
 
-
-public:
-
     // -------------------------------------------------------------------
     /** Returns whether the class can handle the format of the given file.
      *  See BaseImporter::CanRead() for details.
@@ -81,32 +77,17 @@ public:
         bool checkSig) const;
 
 protected:
-
-    // -------------------------------------------------------------------
-    /**
-     */
     const aiImporterDesc* GetInfo () const;
-
-    // -------------------------------------------------------------------
-    /**
-     */
-    void InternReadFile( const std::string& pFile, aiScene* pScene,
-        IOSystem* pIOHandler);
-
-    // -------------------------------------------------------------------
-    /**
-    */
+    void InternReadFile( const std::string& pFile, aiScene* pScene, IOSystem* pIOHandler);
     void SetupProperties(const Importer* pImp);
 
 private:
 
     /** Data structure for a scenegraph node animator
      */
-    struct Animator
-    {
+    struct Animator {
         // Type of the animator
-        enum AT
-        {
+        enum AT {
             UNKNOWN       = 0x0,
             ROTATION      = 0x1,
             FLY_CIRCLE    = 0x2,

+ 2 - 2
code/LWO/LWOFileData.h

@@ -57,8 +57,8 @@ The chunks are taken from the official LightWave SDK headers.
 #include <assimp/mesh.h>
 
 // internal headers
-#include "IFF.h"
-#include "LWOAnimation.h"
+#include "Common/IFF.h"
+#include "LWO/LWOAnimation.h"
 
 namespace Assimp {
 namespace LWO {

+ 5 - 3
code/LWO/LWOLoader.cpp

@@ -49,14 +49,16 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_LWO_IMPORTER
 
 // internal headers
-#include "LWOLoader.h"
+#include "LWO/LWOLoader.h"
+#include "PostProcessing/ProcessHelper.h"
+#include "PostProcessing/ConvertToLHProcess.h"
+
 #include <assimp/StringComparison.h>
 #include <assimp/SGSpatialSort.h>
 #include <assimp/ByteSwapper.h>
-#include "ProcessHelper.h"
-#include "ConvertToLHProcess.h"
 #include <assimp/IOSystem.hpp>
 #include <assimp/importerdesc.h>
+
 #include <memory>
 #include <sstream>
 #include <iomanip>

+ 5 - 4
code/LWS/LWSLoader.cpp

@@ -48,19 +48,20 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_LWS_IMPORTER
 
-#include "LWSLoader.h"
+#include "LWS/LWSLoader.h"
+#include "PostProcessing/ConvertToLHProcess.h"
+#include "Common/Importer.h"
+
 #include <assimp/ParsingUtils.h>
 #include <assimp/fast_atof.h>
-
 #include <assimp/SceneCombiner.h>
 #include <assimp/GenericProperty.h>
 #include <assimp/SkeletonMeshBuilder.h>
-#include "ConvertToLHProcess.h"
-#include "Importer.h"
 #include <assimp/DefaultLogger.hpp>
 #include <assimp/scene.h>
 #include <assimp/IOSystem.hpp>
 #include <assimp/importerdesc.h>
+
 #include <memory>
 
 using namespace Assimp;

+ 2 - 1
code/LWS/LWSLoader.h

@@ -46,7 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_LWSLOADER_H_INCLUDED
 #define AI_LWSLOADER_H_INCLUDED
 
-#include "LWOFileData.h"
+#include "LWO/LWOFileData.h"
+
 #include <assimp/SceneCombiner.h>
 #include <assimp/BaseImporter.h>
 

+ 5 - 3
code/MD3/MD3Loader.cpp

@@ -53,19 +53,21 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_MD3_IMPORTER
 
-#include "MD3Loader.h"
+#include "MD3/MD3Loader.h"
+#include "Common/Importer.h"
+
 #include <assimp/SceneCombiner.h>
 #include <assimp/GenericProperty.h>
 #include <assimp/RemoveComments.h>
 #include <assimp/ParsingUtils.h>
-#include "Importer.h"
 #include <assimp/DefaultLogger.hpp>
-#include <memory>
 #include <assimp/IOSystem.hpp>
 #include <assimp/material.h>
 #include <assimp/scene.h>
 #include <assimp/importerdesc.h>
+
 #include <cctype>
+#include <memory>
 
 using namespace Assimp;
 

+ 3 - 4
code/MD5/MD5Parser.cpp

@@ -47,16 +47,15 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 
 // internal headers
-#include "MD5Loader.h"
-#include "MaterialSystem.h"
+#include "MD5/MD5Loader.h"
+#include "Material/MaterialSystem.h"
+
 #include <assimp/fast_atof.h>
 #include <assimp/ParsingUtils.h>
 #include <assimp/StringComparison.h>
 #include <assimp/DefaultLogger.hpp>
 #include <assimp/mesh.h>
 
-
-
 using namespace Assimp;
 using namespace Assimp::MD5;
 

+ 5 - 4
code/MDC/MDCLoader.cpp

@@ -47,16 +47,17 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_MDC_IMPORTER
 
 // internal headers
-#include "MDCLoader.h"
-#include "MD3FileData.h"
-#include "MDCNormalTable.h" // shouldn't be included by other units
+#include "MDC/MDCLoader.h"
+#include "MD3/MD3FileData.h"
+#include "MDC/MDCNormalTable.h" // shouldn't be included by other units
+
 #include <assimp/DefaultLogger.hpp>
 #include <assimp/Importer.hpp>
 #include <assimp/IOSystem.hpp>
 #include <assimp/scene.h>
 #include <assimp/importerdesc.h>
-#include <memory>
 
+#include <memory>
 
 using namespace Assimp;
 using namespace Assimp::MDC;

+ 4 - 3
code/MDL/MDLLoader.cpp

@@ -50,11 +50,12 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_MDL_IMPORTER
 
-#include "MDLLoader.h"
+#include "MDL/MDLLoader.h"
+#include "MDL/MDLDefaultColorMap.h"
+#include "MD2/MD2FileData.h"
+
 #include <assimp/Macros.h>
 #include <assimp/qnan.h>
-#include "MDLDefaultColorMap.h"
-#include "MD2FileData.h"
 #include <assimp/StringUtils.h>
 #include <assimp/Importer.hpp>
 #include <assimp/IOSystem.hpp>

+ 1 - 1
code/MDL/MDLLoader.h

@@ -50,7 +50,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #include <assimp/BaseImporter.h>
 #include "MDLFileData.h"
-#include "HalfLifeFileData.h"
+#include "HMP/HalfLifeFileData.h"
 
 struct aiNode;
 struct aiTexture;

+ 7 - 5
code/MMD/MMDImporter.cpp

@@ -41,15 +41,17 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_MMD_IMPORTER
 
-#include "MMDImporter.h"
-#include "MMDPmdParser.h"
-#include "MMDPmxParser.h"
-#include "MMDVmdParser.h"
-#include "ConvertToLHProcess.h"
+#include "MMD/MMDImporter.h"
+#include "MMD/MMDPmdParser.h"
+#include "MMD/MMDPmxParser.h"
+#include "MMD/MMDVmdParser.h"
+#include "PostProcessing/ConvertToLHProcess.h"
+
 #include <assimp/DefaultIOSystem.h>
 #include <assimp/Importer.hpp>
 #include <assimp/ai_assert.h>
 #include <assimp/scene.h>
+
 #include <fstream>
 #include <iomanip>
 #include <memory>

+ 3 - 2
code/OpenGEX/OpenGEXImporter.cpp

@@ -41,10 +41,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
 #ifndef ASSIMP_BUILD_NO_OPENGEX_IMPORTER
 
-#include "OpenGEXImporter.h"
+#include "OpenGEX/OpenGEXImporter.h"
+#include "PostProcessing/MakeVerboseFormat.h"
+
 #include <assimp/DefaultIOSystem.h>
 #include <assimp/DefaultLogger.hpp>
-#include "MakeVerboseFormat.h"
 #include <assimp/StringComparison.h>
 
 #include <openddlparser/OpenDDLParser.h>

+ 2 - 2
code/PostProcessing/CalcTangentsProcess.h

@@ -42,11 +42,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 
 /** @file Defines a post processing step to calculate tangents and
-    bitangents on all imported meshes.*/
+    bi-tangents on all imported meshes.*/
 #ifndef AI_CALCTANGENTSPROCESS_H_INC
 #define AI_CALCTANGENTSPROCESS_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 
 struct aiMesh;
 

+ 2 - 1
code/PostProcessing/ComputeUVMappingProcess.h

@@ -45,7 +45,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_COMPUTEUVMAPPING_H_INC
 #define AI_COMPUTEUVMAPPING_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
+
 #include <assimp/mesh.h>
 #include <assimp/material.h>
 #include <assimp/types.h>

+ 2 - 1
code/PostProcessing/ConvertToLHProcess.h

@@ -52,7 +52,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #define AI_CONVERTTOLHPROCESS_H_INC
 
 #include <assimp/types.h>
-#include "BaseProcess.h"
+
+#include "Common/BaseProcess.h"
 
 struct aiMesh;
 struct aiNodeAnim;

+ 7 - 10
code/PostProcessing/DeboneProcess.h

@@ -44,17 +44,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_DEBONEPROCESS_H_INC
 #define AI_DEBONEPROCESS_H_INC
 
-#include <vector>
-#include <utility>
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 
 #include <assimp/mesh.h>
 #include <assimp/scene.h>
 
+#include <vector>
+#include <utility>
+
+#// Forward declarations
 class DeboneTest;
 
-namespace Assimp
-{
+namespace Assimp {
 
 #if (!defined AI_DEBONE_THRESHOLD)
 #   define AI_DEBONE_THRESHOLD  1.0f
@@ -66,14 +67,11 @@ namespace Assimp
 * the bone are split from the mesh. The split off (new) mesh is boneless. At any
 * point in time, bones without affect upon a given mesh are to be removed.
 */
-class DeboneProcess : public BaseProcess
-{
+class DeboneProcess : public BaseProcess {
 public:
-
     DeboneProcess();
     ~DeboneProcess();
 
-public:
     // -------------------------------------------------------------------
     /** Returns whether the processing step is present in the given flag.
     * @param pFlags The processing flags the importer was called with.
@@ -91,7 +89,6 @@ public:
     void SetupProperties(const Importer* pImp);
 
 protected:
-
     // -------------------------------------------------------------------
     /** Executes the post processing step on the given imported data.
     * At the moment a process is not supposed to fail.

+ 4 - 7
code/PostProcessing/DropFaceNormalsProcess.h

@@ -44,23 +44,20 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_DROPFACENORMALPROCESS_H_INC
 #define AI_DROPFACENORMALPROCESS_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
+
 #include <assimp/mesh.h>
 
-namespace Assimp
-{
+namespace Assimp {
 
 // ---------------------------------------------------------------------------
 /** The DropFaceNormalsProcess computes face normals for all faces of all meshes
 */
-class ASSIMP_API_WINONLY DropFaceNormalsProcess : public BaseProcess
-{
+class ASSIMP_API_WINONLY DropFaceNormalsProcess : public BaseProcess {
 public:
-
     DropFaceNormalsProcess();
     ~DropFaceNormalsProcess();
 
-public:
     // -------------------------------------------------------------------
     /** Returns whether the processing step is present in the given flag field.
     * @param pFlags The processing flags the importer was called with. A bitwise

+ 1 - 1
code/PostProcessing/EmbedTexturesProcess.h

@@ -42,7 +42,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #pragma once
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 
 #include <string>
 

+ 2 - 1
code/PostProcessing/FindDegenerates.h

@@ -45,7 +45,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_FINDDEGENERATESPROCESS_H_INC
 #define AI_FINDDEGENERATESPROCESS_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
+
 #include <assimp/mesh.h>
 
 class FindDegeneratesProcessTest;

+ 2 - 2
code/PostProcessing/FindInstancesProcess.h

@@ -46,8 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_FINDINSTANCES_H_INC
 #define AI_FINDINSTANCES_H_INC
 
-#include "BaseProcess.h"
-#include "ProcessHelper.h"
+#include "Common/BaseProcess.h"
+#include "PostProcessing/ProcessHelper.h"
 
 class FindInstancesProcessTest;
 namespace Assimp    {

+ 2 - 1
code/PostProcessing/FindInvalidDataProcess.h

@@ -46,7 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_FINDINVALIDDATA_H_INC
 #define AI_FINDINVALIDDATA_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
+
 #include <assimp/types.h>
 #include <assimp/anim.h>
 

+ 1 - 1
code/PostProcessing/FixNormalsStep.h

@@ -45,7 +45,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_FIXNORMALSPROCESS_H_INC
 #define AI_FIXNORMALSPROCESS_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 
 struct aiMesh;
 

+ 1 - 1
code/PostProcessing/GenFaceNormalsProcess.h

@@ -44,7 +44,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_GENFACENORMALPROCESS_H_INC
 #define AI_GENFACENORMALPROCESS_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 #include <assimp/mesh.h>
 
 namespace Assimp

+ 7 - 11
code/PostProcessing/GenVertexNormalsProcess.h

@@ -45,24 +45,24 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_GENVERTEXNORMALPROCESS_H_INC
 #define AI_GENVERTEXNORMALPROCESS_H_INC
 
-#include "BaseProcess.h"
+#include "Common/assbin_chunks.h"
+#include "Common/BaseProcess.h"
+
 #include <assimp/mesh.h>
 
+// Forward declarations
 class GenNormalsTest;
 
 namespace Assimp {
 
 // ---------------------------------------------------------------------------
-/** The GenFaceNormalsProcess computes vertex normals for all vertizes
+/** The GenFaceNormalsProcess computes vertex normals for all vertices
 */
-class ASSIMP_API GenVertexNormalsProcess : public BaseProcess
-{
+class ASSIMP_API GenVertexNormalsProcess : public BaseProcess {
 public:
-
     GenVertexNormalsProcess();
     ~GenVertexNormalsProcess();
 
-public:
     // -------------------------------------------------------------------
     /** Returns whether the processing step is present in the given flag.
     * @param pFlags The processing flags the importer was called with.
@@ -88,13 +88,10 @@ public:
 
 
     // setter for configMaxAngle
-    inline void SetMaxSmoothAngle(ai_real f)
-    {
+    inline void SetMaxSmoothAngle(ai_real f) {
         configMaxAngle =f;
     }
 
-public:
-
     // -------------------------------------------------------------------
     /** Computes normals for a specific mesh
     *  @param pcMesh Mesh
@@ -104,7 +101,6 @@ public:
     bool GenMeshVertexNormals (aiMesh* pcMesh, unsigned int meshIndex);
 
 private:
-
     /** Configuration option: maximum smoothing angle, in radians*/
     ai_real configMaxAngle;
     mutable bool force_ = false;

+ 29 - 36
code/PostProcessing/ImproveCacheLocality.cpp

@@ -45,14 +45,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  * <br>
  * The algorithm is roughly basing on this paper:
  * http://www.cs.princeton.edu/gfx/pubs/Sander_2007_%3ETR/tipsy.pdf
- *   .. although overdraw rduction isn't implemented yet ...
+ *   .. although overdraw reduction isn't implemented yet ...
  */
 
-
-
 // internal headers
-#include "ImproveCacheLocality.h"
-#include "VertexTriangleAdjacency.h"
+#include "PostProcessing/ImproveCacheLocality.h"
+#include "Common/VertexTriangleAdjacency.h"
+
 #include <assimp/StringUtils.h>
 #include <assimp/postprocess.h>
 #include <assimp/scene.h>
@@ -64,36 +63,33 @@ using namespace Assimp;
 
 // ------------------------------------------------------------------------------------------------
 // Constructor to be privately used by Importer
-ImproveCacheLocalityProcess::ImproveCacheLocalityProcess() {
-    configCacheDepth = PP_ICL_PTCACHE_SIZE;
+ImproveCacheLocalityProcess::ImproveCacheLocalityProcess()
+: mConfigCacheDepth(PP_ICL_PTCACHE_SIZE) {
+    // empty
 }
 
 // ------------------------------------------------------------------------------------------------
 // Destructor, private as well
-ImproveCacheLocalityProcess::~ImproveCacheLocalityProcess()
-{
+ImproveCacheLocalityProcess::~ImproveCacheLocalityProcess() {
     // nothing to do here
 }
 
 // ------------------------------------------------------------------------------------------------
 // Returns whether the processing step is present in the given flag field.
-bool ImproveCacheLocalityProcess::IsActive( unsigned int pFlags) const
-{
+bool ImproveCacheLocalityProcess::IsActive( unsigned int pFlags) const {
     return (pFlags & aiProcess_ImproveCacheLocality) != 0;
 }
 
 // ------------------------------------------------------------------------------------------------
 // Setup configuration
-void ImproveCacheLocalityProcess::SetupProperties(const Importer* pImp)
-{
+void ImproveCacheLocalityProcess::SetupProperties(const Importer* pImp) {
     // AI_CONFIG_PP_ICL_PTCACHE_SIZE controls the target cache size for the optimizer
-    configCacheDepth = pImp->GetPropertyInteger(AI_CONFIG_PP_ICL_PTCACHE_SIZE,PP_ICL_PTCACHE_SIZE);
+    mConfigCacheDepth = pImp->GetPropertyInteger(AI_CONFIG_PP_ICL_PTCACHE_SIZE,PP_ICL_PTCACHE_SIZE);
 }
 
 // ------------------------------------------------------------------------------------------------
 // Executes the post processing step on the given imported data.
-void ImproveCacheLocalityProcess::Execute( aiScene* pScene)
-{
+void ImproveCacheLocalityProcess::Execute( aiScene* pScene) {
     if (!pScene->mNumMeshes) {
         ASSIMP_LOG_DEBUG("ImproveCacheLocalityProcess skipped; there are no meshes");
         return;
@@ -103,7 +99,7 @@ void ImproveCacheLocalityProcess::Execute( aiScene* pScene)
 
     float out = 0.f;
     unsigned int numf = 0, numm = 0;
-    for( unsigned int a = 0; a < pScene->mNumMeshes; a++){
+    for( unsigned int a = 0; a < pScene->mNumMeshes; ++a ){
         const float res = ProcessMesh( pScene->mMeshes[a],a);
         if (res) {
             numf += pScene->mMeshes[a]->mNumFaces;
@@ -121,44 +117,41 @@ void ImproveCacheLocalityProcess::Execute( aiScene* pScene)
 
 // ------------------------------------------------------------------------------------------------
 // Improves the cache coherency of a specific mesh
-float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int meshNum)
-{
+ai_real ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int meshNum) {
     // TODO: rewrite this to use std::vector or boost::shared_array
-    ai_assert(NULL != pMesh);
+    ai_assert(nullptr != pMesh);
 
     // Check whether the input data is valid
     // - there must be vertices and faces
     // - all faces must be triangulated or we can't operate on them
     if (!pMesh->HasFaces() || !pMesh->HasPositions())
-        return 0.f;
+        return static_cast<ai_real>(0.f);
 
     if (pMesh->mPrimitiveTypes != aiPrimitiveType_TRIANGLE) {
         ASSIMP_LOG_ERROR("This algorithm works on triangle meshes only");
-        return 0.f;
+        return static_cast<ai_real>(0.f);
     }
 
-    if(pMesh->mNumVertices <= configCacheDepth) {
-        return 0.f;
+    if(pMesh->mNumVertices <= mConfigCacheDepth) {
+        return static_cast<ai_real>(0.f);
     }
 
-    float fACMR = 3.f;
+    ai_real fACMR = 3.f;
     const aiFace* const pcEnd = pMesh->mFaces+pMesh->mNumFaces;
 
     // Input ACMR is for logging purposes only
     if (!DefaultLogger::isNullLogger())     {
 
-        unsigned int* piFIFOStack = new unsigned int[configCacheDepth];
-        memset(piFIFOStack,0xff,configCacheDepth*sizeof(unsigned int));
+        unsigned int* piFIFOStack = new unsigned int[mConfigCacheDepth];
+        memset(piFIFOStack,0xff,mConfigCacheDepth*sizeof(unsigned int));
         unsigned int* piCur = piFIFOStack;
-        const unsigned int* const piCurEnd = piFIFOStack + configCacheDepth;
+        const unsigned int* const piCurEnd = piFIFOStack + mConfigCacheDepth;
 
         // count the number of cache misses
         unsigned int iCacheMisses = 0;
         for (const aiFace* pcFace = pMesh->mFaces;pcFace != pcEnd;++pcFace) {
-
             for (unsigned int qq = 0; qq < 3;++qq) {
                 bool bInCache = false;
-
                 for (unsigned int* pp = piFIFOStack;pp < piCurEnd;++pp) {
                     if (*pp == pcFace->mIndices[qq])    {
                         // the vertex is in cache
@@ -176,7 +169,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh
             }
         }
         delete[] piFIFOStack;
-        fACMR = (float)iCacheMisses / pMesh->mNumFaces;
+        fACMR = (ai_real) iCacheMisses / pMesh->mNumFaces;
         if (3.0 == fACMR)   {
             char szBuff[128]; // should be sufficiently large in every case
 
@@ -185,7 +178,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh
             // smaller than 3.0 ...
             ai_snprintf(szBuff,128,"Mesh %u: Not suitable for vcache optimization",meshNum);
             ASSIMP_LOG_WARN(szBuff);
-            return 0.f;
+            return static_cast<ai_real>(0.f);
         }
     }
 
@@ -258,7 +251,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh
 
     int ivdx = 0;
     int ics = 1;
-    int iStampCnt = configCacheDepth+1;
+    int iStampCnt = mConfigCacheDepth+1;
     while (ivdx >= 0)   {
 
         unsigned int icnt = piNumTriPtrNoModify[ivdx];
@@ -294,7 +287,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh
                     *piCSIter++ = dp;
 
                     // if the vertex is not yet in cache, set its cache count
-                    if (iStampCnt-piCachingStamps[dp] > configCacheDepth) {
+                    if (iStampCnt-piCachingStamps[dp] > mConfigCacheDepth) {
                         piCachingStamps[dp] = iStampCnt++;
                         ++iCacheMisses;
                     }
@@ -319,7 +312,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh
 
                 // will the vertex be in cache, even after fanning occurs?
                 unsigned int tmp;
-                if ((tmp = iStampCnt-piCachingStamps[dp]) + 2*piNumTriPtr[dp] <= configCacheDepth) {
+                if ((tmp = iStampCnt-piCachingStamps[dp]) + 2*piNumTriPtr[dp] <= mConfigCacheDepth) {
                     priority = tmp;
                 }
 
@@ -356,7 +349,7 @@ float ImproveCacheLocalityProcess::ProcessMesh( aiMesh* pMesh, unsigned int mesh
             }
         }
     }
-    float fACMR2 = 0.0f;
+    ai_real fACMR2 = 0.0f;
     if (!DefaultLogger::isNullLogger()) {
         fACMR2 = (float)iCacheMisses / pMesh->mNumFaces;
 

+ 4 - 3
code/PostProcessing/ImproveCacheLocality.h

@@ -45,7 +45,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_IMPROVECACHELOCALITY_H_INC
 #define AI_IMPROVECACHELOCALITY_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
+
 #include <assimp/types.h>
 
 struct aiMesh;
@@ -87,12 +88,12 @@ protected:
      * @param pMesh The mesh to process.
      * @param meshNum Index of the mesh to process
      */
-    float ProcessMesh( aiMesh* pMesh, unsigned int meshNum);
+    ai_real ProcessMesh( aiMesh* pMesh, unsigned int meshNum);
 
 private:
     //! Configuration parameter: specifies the size of the cache to
     //! optimize the vertex data for.
-    unsigned int configCacheDepth;
+    unsigned int mConfigCacheDepth;
 };
 
 } // end of namespace Assimp

+ 3 - 7
code/PostProcessing/JoinVerticesProcess.h

@@ -45,7 +45,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_JOINVERTICESPROCESS_H_INC
 #define AI_JOINVERTICESPROCESS_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
+
 #include <assimp/types.h>
 
 struct aiMesh;
@@ -61,13 +62,11 @@ namespace Assimp
  * erases all but one of the copies. This usually reduces the number of vertices
  * in a mesh by a serious amount and is the standard form to render a mesh.
  */
-class ASSIMP_API JoinVerticesProcess : public BaseProcess
-{
+class ASSIMP_API JoinVerticesProcess : public BaseProcess {
 public:
     JoinVerticesProcess();
     ~JoinVerticesProcess();
 
-public:
     // -------------------------------------------------------------------
     /** Returns whether the processing step is present in the given flag field.
      * @param pFlags The processing flags the importer was called with. A bitwise
@@ -83,15 +82,12 @@ public:
     */
     void Execute( aiScene* pScene);
 
-public:
     // -------------------------------------------------------------------
     /** Unites identical vertices in the given mesh.
      * @param pMesh The mesh to process.
      * @param meshIndex Index of the mesh to process
      */
     int ProcessMesh( aiMesh* pMesh, unsigned int meshIndex);
-
-private:
 };
 
 } // end of namespace Assimp

+ 12 - 22
code/PostProcessing/LimitBoneWeightsProcess.h

@@ -44,14 +44,14 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_LIMITBONEWEIGHTSPROCESS_H_INC
 #define AI_LIMITBONEWEIGHTSPROCESS_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 
+// Forward declarations
 struct aiMesh;
 
 class LimitBoneWeightsTest;
 
-namespace Assimp
-{
+namespace Assimp {
 
 // NOTE: If you change these limits, don't forget to change the
 // corresponding values in all Assimp ports
@@ -72,14 +72,11 @@ namespace Assimp
 * The other weights on this bone are then renormalized to assure the sum weight
 * to be 1.
 */
-class ASSIMP_API LimitBoneWeightsProcess : public BaseProcess
-{
+class ASSIMP_API LimitBoneWeightsProcess : public BaseProcess {
 public:
-
     LimitBoneWeightsProcess();
     ~LimitBoneWeightsProcess();
 
-public:
     // -------------------------------------------------------------------
     /** Returns whether the processing step is present in the given flag.
     * @param pFlags The processing flags the importer was called with.
@@ -96,8 +93,6 @@ public:
     */
     void SetupProperties(const Importer* pImp);
 
-public:
-
     // -------------------------------------------------------------------
     /** Limits the bone weight count for all vertices in the given mesh.
     * @param pMesh The mesh to process.
@@ -111,34 +106,29 @@ public:
     */
     void Execute( aiScene* pScene);
 
-
-public:
-
     // -------------------------------------------------------------------
     /** Describes a bone weight on a vertex */
-    struct Weight
-    {
+    struct Weight {
         unsigned int mBone; ///< Index of the bone
         float mWeight;      ///< Weight of that bone on this vertex
         Weight() AI_NO_EXCEPT
         : mBone(0)
-        , mWeight(0.0f)
-        { }
+        , mWeight(0.0f) {
+            // empty
+        }
 
         Weight( unsigned int pBone, float pWeight)
-        {
-            mBone = pBone;
-            mWeight = pWeight;
+        : mBone(pBone)
+        , mWeight(pWeight) {
+            // empty
         }
 
         /** Comparison operator to sort bone weights by descending weight */
-        bool operator < (const Weight& pWeight) const
-        {
+        bool operator < (const Weight& pWeight) const {
             return mWeight > pWeight.mWeight;
         }
     };
 
-public:
     /** Maximum number of bones influencing any single vertex. */
     unsigned int mMaxWeights;
 };

+ 2 - 1
code/PostProcessing/MakeVerboseFormat.h

@@ -46,7 +46,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_MAKEVERBOSEFORMAT_H_INC
 #define AI_MAKEVERBOSEFORMAT_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
+
 struct aiMesh;
 
 namespace Assimp    {

+ 0 - 2
code/PostProcessing/OptimizeGraph.cpp

@@ -5,8 +5,6 @@ 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,

+ 11 - 16
code/PostProcessing/OptimizeGraph.h

@@ -46,13 +46,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_OPTIMIZEGRAPHPROCESS_H_INC
 #define AI_OPTIMIZEGRAPHPROCESS_H_INC
 
-#include "BaseProcess.h"
-#include "ProcessHelper.h"
+#include "Common/BaseProcess.h"
+#include "PostProcessing/ProcessHelper.h"
+
 #include <assimp/types.h>
+
 #include <set>
 
+// Forward declarations
 struct aiMesh;
+
 class OptimizeGraphProcessTest;
+
 namespace Assimp    {
 
 // -----------------------------------------------------------------------------
@@ -64,14 +69,11 @@ namespace Assimp    {
  *  @see aiProcess_OptimizeGraph for a detailed description of the
  *  algorithm being applied.
  */
-class OptimizeGraphProcess : public BaseProcess
-{
+class OptimizeGraphProcess : public BaseProcess {
 public:
-
     OptimizeGraphProcess();
     ~OptimizeGraphProcess();
 
-public:
     // -------------------------------------------------------------------
     bool IsActive( unsigned int pFlags) const;
 
@@ -81,14 +83,12 @@ public:
     // -------------------------------------------------------------------
     void SetupProperties(const Importer* pImp);
 
-
     // -------------------------------------------------------------------
     /** @brief Add a list of node names to be locked and not modified.
      *  @param in List of nodes. See #AI_CONFIG_PP_OG_EXCLUDE_LIST for
      *    format explanations.
      */
-    inline void AddLockedNodeList(std::string& in)
-    {
+    inline void AddLockedNodeList(std::string& in) {
         ConvertListToStrings (in,locked_nodes);
     }
 
@@ -96,8 +96,7 @@ public:
     /** @brief Add another node to be locked and not modified.
      *  @param name Name to be locked
      */
-    inline void AddLockedNode(std::string& name)
-    {
+    inline void AddLockedNode(std::string& name) {
         locked_nodes.push_back(name);
     }
 
@@ -105,25 +104,21 @@ public:
     /** @brief Remove a node from the list of locked nodes.
      *  @param name Name to be unlocked
      */
-    inline void RemoveLockedNode(std::string& name)
-    {
+    inline void RemoveLockedNode(std::string& name) {
         locked_nodes.remove(name);
     }
 
 protected:
-
     void CollectNewChildren(aiNode* nd, std::list<aiNode*>& nodes);
     void FindInstancedMeshes (aiNode* pNode);
 
 private:
-
 #ifdef AI_OG_USE_HASHING
     typedef std::set<unsigned int> LockedSetType;
 #else
     typedef std::set<std::string> LockedSetType;
 #endif
 
-
     //! Scene we're working with
     aiScene* mScene;
 

+ 5 - 5
code/PostProcessing/OptimizeMeshes.h

@@ -46,8 +46,10 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_OPTIMIZEMESHESPROCESS_H_INC
 #define AI_OPTIMIZEMESHESPROCESS_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
+
 #include <assimp/types.h>
+
 #include <vector>
 
 struct aiMesh;
@@ -64,16 +66,14 @@ namespace Assimp    {
  *
  *  @note Instanced meshes are currently not processed.
  */
-class OptimizeMeshesProcess : public BaseProcess
-{
+class OptimizeMeshesProcess : public BaseProcess {
 public:
     /// @brief  The class constructor.
     OptimizeMeshesProcess();
 
-    /// @brief  The class destcructor,
+    /// @brief  The class destructor.
     ~OptimizeMeshesProcess();
 
-
     /** @brief Internal utility to store additional mesh info
      */
     struct MeshInfo {

+ 9 - 6
code/PostProcessing/PretransformVertices.h

@@ -47,13 +47,18 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_PRETRANSFORMVERTICES_H_INC
 #define AI_PRETRANSFORMVERTICES_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
+
 #include <assimp/mesh.h>
+
 #include <list>
 #include <vector>
 
+// Forward declarations
 struct aiNode;
+
 class PretransformVerticesTest;
+
 namespace Assimp    {
 
 // ---------------------------------------------------------------------------
@@ -80,10 +85,10 @@ public:
 
     // -------------------------------------------------------------------
     /** @brief Toggle the 'keep hierarchy' option
-     *  @param d hm ... difficult to guess what this means, hu!?
+     *  @param keep    true for keep configuration.
      */
-    void KeepHierarchy(bool d) {
-        configKeepHierarchy = d;
+    void KeepHierarchy(bool keep) {
+        configKeepHierarchy = keep;
     }
 
     // -------------------------------------------------------------------
@@ -148,8 +153,6 @@ private:
     // Build reference counters for all meshes
     void BuildMeshRefCountArray(aiNode* nd, unsigned int * refs);
 
-
-
     //! Configuration option: keep scene hierarchy as long as possible
     bool configKeepHierarchy;
     bool configNormalize;

+ 1 - 1
code/PostProcessing/ProcessHelper.h

@@ -51,7 +51,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include <assimp/scene.h>
 
 #include <assimp/SpatialSort.h>
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 #include <assimp/ParsingUtils.h>
 
 #include <list>

+ 5 - 5
code/PostProcessing/RemoveRedundantMaterials.cpp

@@ -49,7 +49,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include "RemoveRedundantMaterials.h"
 #include <assimp/ParsingUtils.h>
 #include "ProcessHelper.h"
-#include "MaterialSystem.h"
+#include "Material/MaterialSystem.h"
 #include <stdio.h>
 
 using namespace Assimp;
@@ -57,7 +57,7 @@ using namespace Assimp;
 // ------------------------------------------------------------------------------------------------
 // Constructor to be privately used by Importer
 RemoveRedundantMatsProcess::RemoveRedundantMatsProcess()
-: configFixedMaterials() {
+: mConfigFixedMaterials() {
     // nothing to do here
 }
 
@@ -80,7 +80,7 @@ bool RemoveRedundantMatsProcess::IsActive( unsigned int pFlags) const
 void RemoveRedundantMatsProcess::SetupProperties(const Importer* pImp)
 {
     // Get value of AI_CONFIG_PP_RRM_EXCLUDE_LIST
-    configFixedMaterials = pImp->GetPropertyString(AI_CONFIG_PP_RRM_EXCLUDE_LIST,"");
+    mConfigFixedMaterials = pImp->GetPropertyString(AI_CONFIG_PP_RRM_EXCLUDE_LIST,"");
 }
 
 // ------------------------------------------------------------------------------------------------
@@ -100,10 +100,10 @@ void RemoveRedundantMatsProcess::Execute( aiScene* pScene)
         // If a list of materials to be excluded was given, match the list with
         // our imported materials and 'salt' all positive matches to ensure that
         // we get unique hashes later.
-        if (configFixedMaterials.length()) {
+        if (mConfigFixedMaterials.length()) {
 
             std::list<std::string> strings;
-            ConvertListToStrings(configFixedMaterials,strings);
+            ConvertListToStrings(mConfigFixedMaterials,strings);
 
             for (unsigned int i = 0; i < pScene->mNumMaterials;++i) {
                 aiMaterial* mat = pScene->mMaterials[i];

+ 7 - 11
code/PostProcessing/RemoveRedundantMaterials.h

@@ -46,7 +46,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_REMOVEREDUNDANTMATERIALS_H_INC
 #define AI_REMOVEREDUNDANTMATERIALS_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 #include <assimp/mesh.h>
 
 class RemoveRedundantMatsTest;
@@ -57,8 +57,7 @@ namespace Assimp    {
 /** RemoveRedundantMatsProcess: Post-processing step to remove redundant
  *  materials from the imported scene.
  */
-class ASSIMP_API RemoveRedundantMatsProcess : public BaseProcess
-{
+class ASSIMP_API RemoveRedundantMatsProcess : public BaseProcess {
 public:
     /// The default class constructor.
     RemoveRedundantMatsProcess();
@@ -66,7 +65,6 @@ public:
     /// The class destructor.
     ~RemoveRedundantMatsProcess();
 
-public:
     // -------------------------------------------------------------------
     // Check whether step is active
     bool IsActive( unsigned int pFlags) const;
@@ -79,27 +77,25 @@ public:
     // Setup import settings
     void SetupProperties(const Importer* pImp);
 
-
     // -------------------------------------------------------------------
-    /** @brief Set list of fixed (unmutable) materials
+    /** @brief Set list of fixed (inmutable) materials
      *  @param fixed See #AI_CONFIG_PP_RRM_EXCLUDE_LIST
      */
     void SetFixedMaterialsString(const std::string& fixed = "") {
-        configFixedMaterials = fixed;
+        mConfigFixedMaterials = fixed;
     }
 
     // -------------------------------------------------------------------
-    /** @brief Get list of fixed (unmutable) materials
+    /** @brief Get list of fixed (inmutable) materials
      *  @return See #AI_CONFIG_PP_RRM_EXCLUDE_LIST
      */
     const std::string& GetFixedMaterialsString() const {
-        return configFixedMaterials;
+        return mConfigFixedMaterials;
     }
 
 private:
-
     //! Configuration option: list of all fixed materials
-    std::string configFixedMaterials;
+    std::string mConfigFixedMaterials;
 };
 
 } // end of namespace Assimp

+ 2 - 1
code/PostProcessing/RemoveVCProcess.h

@@ -44,7 +44,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_REMOVEVCPROCESS_H_INCLUDED
 #define AI_REMOVEVCPROCESS_H_INCLUDED
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
+
 #include <assimp/mesh.h>
 
 class RemoveVCProcessTest;

+ 1 - 1
code/PostProcessing/ScaleProcess.h

@@ -41,7 +41,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 */
 #pragma once
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 
 struct aiNode;
 

+ 9 - 9
code/PostProcessing/SortByPTypeProcess.cpp

@@ -57,8 +57,8 @@ using namespace Assimp;
 // ------------------------------------------------------------------------------------------------
 // Constructor to be privately used by Importer
 SortByPTypeProcess::SortByPTypeProcess()
-{
-    configRemoveMeshes = 0;
+: mConfigRemoveMeshes( 0 ) {
+    // empty
 }
 
 // ------------------------------------------------------------------------------------------------
@@ -78,7 +78,7 @@ bool SortByPTypeProcess::IsActive( unsigned int pFlags) const
 // ------------------------------------------------------------------------------------------------
 void SortByPTypeProcess::SetupProperties(const Importer* pImp)
 {
-    configRemoveMeshes = pImp->GetPropertyInteger(AI_CONFIG_PP_SBP_REMOVE,0);
+    mConfigRemoveMeshes = pImp->GetPropertyInteger(AI_CONFIG_PP_SBP_REMOVE,0);
 }
 
 // ------------------------------------------------------------------------------------------------
@@ -172,7 +172,7 @@ void SortByPTypeProcess::Execute( aiScene* pScene) {
         }
 
         if (1 == num) {
-            if (!(configRemoveMeshes & mesh->mPrimitiveTypes)) {
+            if (!(mConfigRemoveMeshes & mesh->mPrimitiveTypes)) {
                 *meshIdx = static_cast<unsigned int>( outMeshes.size() );
                 outMeshes.push_back(mesh);
             } else {
@@ -206,7 +206,7 @@ void SortByPTypeProcess::Execute( aiScene* pScene) {
         VertexWeightTable* avw = ComputeVertexBoneWeightTable(mesh);
         for (unsigned int real = 0; real < 4; ++real,++meshIdx)
         {
-            if ( !aiNumPerPType[real] || configRemoveMeshes & (1u << real))
+            if ( !aiNumPerPType[real] || mConfigRemoveMeshes & (1u << real))
             {
                 continue;
             }
@@ -392,10 +392,10 @@ void SortByPTypeProcess::Execute( aiScene* pScene) {
     {
         char buffer[1024];
         ::ai_snprintf(buffer,1024,"Points: %u%s, Lines: %u%s, Triangles: %u%s, Polygons: %u%s (Meshes, X = removed)",
-            aiNumMeshesPerPType[0], ((configRemoveMeshes & aiPrimitiveType_POINT)     ? "X" : ""),
-            aiNumMeshesPerPType[1], ((configRemoveMeshes & aiPrimitiveType_LINE)      ? "X" : ""),
-            aiNumMeshesPerPType[2], ((configRemoveMeshes & aiPrimitiveType_TRIANGLE)  ? "X" : ""),
-            aiNumMeshesPerPType[3], ((configRemoveMeshes & aiPrimitiveType_POLYGON)   ? "X" : ""));
+            aiNumMeshesPerPType[0], ((mConfigRemoveMeshes & aiPrimitiveType_POINT)     ? "X" : ""),
+            aiNumMeshesPerPType[1], ((mConfigRemoveMeshes & aiPrimitiveType_LINE)      ? "X" : ""),
+            aiNumMeshesPerPType[2], ((mConfigRemoveMeshes & aiPrimitiveType_TRIANGLE)  ? "X" : ""),
+            aiNumMeshesPerPType[3], ((mConfigRemoveMeshes & aiPrimitiveType_POLYGON)   ? "X" : ""));
         ASSIMP_LOG_INFO(buffer);
         ASSIMP_LOG_DEBUG("SortByPTypeProcess finished");
     }

+ 4 - 7
code/PostProcessing/SortByPTypeProcess.h

@@ -45,10 +45,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_SORTBYPTYPEPROCESS_H_INC
 #define AI_SORTBYPTYPEPROCESS_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 #include <assimp/mesh.h>
 
 class SortByPTypeProcessTest;
+
 namespace Assimp    {
 
 
@@ -57,14 +58,11 @@ namespace Assimp    {
  *  A mesh with 5 lines, 3 points and 145 triangles would be split in 3
  * submeshes.
 */
-class ASSIMP_API SortByPTypeProcess : public BaseProcess
-{
+class ASSIMP_API SortByPTypeProcess : public BaseProcess {
 public:
-
     SortByPTypeProcess();
     ~SortByPTypeProcess();
 
-public:
     // -------------------------------------------------------------------
     bool IsActive( unsigned int pFlags) const;
 
@@ -75,8 +73,7 @@ public:
     void SetupProperties(const Importer* pImp);
 
 private:
-
-    int configRemoveMeshes;
+    int mConfigRemoveMeshes;
 };
 
 

+ 1 - 1
code/PostProcessing/SplitLargeMeshes.h

@@ -46,7 +46,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #define AI_SPLITLARGEMESHES_H_INC
 
 #include <vector>
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 
 #include <assimp/mesh.h>
 #include <assimp/scene.h>

+ 1 - 1
code/PostProcessing/TextureTransform.h

@@ -45,7 +45,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #define AI_TEXTURE_TRANSFORM_H_INCLUDED
 
 #include <assimp/BaseImporter.h>
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 
 #include <assimp/material.h>
 #include <list>

+ 5 - 5
code/PostProcessing/TriangulateProcess.cpp

@@ -5,8 +5,6 @@ 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,
@@ -60,9 +58,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *     a file
  */
 #ifndef ASSIMP_BUILD_NO_TRIANGULATE_PROCESS
-#include "TriangulateProcess.h"
-#include "ProcessHelper.h"
-#include "PolyTools.h"
+
+#include "PostProcessing/TriangulateProcess.h"
+#include "PostProcessing/ProcessHelper.h"
+#include "Common/PolyTools.h"
+
 #include <memory>
 
 //#define AI_BUILD_TRIANGULATE_COLOR_FACE_WINDING

+ 2 - 6
code/PostProcessing/TriangulateProcess.h

@@ -46,7 +46,7 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef AI_TRIANGULATEPROCESS_H_INC
 #define AI_TRIANGULATEPROCESS_H_INC
 
-#include "BaseProcess.h"
+#include "Common/BaseProcess.h"
 
 struct aiMesh;
 
@@ -59,14 +59,11 @@ namespace Assimp {
  * into triangles. You usually want this to happen because the graphics cards
  * need their data as triangles.
  */
-class ASSIMP_API TriangulateProcess : public BaseProcess
-{
+class ASSIMP_API TriangulateProcess : public BaseProcess {
 public:
-
     TriangulateProcess();
     ~TriangulateProcess();
 
-public:
     // -------------------------------------------------------------------
     /** Returns whether the processing step is present in the given flag field.
      * @param pFlags The processing flags the importer was called with. A bitwise
@@ -82,7 +79,6 @@ public:
     */
     void Execute( aiScene* pScene);
 
-public:
     // -------------------------------------------------------------------
     /** Triangulates the given mesh.
      * @param pMesh The mesh to triangulate.

+ 2 - 1
code/PostProcessing/ValidateDataStructure.h

@@ -48,7 +48,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #include <assimp/types.h>
 #include <assimp/material.h>
-#include "BaseProcess.h"
+
+#include "Common/BaseProcess.h"
 
 struct aiBone;
 struct aiMesh;

+ 2 - 1
code/Step/STEPFile.h

@@ -50,7 +50,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include <map>
 #include <set>
 
-#include "FBXDocument.h" //ObjectMap::value_type
+#include "FBX/FBXDocument.h" //ObjectMap::value_type
+
 #include <assimp/DefaultLogger.hpp>
 
 //

+ 9 - 7
code/Step/StepExporter.cpp

@@ -45,23 +45,25 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_EXPORT
 #ifndef ASSIMP_BUILD_NO_STEP_EXPORTER
 
-#include "StepExporter.h"
-#include "ConvertToLHProcess.h"
+#include "Step/StepExporter.h"
+#include "PostProcessing/ConvertToLHProcess.h"
+
 #include <assimp/Bitmap.h>
 #include <assimp/BaseImporter.h>
 #include <assimp/fast_atof.h>
 #include <assimp/SceneCombiner.h>
+#include <assimp/Exceptional.h>
+#include <assimp/DefaultIOSystem.h>
+#include <assimp/IOSystem.hpp>
+#include <assimp/scene.h>
+#include <assimp/light.h>
+
 #include <iostream>
 #include <ctime>
 #include <set>
 #include <map>
 #include <list>
 #include <memory>
-#include <assimp/Exceptional.h>
-#include <assimp/DefaultIOSystem.h>
-#include <assimp/IOSystem.hpp>
-#include <assimp/scene.h>
-#include <assimp/light.h>
 
 //
 #if _MSC_VER > 1500 || (defined __GNUC___)

+ 3 - 3
code/Unreal/UnrealLoader.cpp

@@ -52,12 +52,12 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_3D_IMPORTER
 
-#include "UnrealLoader.h"
+#include "Unreal/UnrealLoader.h"
+#include "PostProcessing/ConvertToLHProcess.h"
+
 #include <assimp/StreamReader.h>
 #include <assimp/ParsingUtils.h>
 #include <assimp/fast_atof.h>
-#include "ConvertToLHProcess.h"
-
 #include <assimp/Importer.hpp>
 #include <assimp/DefaultLogger.hpp>
 #include <assimp/IOSystem.hpp>

+ 7 - 5
code/X/XFileExporter.cpp

@@ -45,21 +45,23 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_EXPORT
 #ifndef ASSIMP_BUILD_NO_X_EXPORTER
 
-#include "XFileExporter.h"
-#include "ConvertToLHProcess.h"
+#include "X/XFileExporter.h"
+#include "PostProcessing/ConvertToLHProcess.h"
+
 #include <assimp/Bitmap.h>
 #include <assimp/BaseImporter.h>
 #include <assimp/fast_atof.h>
 #include <assimp/SceneCombiner.h>
 #include <assimp/DefaultIOSystem.h>
-#include <ctime>
-#include <set>
-#include <memory>
 #include <assimp/Exceptional.h>
 #include <assimp/IOSystem.hpp>
 #include <assimp/scene.h>
 #include <assimp/light.h>
 
+#include <ctime>
+#include <set>
+#include <memory>
+
 using namespace Assimp;
 
 namespace Assimp

+ 4 - 3
code/X/XFileImporter.cpp

@@ -44,10 +44,11 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_X_IMPORTER
 
-#include "XFileImporter.h"
-#include "XFileParser.h"
+#include "X/XFileImporter.h"
+#include "X/XFileParser.h"
+#include "PostProcessing/ConvertToLHProcess.h"
+
 #include <assimp/TinyFormatter.h>
-#include "ConvertToLHProcess.h"
 #include <assimp/Defines.h>
 #include <assimp/IOSystem.hpp>
 #include <assimp/scene.h>

+ 2 - 0
code/glTF/glTFAsset.h

@@ -52,6 +52,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER
 
+#include <assimp/Exceptional.h>
+
 #include <map>
 #include <string>
 #include <list>

+ 3 - 6
code/glTF/glTFExporter.cpp

@@ -42,14 +42,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_EXPORT
 #ifndef ASSIMP_BUILD_NO_GLTF_EXPORTER
 
-#include "glTFExporter.h"
+#include "glTF/glTFExporter.h"
+#include "glTF/glTFAssetWriter.h"
+#include "PostProcessing/SplitLargeMeshes.h"
 
 #include <assimp/Exceptional.h>
 #include <assimp/StringComparison.h>
 #include <assimp/ByteSwapper.h>
-
-#include "SplitLargeMeshes.h"
-
 #include <assimp/SceneCombiner.h>
 #include <assimp/version.h>
 #include <assimp/IOSystem.hpp>
@@ -61,8 +60,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include <memory>
 #include <inttypes.h>
 
-#include "glTFAssetWriter.h"
-
 #ifdef ASSIMP_IMPORTER_GLTF_USE_OPEN3DGC
 	// Header files, Open3DGC.
 #	include <Open3DGC/o3dgcSC3DMCEncoder.h>

+ 5 - 9
code/glTF/glTFImporter.cpp

@@ -42,10 +42,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER
 
-#include "glTFImporter.h"
+#include "glTF/glTFImporter.h"
+#include "glTF/glTFAsset.h"
+#include "glTF/glTFAssetWriter.h"
+#include "PostProcessing/MakeVerboseFormat.h"
+
 #include <assimp/StringComparison.h>
 #include <assimp/StringUtils.h>
-
 #include <assimp/Importer.hpp>
 #include <assimp/scene.h>
 #include <assimp/ai_assert.h>
@@ -54,16 +57,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #include <memory>
 
-#include "MakeVerboseFormat.h"
-
-#include "glTFAsset.h"
-// This is included here so WriteLazyDict<T>'s definition is found.
-#include "glTFAssetWriter.h"
-
 using namespace Assimp;
 using namespace glTF;
 
-
 //
 // glTFImporter
 //

+ 2 - 0
code/glTF2/glTF2Asset.h

@@ -52,6 +52,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER
 
+#include <assimp/Exceptional.h>
+
 #include <map>
 #include <string>
 #include <list>

+ 3 - 6
code/glTF2/glTF2Exporter.cpp

@@ -42,14 +42,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #ifndef ASSIMP_BUILD_NO_EXPORT
 #ifndef ASSIMP_BUILD_NO_GLTF_EXPORTER
 
-#include "glTF2Exporter.h"
+#include "glTF2/glTF2Exporter.h"
+#include "glTF2/glTF2AssetWriter.h"
+#include "PostProcessing/SplitLargeMeshes.h"
 
 #include <assimp/Exceptional.h>
 #include <assimp/StringComparison.h>
 #include <assimp/ByteSwapper.h>
-
-#include "SplitLargeMeshes.h"
-
 #include <assimp/SceneCombiner.h>
 #include <assimp/version.h>
 #include <assimp/IOSystem.hpp>
@@ -61,8 +60,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include <memory>
 #include <inttypes.h>
 
-#include "glTF2AssetWriter.h"
-
 using namespace rapidjson;
 
 using namespace Assimp;

+ 6 - 8
code/glTF2/glTF2Importer.cpp

@@ -42,10 +42,13 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
 #ifndef ASSIMP_BUILD_NO_GLTF_IMPORTER
 
-#include "glTF2Importer.h"
+#include "glTF2/glTF2Importer.h"
+#include "glTF2/glTF2Asset.h"
+#include "glTF2/glTF2AssetWriter.h"
+#include "PostProcessing/MakeVerboseFormat.h"
+
 #include <assimp/StringComparison.h>
 #include <assimp/StringUtils.h>
-
 #include <assimp/Importer.hpp>
 #include <assimp/scene.h>
 #include <assimp/ai_assert.h>
@@ -56,11 +59,6 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 #include <memory>
 #include <unordered_map>
 
-#include "MakeVerboseFormat.h"
-
-#include "glTF2Asset.h"
-// This is included here so WriteLazyDict<T>'s definition is found.
-#include "glTF2AssetWriter.h"
 #include <rapidjson/document.h>
 #include <rapidjson/rapidjson.h>
 
@@ -68,7 +66,7 @@ using namespace Assimp;
 using namespace glTF2;
 
 namespace {
-    // generate bitangents from normals and tangents according to spec
+    // generate bi-tangents from normals and tangents according to spec
     struct Tangent {
         aiVector3D xyz;
         ai_real w;