Commit 6cd36434 authored by Jakub Klinkovský's avatar Jakub Klinkovský
Browse files

Removed explicit template instances of TestFunction

parent a2fedda0
Loading
Loading
Loading
Loading
+2 −17
Original line number Diff line number Diff line
@@ -24,19 +24,4 @@ SET( headers BoundaryMeshFunction.h
             CutMeshFunction.h
)

SET( CURRENT_DIR ${CMAKE_SOURCE_DIR}/src/TNL/Functions )
set( common_SOURCES
     ${CURRENT_DIR}/TestFunction_impl.cpp )       

IF( BUILD_CUDA )
   set( tnl_functions_CUDA__SOURCES
        ${common_SOURCES} 
        ${CURRENT_DIR}/TestFunction_impl.cu
        PARENT_SCOPE )
ENDIF()    

set( tnl_functions_SOURCES     
     ${common_SOURCES}
     PARENT_SCOPE )
        
INSTALL( FILES ${headers} DESTINATION ${TNL_TARGET_INCLUDE_DIRECTORY}/Functions )
+0 −41
Original line number Diff line number Diff line
/***************************************************************************
                          TestFunction_impl.cpp  -  description
                             -------------------
    begin                : Sep 21, 2014
    copyright            : (C) 2014 by Tomas Oberhuber
    email                : tomas.oberhuber@fjfi.cvut.cz
 ***************************************************************************/

/* See Copyright Notice in tnl/Copyright */


#ifdef TEMPLATE_EXPLICIT_INSTANTIATION

#include <TNL/Functions/TestFunction.h>


namespace TNL {
namespace Functions {   

#ifdef INSTANTIATE_FLOAT
template class TestFunction< 1, float, Devices::Host >;
template class TestFunction< 2, float, Devices::Host >;
template class TestFunction< 3, float, Devices::Host >;
#endif

template class TestFunction< 1, double, Devices::Host >;
template class TestFunction< 2, double, Devices::Host >;
template class TestFunction< 3, double, Devices::Host >;

#ifdef INSTANTIATE_LONG_DOUBLE
template class TestFunction< 1, long double, Devices::Host >;
template class TestFunction< 2, long double, Devices::Host >;
template class TestFunction< 3, long double, Devices::Host >;
#endif

} // namespace Functions
} // namespace TNL


#endif
+0 −39
Original line number Diff line number Diff line
/***************************************************************************
                          TestFunction_impl.cu  -  description
                             -------------------
    begin                : Sep 21, 2014
    copyright            : (C) 2014 by Tomas Oberhuber
    email                : tomas.oberhuber@fjfi.cvut.cz
 ***************************************************************************/

/* See Copyright Notice in tnl/Copyright */

#ifdef TEMPLATE_EXPLICIT_INSTANTIATION
#ifdef HAVE_CUDA

#include <TNL/Functions/TestFunction.h>

namespace TNL {
namespace Functions {

#ifdef INSTANTIATE_FLOAT
template class TestFunction< 1, float, Devices::Cuda >;
template class TestFunction< 2, float, Devices::Cuda >;
template class TestFunction< 3, float, Devices::Cuda >;
#endif

template class TestFunction< 1, double, Devices::Cuda >;
template class TestFunction< 2, double, Devices::Cuda >;
template class TestFunction< 3, double, Devices::Cuda >;

#ifdef INSTANTIATE_LONG_DOUBLE
template class TestFunction< 1, long double, Devices::Cuda >;
template class TestFunction< 2, long double, Devices::Cuda >;
template class TestFunction< 3, long double, Devices::Cuda >;
#endif

} // namespace Functions
} // namespace TNL

#endif
#endif
+0 −40
Original line number Diff line number Diff line
@@ -960,45 +960,5 @@ TestFunction< FunctionDimension, Real, Device >::
   deleteFunctions();
}


#ifdef TEMPLATE_EXPLICIT_INSTANTIATION

#ifdef INSTANTIATE_FLOAT
extern template class TestFunction< 1, float, Devices::Host >;
extern template class TestFunction< 2, float, Devices::Host >;
extern template class TestFunction< 3, float, Devices::Host >;
#endif

extern template class TestFunction< 1, double, Devices::Host >;
extern template class TestFunction< 2, double, Devices::Host >;
extern template class TestFunction< 3, double, Devices::Host >;

#ifdef INSTANTIATE_LONG_DOUBLE
extern template class TestFunction< 1, long double, Devices::Host >;
extern template class TestFunction< 2, long double, Devices::Host >;
extern template class TestFunction< 3, long double, Devices::Host >;
#endif

#ifdef HAVE_CUDA
#ifdef INSTANTIATE_FLOAT
extern template class TestFunction< 1, float, Devices::Cuda>;
extern template class TestFunction< 2, float, Devices::Cuda >;
extern template class TestFunction< 3, float, Devices::Cuda >;
#endif

extern template class TestFunction< 1, double, Devices::Cuda >;
extern template class TestFunction< 2, double, Devices::Cuda >;
extern template class TestFunction< 3, double, Devices::Cuda >;

#ifdef INSTANTIATE_LONG_DOUBLE
extern template class TestFunction< 1, long double, Devices::Cuda >;
extern template class TestFunction< 2, long double, Devices::Cuda >;
extern template class TestFunction< 3, long double, Devices::Cuda >;
#endif
#endif

#endif

} // namespace Functions
} // namespace TNL