Tempus
Version of the Day
Time Integration
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
Tempus_ExplicitTemplateInstantiation.hpp
Go to the documentation of this file.
1
// @HEADER
2
// ****************************************************************************
3
// Tempus: Copyright (2017) Sandia Corporation
4
//
5
// Distributed under BSD 3-clause license (See accompanying file Copyright.txt)
6
// ****************************************************************************
7
// @HEADER
8
9
#ifndef Tempus_ExplicitTemplateInstantiation_hpp
10
#define Tempus_ExplicitTemplateInstantiation_hpp
11
12
#include "Tempus_config.hpp"
13
14
// Always instantiate on double
15
#define TEMPUS_INSTANTIATE_TEMPLATE_CLASS_ON_DOUBLE(name) \
16
template class name<double>;
17
18
// Complex not yet supported. Just need to add define to cmake logic
19
#ifdef TEMPUS_BUILD_COMPLEX_SUPPORT
20
#define TEMPUS_INSTANTIATE_TEMPLATE_CLASS_ON_COMPLEX_DOUBLE(name) \
21
template class name<std::complex<double>>;
22
#else
23
#define TEMPUS_INSTANTIATE_TEMPLATE_CLASS_ON_COMPLEX_DOUBLE(name)
24
#endif
25
26
#define TEMPUS_INSTANTIATE_TEMPLATE_CLASS(name) \
27
TEMPUS_INSTANTIATE_TEMPLATE_CLASS_ON_DOUBLE(name) \
28
TEMPUS_INSTANTIATE_TEMPLATE_CLASS_ON_COMPLEX_DOUBLE(name)
29
30
#endif
src
Tempus_ExplicitTemplateInstantiation.hpp
Generated on Tue Nov 26 2024 09:38:41 for Tempus by
1.8.5