Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Open sidebar
OpenFlipper-Free
Type-OpenVolumeMesh
Commits
3ced02ab
Commit
3ced02ab
authored
Feb 19, 2019
by
Martin Heistermann
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Use explicit template instantiation to speed up compile times
parent
613183cd
Changes
12
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
144 additions
and
8 deletions
+144
-8
ObjectTypes/HexahedralMesh/HexahedralMesh.hh
ObjectTypes/HexahedralMesh/HexahedralMesh.hh
+3
-0
ObjectTypes/HexahedralMesh/PluginFunctionsHexahedralMesh.cc
ObjectTypes/HexahedralMesh/PluginFunctionsHexahedralMesh.cc
+1
-0
ObjectTypes/HexahedralMesh/PolyhedralMesh.cc
ObjectTypes/HexahedralMesh/PolyhedralMesh.cc
+43
-0
ObjectTypes/PolyhedralMesh/PluginFunctionsPolyhedralMesh.cc
ObjectTypes/PolyhedralMesh/PluginFunctionsPolyhedralMesh.cc
+2
-0
ObjectTypes/PolyhedralMesh/PolyhedralMesh.cc
ObjectTypes/PolyhedralMesh/PolyhedralMesh.cc
+43
-0
ObjectTypes/PolyhedralMesh/PolyhedralMesh.hh
ObjectTypes/PolyhedralMesh/PolyhedralMesh.hh
+3
-0
ObjectTypes/TetrahedralMesh/TetrahedralMesh.cc
ObjectTypes/TetrahedralMesh/TetrahedralMesh.cc
+43
-0
ObjectTypes/TetrahedralMesh/TetrahedralMesh.hh
ObjectTypes/TetrahedralMesh/TetrahedralMesh.hh
+3
-0
ObjectTypes/VolumeMeshObject/VolumeMeshNode.hh
ObjectTypes/VolumeMeshObject/VolumeMeshNode.hh
+1
-4
ObjectTypes/VolumeMeshObject/VolumeMeshObject.hh
ObjectTypes/VolumeMeshObject/VolumeMeshObject.hh
+0
-4
Plugin-TypeHexahedralMesh/TypeHexahedralMesh.cc
Plugin-TypeHexahedralMesh/TypeHexahedralMesh.cc
+1
-0
Plugin-TypePolyhedralMesh/TypePolyhedralMesh.cc
Plugin-TypePolyhedralMesh/TypePolyhedralMesh.cc
+1
-0
No files found.
ObjectTypes/HexahedralMesh/HexahedralMesh.hh
View file @
3ced02ab
...
@@ -63,6 +63,9 @@ typedef OpenVolumeMesh::GeometryKernel<ACG::Vec3d, OpenVolumeMesh::HexahedralMes
...
@@ -63,6 +63,9 @@ typedef OpenVolumeMesh::GeometryKernel<ACG::Vec3d, OpenVolumeMesh::HexahedralMes
/// Typedef for a mesh object containing a polyhedral mesh
/// Typedef for a mesh object containing a polyhedral mesh
typedef
VolumeMeshObject
<
HexahedralMesh
>
HexahedralMeshObject
;
typedef
VolumeMeshObject
<
HexahedralMesh
>
HexahedralMeshObject
;
extern
template
class
VolumeMeshObject
<
HexahedralMesh
>;
extern
template
class
ACG
::
SceneGraph
::
VolumeMeshNodeT
<
HexahedralMesh
>;
#include <ObjectTypes/HexahedralMesh/PluginFunctionsHexahedralMesh.hh>
#include <ObjectTypes/HexahedralMesh/PluginFunctionsHexahedralMesh.hh>
//=============================================================================
//=============================================================================
...
...
ObjectTypes/HexahedralMesh/PluginFunctionsHexahedralMesh.cc
View file @
3ced02ab
...
@@ -41,6 +41,7 @@
...
@@ -41,6 +41,7 @@
#include <OpenFlipper/common/Types.hh>
#include <OpenFlipper/common/Types.hh>
#include <OpenFlipper/BasePlugin/PluginFunctions.hh>
#include <ObjectTypes/HexahedralMesh/PluginFunctionsHexahedralMesh.hh>
#include <ObjectTypes/HexahedralMesh/PluginFunctionsHexahedralMesh.hh>
...
...
ObjectTypes/HexahedralMesh/PolyhedralMesh.cc
0 → 100644
View file @
3ced02ab
/*===========================================================================*\
* *
* OpenFlipper *
* Copyright (C) 2001-2014 by Computer Graphics Group, RWTH Aachen *
* www.openflipper.org *
* *
*--------------------------------------------------------------------------- *
* This file is part of OpenFlipper. *
* *
* OpenFlipper is free software: you can redistribute it and/or modify *
* it under the terms of the GNU Lesser General Public License as *
* published by the Free Software Foundation, either version 3 of *
* the License, or (at your option) any later version with the *
* following exceptions: *
* *
* If other files instantiate templates or use macros *
* or inline functions from this file, or you compile this file and *
* link it with other files to produce an executable, this file does *
* not by itself cause the resulting executable to be covered by the *
* GNU Lesser General Public License. This exception does not however *
* invalidate any other reasons why the executable file might be *
* covered by the GNU Lesser General Public License. *
* *
* OpenFlipper is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU Lesser General Public License for more details. *
* *
* You should have received a copy of the GNU LesserGeneral Public *
* License along with OpenFlipper. If not, *
* see <http://www.gnu.org/licenses/>. *
* *
\*===========================================================================*/
#include "HexahedralMesh.hh"
#include <ObjectTypes/VolumeMeshObject/VolumeMeshObjectT.cc>
#include <ObjectTypes/VolumeMeshObject/VolumeMeshNodeT.cc>
#include <ObjectTypes/VolumeMeshObject/VolumeMeshNodeGLCompatT.cc>
template
class
VolumeMeshObject
<
HexahedralMesh
>;
template
class
ACG
::
SceneGraph
::
VolumeMeshNodeT
<
HexahedralMesh
>;
ObjectTypes/PolyhedralMesh/PluginFunctionsPolyhedralMesh.cc
View file @
3ced02ab
...
@@ -41,6 +41,8 @@
...
@@ -41,6 +41,8 @@
#include <OpenFlipper/common/Types.hh>
#include <OpenFlipper/common/Types.hh>
#include <OpenFlipper/BasePlugin/PluginFunctions.hh>
#include <ObjectTypes/PolyhedralMesh/PluginFunctionsPolyhedralMesh.hh>
#include <ObjectTypes/PolyhedralMesh/PluginFunctionsPolyhedralMesh.hh>
...
...
ObjectTypes/PolyhedralMesh/PolyhedralMesh.cc
0 → 100644
View file @
3ced02ab
/*===========================================================================*\
* *
* OpenFlipper *
* Copyright (C) 2001-2014 by Computer Graphics Group, RWTH Aachen *
* www.openflipper.org *
* *
*--------------------------------------------------------------------------- *
* This file is part of OpenFlipper. *
* *
* OpenFlipper is free software: you can redistribute it and/or modify *
* it under the terms of the GNU Lesser General Public License as *
* published by the Free Software Foundation, either version 3 of *
* the License, or (at your option) any later version with the *
* following exceptions: *
* *
* If other files instantiate templates or use macros *
* or inline functions from this file, or you compile this file and *
* link it with other files to produce an executable, this file does *
* not by itself cause the resulting executable to be covered by the *
* GNU Lesser General Public License. This exception does not however *
* invalidate any other reasons why the executable file might be *
* covered by the GNU Lesser General Public License. *
* *
* OpenFlipper is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU Lesser General Public License for more details. *
* *
* You should have received a copy of the GNU LesserGeneral Public *
* License along with OpenFlipper. If not, *
* see <http://www.gnu.org/licenses/>. *
* *
\*===========================================================================*/
#include "PolyhedralMesh.hh"
#include <ObjectTypes/VolumeMeshObject/VolumeMeshObjectT.cc>
#include <ObjectTypes/VolumeMeshObject/VolumeMeshNodeT.cc>
#include <ObjectTypes/VolumeMeshObject/VolumeMeshNodeGLCompatT.cc>
template
class
VolumeMeshObject
<
PolyhedralMesh
>;
template
class
ACG
::
SceneGraph
::
VolumeMeshNodeT
<
PolyhedralMesh
>;
ObjectTypes/PolyhedralMesh/PolyhedralMesh.hh
View file @
3ced02ab
...
@@ -62,6 +62,9 @@ typedef OpenVolumeMesh::GeometryKernel<ACG::Vec3d, OpenVolumeMesh::TopologyKerne
...
@@ -62,6 +62,9 @@ typedef OpenVolumeMesh::GeometryKernel<ACG::Vec3d, OpenVolumeMesh::TopologyKerne
/// Typedef for a mesh object containing a polyhedral mesh
/// Typedef for a mesh object containing a polyhedral mesh
typedef
VolumeMeshObject
<
PolyhedralMesh
>
PolyhedralMeshObject
;
typedef
VolumeMeshObject
<
PolyhedralMesh
>
PolyhedralMeshObject
;
extern
template
class
VolumeMeshObject
<
PolyhedralMesh
>;
extern
template
class
ACG
::
SceneGraph
::
VolumeMeshNodeT
<
PolyhedralMesh
>;
#include <ObjectTypes/PolyhedralMesh/PluginFunctionsPolyhedralMesh.hh>
#include <ObjectTypes/PolyhedralMesh/PluginFunctionsPolyhedralMesh.hh>
//=============================================================================
//=============================================================================
...
...
ObjectTypes/TetrahedralMesh/TetrahedralMesh.cc
0 → 100644
View file @
3ced02ab
/*===========================================================================*\
* *
* OpenFlipper *
* Copyright (C) 2001-2014 by Computer Graphics Group, RWTH Aachen *
* www.openflipper.org *
* *
*--------------------------------------------------------------------------- *
* This file is part of OpenFlipper. *
* *
* OpenFlipper is free software: you can redistribute it and/or modify *
* it under the terms of the GNU Lesser General Public License as *
* published by the Free Software Foundation, either version 3 of *
* the License, or (at your option) any later version with the *
* following exceptions: *
* *
* If other files instantiate templates or use macros *
* or inline functions from this file, or you compile this file and *
* link it with other files to produce an executable, this file does *
* not by itself cause the resulting executable to be covered by the *
* GNU Lesser General Public License. This exception does not however *
* invalidate any other reasons why the executable file might be *
* covered by the GNU Lesser General Public License. *
* *
* OpenFlipper is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU Lesser General Public License for more details. *
* *
* You should have received a copy of the GNU LesserGeneral Public *
* License along with OpenFlipper. If not, *
* see <http://www.gnu.org/licenses/>. *
* *
\*===========================================================================*/
#include "TetrahedralMesh.hh"
#include <ObjectTypes/VolumeMeshObject/VolumeMeshObjectT.cc>
#include <ObjectTypes/VolumeMeshObject/VolumeMeshNodeT.cc>
#include <ObjectTypes/VolumeMeshObject/VolumeMeshNodeGLCompatT.cc>
template
class
VolumeMeshObject
<
TetrahedralMesh
>;
template
class
ACG
::
SceneGraph
::
VolumeMeshNodeT
<
TetrahedralMesh
>;
ObjectTypes/TetrahedralMesh/TetrahedralMesh.hh
View file @
3ced02ab
...
@@ -58,6 +58,9 @@ typedef OpenVolumeMesh::TetrahedralGeometryKernel<ACG::Vec3d, OpenVolumeMesh::Te
...
@@ -58,6 +58,9 @@ typedef OpenVolumeMesh::TetrahedralGeometryKernel<ACG::Vec3d, OpenVolumeMesh::Te
/// Typedef for a mesh object containing a polyhedral mesh
/// Typedef for a mesh object containing a polyhedral mesh
typedef
VolumeMeshObject
<
TetrahedralMesh
>
TetrahedralMeshObject
;
typedef
VolumeMeshObject
<
TetrahedralMesh
>
TetrahedralMeshObject
;
extern
template
class
VolumeMeshObject
<
TetrahedralMesh
>;
extern
template
class
ACG
::
SceneGraph
::
VolumeMeshNodeT
<
TetrahedralMesh
>;
#include <ObjectTypes/TetrahedralMesh/PluginFunctionsTetrahedralMesh.hh>
#include <ObjectTypes/TetrahedralMesh/PluginFunctionsTetrahedralMesh.hh>
//=============================================================================
//=============================================================================
...
...
ObjectTypes/VolumeMeshObject/VolumeMeshNode.hh
View file @
3ced02ab
...
@@ -286,10 +286,7 @@ private:
...
@@ -286,10 +286,7 @@ private:
}
// namespace SceneGraph
}
// namespace SceneGraph
}
// namespace ACG
}
// namespace ACG
//=============================================================================
//=============================================================================
#if defined(INCLUDE_TEMPLATES) && !defined(VOLUMEMESHNODET_CC)
#include "VolumeMeshNodeT.cc"
#include "VolumeMeshNodeGLCompatT.cc"
#endif
//=============================================================================
//=============================================================================
#endif // VOLUMEMESHNODE_HH
#endif // VOLUMEMESHNODE_HH
//=============================================================================
//=============================================================================
...
...
ObjectTypes/VolumeMeshObject/VolumeMeshObject.hh
View file @
3ced02ab
...
@@ -245,8 +245,4 @@ public:
...
@@ -245,8 +245,4 @@ public:
//=============================================================================
//=============================================================================
#if defined(INCLUDE_TEMPLATES) && !defined(VOLUMEMESHOBJECTT_CC)
#define VOLUMEMESHOBJECT_TEMPLATES
#include "VolumeMeshObjectT.cc"
#endif
#endif
#endif
Plugin-TypeHexahedralMesh/TypeHexahedralMesh.cc
View file @
3ced02ab
...
@@ -43,6 +43,7 @@
...
@@ -43,6 +43,7 @@
#include "TypeHexahedralMesh.hh"
#include "TypeHexahedralMesh.hh"
#include <ObjectTypes/Plane/Plane.hh>
#include <ObjectTypes/Plane/Plane.hh>
#include <OpenFlipper/common/GlobalOptions.hh>
#include <OpenFlipper/common/GlobalOptions.hh>
#include <OpenFlipper/BasePlugin/PluginFunctions.hh>
#include <QInputDialog>
#include <QInputDialog>
#include <QMenu>
#include <QMenu>
...
...
Plugin-TypePolyhedralMesh/TypePolyhedralMesh.cc
View file @
3ced02ab
...
@@ -43,6 +43,7 @@
...
@@ -43,6 +43,7 @@
#include "TypePolyhedralMesh.hh"
#include "TypePolyhedralMesh.hh"
#include <ObjectTypes/Plane/Plane.hh>
#include <ObjectTypes/Plane/Plane.hh>
#include <OpenFlipper/common/GlobalOptions.hh>
#include <OpenFlipper/common/GlobalOptions.hh>
#include <OpenFlipper/BasePlugin/PluginFunctions.hh>
#include <QMenu>
#include <QMenu>
#include <QInputDialog>
#include <QInputDialog>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment