msvc_dtw.hpp
Go to the documentation of this file.
1 
2 // Copyright Aleksey Gurtovoy 2000-2004
3 //
4 // Distributed under the Boost Software License, Version 1.0.
5 // (See accompanying file LICENSE_1_0.txt or copy at
6 // http://www.boost.org/LICENSE_1_0.txt)
7 //
8 // See http://www.boost.org/libs/mpl for documentation.
9 
10 // $Id: msvc_dtw.hpp 13472 2017-08-22 07:53:44Z richean $
11 // $Date: 2017-08-22 09:53:44 +0200 (Di, 22 Aug 2017) $
12 // $Revision: 13472 $
13 
14 // NO INCLUDE GUARDS, THE HEADER IS INTENDED FOR MULTIPLE INCLUSION!
15 
17 
18 // local macros, #undef-ined at the end of the header
19 #define AUX778076_DTW_PARAMS(param) \
20  BOOST_MPL_PP_PARAMS(AUX778076_MSVC_DTW_ARITY, param) \
21 
22 
23 #define AUX778076_DTW_ORIGINAL_NAME \
24  AUX778076_MSVC_DTW_ORIGINAL_NAME \
25 
26 
27 // warning: not a well-formed C++
28 // workaround for MSVC 6.5's "dependent template typedef bug"
29 
30 template< typename F>
32 {
33  template< bool > struct f_ : F {};
34  template<> struct f_<true>
35  {
36 #if AUX778076_MSVC_DTW_ARITY > 0
37  template< AUX778076_DTW_PARAMS(typename P) > struct AUX778076_DTW_ORIGINAL_NAME
38  {
39  typedef int type;
40  };
41  };
42 
43  template< AUX778076_DTW_PARAMS(typename T) > struct result_
44  : f_< aux::msvc_never_true<F>::value >
45  ::template AUX778076_DTW_ORIGINAL_NAME< AUX778076_DTW_PARAMS(T) >
46  {
47  };
48 #else
49  template< typename P = int > struct AUX778076_DTW_ORIGINAL_NAME
50  {
51  typedef int type;
52  };
53  };
54 
55  template< typename T = int > struct result_
56  : f_< aux::msvc_never_true<F>::value >
57  ::template AUX778076_DTW_ORIGINAL_NAME<>
58  {
59  };
60 #endif
61 };
62 
63 #undef AUX778076_DTW_ORIGINAL_NAME
64 #undef AUX778076_DTW_PARAMS
65 
66 #undef AUX778076_MSVC_DTW_NAME
67 #undef AUX778076_MSVC_DTW_ORIGINAL_NAME
68 #undef AUX778076_MSVC_DTW_ARITY
AUX778076_DTW_ORIGINAL_NAME
#define AUX778076_DTW_ORIGINAL_NAME
Definition: msvc_dtw.hpp:23
AUX778076_MSVC_DTW_NAME
Definition: msvc_dtw.hpp:31
AUX778076_MSVC_DTW_NAME::f_
Definition: msvc_dtw.hpp:33
params.hpp
AUX778076_MSVC_DTW_NAME::result_
Definition: msvc_dtw.hpp:55
AUX778076_MSVC_DTW_NAME::f_< true >::AUX778076_DTW_ORIGINAL_NAME::type
int type
Definition: msvc_dtw.hpp:51


sick_visionary_ros
Author(s): SICK AG TechSupport 3D Snapshot
autogenerated on Thu Feb 8 2024 03:44:22