Blender  V3.3
mathutils_Quaternion.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
3 #pragma once
4 
9 extern PyTypeObject quaternion_Type;
10 
11 #define QuaternionObject_Check(v) PyObject_TypeCheck((v), &quaternion_Type)
12 #define QuaternionObject_CheckExact(v) (Py_TYPE(v) == &quaternion_Type)
13 
14 typedef struct {
17 
18 /* struct data contains a pointer to the actual data that the
19  * object uses. It can use either PyMem allocated data (which will
20  * be stored in py_data) or be a wrapper for data allocated through
21  * blender (stored in blend_data). This is an either/or struct not both */
22 
23 /* Prototypes. */
24 
25 PyObject *Quaternion_CreatePyObject(const float quat[4],
26  PyTypeObject *base_type) ATTR_WARN_UNUSED_RESULT;
27 PyObject *Quaternion_CreatePyObject_wrap(float quat[4],
28  PyTypeObject *base_type) ATTR_WARN_UNUSED_RESULT
29  ATTR_NONNULL(1);
30 PyObject *Quaternion_CreatePyObject_cb(PyObject *cb_user,
31  unsigned char cb_type,
32  unsigned char cb_subtype) ATTR_WARN_UNUSED_RESULT;
#define ATTR_WARN_UNUSED_RESULT
#define ATTR_NONNULL(...)
PyObject * Quaternion_CreatePyObject_wrap(float quat[4], PyTypeObject *base_type) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
PyObject * Quaternion_CreatePyObject(const float quat[4], PyTypeObject *base_type) ATTR_WARN_UNUSED_RESULT
PyTypeObject quaternion_Type
PyObject * Quaternion_CreatePyObject_cb(PyObject *cb_user, unsigned char cb_type, unsigned char cb_subtype) ATTR_WARN_UNUSED_RESULT