25 #ifndef GRINS_SHARED_PTR_H
26 #define GRINS_SHARED_PTR_H
28 #include "grins_config.h"
29 #include "libmesh/libmesh_config.h"
32 #ifdef LIBMESH_HAVE_CXX11_SHARED_PTR
34 #elif GRINS_HAVE_BOOST_SHARED_PTR_HPP
35 #include <boost/shared_ptr.hpp>
40 #ifdef LIBMESH_HAVE_CXX11_SHARED_PTR
42 class SharedPtr :
public std::shared_ptr<T>
45 SharedPtr() : std::shared_ptr<T>() {};
46 SharedPtr( T* ptr ) : std::shared_ptr<T>(ptr) {};
48 #elif GRINS_HAVE_BOOST_SHARED_PTR_HPP
50 class SharedPtr :
public boost::shared_ptr<T>
53 SharedPtr() : boost::shared_ptr<T>() {};
54 SharedPtr( T* ptr ) : boost::shared_ptr<T>(ptr) {};
57 # error "No valid definition for shared_ptr found!"
61 #endif // GRINS_SHARED_PTR_H