]> AND Private Git Repository - canny.git/blob - stc/exp/ml_stc_linux_make_v1.0/include/boost/get_pointer.hpp
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
1a346710f7296d86e03df2a1dce3fa34e8a07704
[canny.git] / stc / exp / ml_stc_linux_make_v1.0 / include / boost / get_pointer.hpp
1 // Copyright Peter Dimov and David Abrahams 2002.\r
2 // Distributed under the Boost Software License, Version 1.0. (See\r
3 // accompanying file LICENSE_1_0.txt or copy at\r
4 // http://www.boost.org/LICENSE_1_0.txt)\r
5 #ifndef GET_POINTER_DWA20021219_HPP\r
6 # define GET_POINTER_DWA20021219_HPP\r
7 \r
8 // In order to avoid circular dependencies with Boost.TR1\r
9 // we make sure that our include of <memory> doesn't try to\r
10 // pull in the TR1 headers: that's why we use this header \r
11 // rather than including <memory> directly:\r
12 # include <boost/config/no_tr1/memory.hpp>  // std::auto_ptr\r
13 \r
14 namespace boost { \r
15 \r
16 // get_pointer(p) extracts a ->* capable pointer from p\r
17 \r
18 template<class T> T * get_pointer(T * p)\r
19 {\r
20     return p;\r
21 }\r
22 \r
23 // get_pointer(shared_ptr<T> const & p) has been moved to shared_ptr.hpp\r
24 \r
25 template<class T> T * get_pointer(std::auto_ptr<T> const& p)\r
26 {\r
27     return p.get();\r
28 }\r
29 \r
30 \r
31 } // namespace boost\r
32 \r
33 #endif // GET_POINTER_DWA20021219_HPP\r