pinocchio  3.7.0
A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives
 
Loading...
Searching...
No Matches
deprecation.hpp
1//
2// Copyright (c) 2020 INRIA
3//
4
5#ifndef __pinocchio_python_utils_deprecation_hpp__
6#define __pinocchio_python_utils_deprecation_hpp__
7
8#include <Python.h>
9#include <boost/python.hpp>
10#include <string>
11
12namespace pinocchio
13{
14 namespace python
15 {
16 template<class Policy = boost::python::default_call_policies>
18 {
19 deprecated_warning_policy(const std::string & warning_message = "")
20 : Policy()
21 , m_warning_message(warning_message)
22 {
23 }
24
25 template<class ArgumentPackage>
26 bool precall(ArgumentPackage const & args) const
27 {
28 PyErr_WarnEx(PyExc_UserWarning, m_warning_message.c_str(), 1);
29 return static_cast<const Policy *>(this)->precall(args);
30 }
31
32 typedef typename Policy::result_converter result_converter;
33 typedef typename Policy::argument_package argument_package;
34
35 protected:
36 const std::string m_warning_message;
37 };
38
39 template<class Policy = boost::python::default_call_policies>
41 {
43 const std::string & warning_message = "This class member has been marked as deprecated and "
44 "will be removed in a future release.")
46 {
47 }
48 };
49
50 template<class Policy = boost::python::default_call_policies>
52 {
54 const std::string & warning_message =
55 "This function has been marked as deprecated and will be removed in a future release.")
57 {
58 }
59 };
60 } // namespace python
61} // namespace pinocchio
62
63#endif // ifndef __pinocchio_python_utils_deprecation_hpp__
Main pinocchio namespace.
Definition treeview.dox:11